@helia/unixfs 5.0.3 → 5.0.4

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,4 +1,4 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaUnixfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var HeliaUnixfs=(()=>{var Nc=Object.create;var xr=Object.defineProperty;var Tc=Object.getOwnPropertyDescriptor;var Dc=Object.getOwnPropertyNames;var zc=Object.getPrototypeOf,Lc=Object.prototype.hasOwnProperty;var br=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)xr(r,t,{get:e[t],enumerable:!0})},Xi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Dc(e))!Lc.call(r,i)&&i!==t&&xr(r,i,{get:()=>e[i],enumerable:!(n=Tc(e,i))||n.enumerable});return r};var Pt=(r,e,t)=>(t=r!=null?Nc(zc(r)):{},Xi(e||!r||!r.__esModule?xr(t,"default",{value:r,enumerable:!0}):t,r)),Pc=r=>Xi(xr({},"__esModule",{value:!0}),r);var ts=br((er,zr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(c){if(!Array.isArray(c)&&!ArrayBuffer.isView(c))return!1;for(var d=0;d<c.length;d++)if(!Number.isInteger(c[d])||c[d]<0||c[d]>255)return!1;return!0}function i(c,d){return(c&65535)*d+(((c>>>16)*d&65535)<<16)}function o(c,d){return c<<d|c>>>32-d}function s(c){return c^=c>>>16,c=i(c,2246822507),c^=c>>>13,c=i(c,3266489909),c^=c>>>16,c}function a(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=c[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]*d[3]+c[1]*d[2]+c[2]*d[1]+c[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(c,d){return d%=64,d===32?[c[1],c[0]]:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d|c[0]>>>32-d]:(d-=32,[c[1]<<d|c[0]>>>32-d,c[0]<<d|c[1]>>>32-d])}function f(c,d){return d%=64,d===0?c:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d]:[c[1]<<d-32,0]}function l(c,d){return[c[0]^d[0],c[1]^d[1]]}function g(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,y=d,w=0,b=3432918353,k=461845907,B=0;B<x;B=B+4)w=c[B]|c[B+1]<<8|c[B+2]<<16|c[B+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),y^=w,y=o(y,13),y=i(y,5)+3864292196;switch(w=0,m){case 3:w^=c[B+2]<<16;case 2:w^=c[B+1]<<8;case 1:w^=c[B],w=i(w,b),w=o(w,15),w=i(w,k),y^=w}return y^=c.length,y=s(y),y>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=d,w=d,b=d,k=d,B=0,C=0,E=0,D=0,ye=597399067,yr=2869860233,gr=951274213,wr=2716044179,N=0;N<x;N=N+16)B=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,C=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,E=c[N+8]|c[N+9]<<8|c[N+10]<<16|c[N+11]<<24,D=c[N+12]|c[N+13]<<8|c[N+14]<<16|c[N+15]<<24,B=i(B,ye),B=o(B,15),B=i(B,yr),y^=B,y=o(y,19),y+=w,y=i(y,5)+1444728091,C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=y,k=i(k,5)+850148119;switch(B=0,C=0,E=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=c[N+11]<<24;case 11:E^=c[N+10]<<16;case 10:E^=c[N+9]<<8;case 9:E^=c[N+8],E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E;case 8:C^=c[N+7]<<24;case 7:C^=c[N+6]<<16;case 6:C^=c[N+5]<<8;case 5:C^=c[N+4],C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C;case 4:B^=c[N+3]<<24;case 3:B^=c[N+2]<<16;case 2:B^=c[N+1]<<8;case 1:B^=c[N],B=i(B,ye),B=o(B,15),B=i(B,yr),y^=B}return y^=c.length,w^=c.length,b^=c.length,k^=c.length,y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,y=s(y),w=s(w),b=s(b),k=s(k),y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,("00000000"+(y>>>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(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=[0,d],w=[0,d],b=[0,0],k=[0,0],B=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[c[E+4]|c[E+5]<<8|c[E+6]<<16|c[E+7]<<24,c[E]|c[E+1]<<8|c[E+2]<<16|c[E+3]<<24],k=[c[E+12]|c[E+13]<<8|c[E+14]<<16|c[E+15]<<24,c[E+8]|c[E+9]<<8|c[E+10]<<16|c[E+11]<<24],b=u(b,B),b=h(b,31),b=u(b,C),y=l(y,b),y=h(y,27),y=a(y,w),y=a(u(y,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,B),w=l(w,k),w=h(w,31),w=a(w,y),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[E+14]],48));case 14:k=l(k,f([0,c[E+13]],40));case 13:k=l(k,f([0,c[E+12]],32));case 12:k=l(k,f([0,c[E+11]],24));case 11:k=l(k,f([0,c[E+10]],16));case 10:k=l(k,f([0,c[E+9]],8));case 9:k=l(k,[0,c[E+8]]),k=u(k,C),k=h(k,33),k=u(k,B),w=l(w,k);case 8:b=l(b,f([0,c[E+7]],56));case 7:b=l(b,f([0,c[E+6]],48));case 6:b=l(b,f([0,c[E+5]],40));case 5:b=l(b,f([0,c[E+4]],32));case 4:b=l(b,f([0,c[E+3]],24));case 3:b=l(b,f([0,c[E+2]],16));case 2:b=l(b,f([0,c[E+1]],8));case 1:b=l(b,[0,c[E]]),b=u(b,B),b=h(b,31),b=u(b,C),y=l(y,b)}return y=l(y,[0,c.length]),w=l(w,[0,c.length]),y=a(y,w),w=a(w,y),y=g(y),w=g(w),y=a(y,w),w=a(w,y),("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof er<"u"?(typeof zr<"u"&&zr.exports&&(er=zr.exports=t),er.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)})(er)});var ns=br((f0,rs)=>{rs.exports=ts()});var Pr=br((g0,os)=>{"use strict";os.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(Tf,0),u=~(4294967295<<o+1),h=is(i&u);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(Df),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 u=Math.min(n,t),h=~(255<<u),f=o&h;i|=f<<8-t,o=o>>>u,n-=u,t-=u,(!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(zf)}};function Tf(r,e){return r+is(e)}function is(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Df(r,e){return r[0]-e[0]}function zf(r){return r[1]}});var Ya=br((Rw,Pi)=>{"use strict";var sh=Object.prototype.hasOwnProperty,Y="~";function cr(){}Object.create&&(cr.prototype=Object.create(null),new cr().__proto__||(Y=!1));function ah(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 ah(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 pn(r,e){--r._eventsCount===0?r._events=new cr:delete r._events[e]}function X(){this._events=new cr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)sh.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 u=this._events[a],h=arguments.length,f,l;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,i),!0;case 5:return u.fn.call(u.context,t,n,i,o),!0;case 6:return u.fn.call(u.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];u.fn.apply(u.context,f)}else{var g=u.length,c;for(l=0;l<g;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[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 pn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&pn(this,o);else{for(var a=0,u=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&u.push(s[a]);u.length?this._events[o]=u.length===1?u[0]:u:pn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&pn(this,t)):(this._events=new cr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Pi<"u"&&(Pi.exports=X)});var kd={};G(kd,{globSource:()=>Ac,unixfs:()=>_d,urlSource:()=>Cc});function Fc(r){return r[Symbol.asyncIterator]!=null}function Uc(r){if(Fc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var _r=Uc;function Oc(r){return r[Symbol.asyncIterator]!=null}function Rc(r,e=1){return e=Number(e),Oc(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 kr=Rc;async function*Ft(r,e=1){for await(let t of kr(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 ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function je(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Sr(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 Yi=Symbol.for("@achingbrain/uint8arraylist");function Ji(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 Er(r){return!!r?.[Yi]}var ot=class r{bufs;length;[Yi]=!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(Er(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(Er(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=Ji(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Ji(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(Er(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 je(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:je(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,u=a+s.byteLength;if(i=u,e>=u)continue;let h=e>=a&&e<u,f=t>a&&t<=u;if(h&&f){if(e===a&&t===u){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===u){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(!Er(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,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let g=h;g>=0;g--){let c=this.get(l+g);if(n[g]!==c){f=Math.max(1,g-a[c]);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=ne(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=ge(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=ge(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=ge(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=ne(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=ge(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=ge(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=ge(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=ge(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=ge(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(!Sr(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 $c=262144,Ut=(r={})=>{let e=r.chunkSize??$c;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 u=new ot;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>j,createLink:()=>wo,createNode:()=>go,decode:()=>U,encode:()=>T,name:()=>Ru,prepare:()=>P,validate:()=>Gn});var Rn={};G(Rn,{base32:()=>Fe,base32hex:()=>Qc,base32hexpad:()=>tu,base32hexpadupper:()=>ru,base32hexupper:()=>eu,base32pad:()=>Yc,base32padupper:()=>Zc,base32upper:()=>Jc,base32z:()=>nu});var st={};G(st,{coerce:()=>le,empty:()=>Zi,equals:()=>Dn,fromHex:()=>Hc,fromString:()=>zn,isBinary:()=>Vc,toHex:()=>Mc,toString:()=>Ln});var Zi=new Uint8Array(0);function Mc(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))):Zi}function Dn(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 le(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 Vc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function zn(r){return new TextEncoder().encode(r)}function Ln(r){return new TextDecoder().decode(r)}function jc(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,u=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,y=0,w=d.length;y!==w&&d[y]===0;)y++,m++;for(var b=(w-y)*f+1>>>0,k=new Uint8Array(b);y!==w;){for(var B=d[y],C=0,E=b-1;(B!==0||C<x)&&E!==-1;E--,C++)B+=256*k[E]>>>0,k[E]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=C,y++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function g(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,y=0;d[m]===u;)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 B=0,C=w-1;(k!==0||B<y)&&C!==-1;C--,B++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");y=B,m++}if(d[m]!==" "){for(var E=w-y;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function c(d){var m=g(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:g,decode:c}}var qc=jc,Gc=qc,Qi=Gc;var Pn=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")}},Fn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,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 eo(this,e)}},Un=class{decoders;constructor(e){this.decoders=e}or(e){return eo(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 eo(r,e){return new Un({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var On=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 Pn(e,t,n),this.decoder=new Fn(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 On(r,e,t,n)}function Pe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Qi(t,r);return at({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Wc(r,e,t,n){let i=r.length;for(;r[i-1]==="=";)--i;let o=new Uint8Array(i*t/8|0),s=0,a=0,u=0;for(let h=0;h<i;++h){let f=e[r[h]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|f,s+=t,s>=8&&(s-=8,o[u++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return o}function Kc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],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)!==0;)o+="=";return o}function Xc(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function L({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=Xc(n);return at({prefix:e,name:r,encode(o){return Kc(o,n,t)},decode(o){return Wc(o,i,t,r)}})}var Fe=L({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Jc=L({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Yc=L({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Zc=L({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Qc=L({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),eu=L({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),tu=L({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ru=L({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),nu=L({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var $n={};G($n,{base36:()=>Ot,base36upper:()=>iu});var Ot=Pe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),iu=Pe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Mn={};G(Mn,{base58btc:()=>he,base58flickr:()=>ou});var he=Pe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ou=Pe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var su=no,to=128,au=127,cu=~au,uu=Math.pow(2,31);function no(r,e,t){e=e||[],t=t||0;for(var n=t;r>=uu;)e[t++]=r&255|to,r/=128;for(;r&cu;)e[t++]=r&255|to,r>>>=7;return e[t]=r|0,no.bytes=t-n+1,e}var fu=Hn,lu=128,ro=127;function Hn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Hn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&ro)<<i:(s&ro)*Math.pow(2,i),i+=7}while(s>=lu);return Hn.bytes=o-n,t}var hu=Math.pow(2,7),du=Math.pow(2,14),pu=Math.pow(2,21),mu=Math.pow(2,28),yu=Math.pow(2,35),gu=Math.pow(2,42),wu=Math.pow(2,49),xu=Math.pow(2,56),bu=Math.pow(2,63),_u=function(r){return r<hu?1:r<du?2:r<pu?3:r<mu?4:r<yu?5:r<gu?6:r<wu?7:r<xu?8:r<bu?9:10},ku={encode:su,decode:fu,encodingLength:_u},Su=ku,Rt=Su;function $t(r,e=0){return[Rt.decode(r,e),Rt.decode.bytes]}function ct(r,e,t=0){return Rt.encode(r,e,t),e}function ut(r){return Rt.encodingLength(r)}function qe(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=le(r),[t,n]=$t(e),[i,o]=$t(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 io(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Dn(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 oo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return vu(t,Vn(r),e??he.encoder);default:return Bu(t,Vn(r),e??Fe.encoder)}}var so=new WeakMap;function Vn(r){let e=so.get(r);if(e==null){let t=new Map;return so.set(r,t),t}return e}var A=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!==Mt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Iu)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&&io(e.multihash,n.multihash)}toString(e){return oo(this,e)}toJSON(){return{"/":oo(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??ao(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!==Mt)throw new Error(`Version 0 CID must use dag-pb (code: ${Mt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=ao(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Mt,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=le(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,g]=$t(e.subarray(t));return t+=g,l},i=n(),o=Mt;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(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,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 Vn(o).set(n,e),o}};function Eu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Fe.prefix:{let t=e??Fe;return[Fe.prefix,t.decode(r)]}case Ot.prefix:{let t=e??Ot;return[Ot.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 vu(r,e,t){let{prefix:n}=t;if(n!==he.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 Mt=112,Iu=18;function ao(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 jn(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 Ir(r,e){let t;[t,e]=jn(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 co(r,e){let t;return[t,e]=jn(r,e),[t&7,t>>3,e]}function Nu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=co(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]=Ir(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]=Ir(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]=jn(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 uo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=co(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(u===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Ir(r,t),n&&(i=!0)}else if(u===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Ir(r,t),n.push(Nu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${u}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var lo=new TextEncoder,fo=2**32,Tu=2**31;function Du(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=Ht(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=lo.encode(r.Name);t-=n.length,e.set(n,t),t=Ht(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ht(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function ho(r){let e=Lu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ht(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Du(r.Links[i],t.subarray(0,n));n-=o,n=Ht(t,n,o)-1,t[n]=18}return t}function zu(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=lo.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=zu(t);e+=1+n+ht(n)}return e}function Ht(r,e,t){e-=ht(t);let n=e;for(;t>=Tu;)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((Pu(r)+6)/7)}function Pu(r){let e=0;return r>=fo&&(r=Math.floor(r/fo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Fu[r]}var Fu=[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"],Ou=["Hash","Name","Tsize"],qn=new TextEncoder;function mo(r,e){if(r===e)return 0;let t=r.Name?qn.encode(r.Name):[],n=e.Name?qn.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 po(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function yo(r){if(typeof r.asCID=="object"){let t=A.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=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.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=qn.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(yo),e.Links.sort(mo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Gn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!po(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(!po(t,Ou))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&&mo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function go(r,e=[]){return P({Data:r,Links:e})}function wo(r,e,t){return yo({Hash:t,Name:r,Tsize:e})}function xo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ru="dag-pb",j=112;function T(r){Gn(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),ho(e)}function U(r){let e=xo(r),t=uo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.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 Vt=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 $u=Math.pow(2,7),Mu=Math.pow(2,14),Hu=Math.pow(2,21),bo=Math.pow(2,28),_o=Math.pow(2,35),ko=Math.pow(2,42),So=Math.pow(2,49),J=128,Ue=127;function jt(r){if(r<$u)return 1;if(r<Mu)return 2;if(r<Hu)return 3;if(r<bo)return 4;if(r<_o)return 5;if(r<ko)return 6;if(r<So)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Eo(r,e,t=0){switch(jt(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 vo(r,e){let t=r[e],n=0;if(n+=t&Ue,t<J||(t=r[e+1],n+=(t&Ue)<<7,t<J)||(t=r[e+2],n+=(t&Ue)<<14,t<J)||(t=r[e+3],n+=(t&Ue)<<21,t<J)||(t=r[e+4],n+=(t&Ue)*bo,t<J)||(t=r[e+5],n+=(t&Ue)*_o,t<J)||(t=r[e+6],n+=(t&Ue)*ko,t<J)||(t=r[e+7],n+=(t&Ue)*So,t<J))return n;throw new RangeError("Could not decode varint")}var Wn=new Float32Array([-0]),Oe=new Uint8Array(Wn.buffer);function Bo(r,e,t){Wn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Io(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Wn[0]}var Kn=new Float64Array([-0]),W=new Uint8Array(Kn.buffer);function Ao(r,e,t){Kn[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 Co(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],Kn[0]}var Vu=BigInt(Number.MAX_SAFE_INTEGER),ju=BigInt(Number.MIN_SAFE_INTEGER),ie=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 Ge;if(e<Vu&&e>ju)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>No&&(i=0n,++n>No&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ge;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):Ge}},Ge=new ie(0,0);Ge.toBigInt=function(){return 0n};Ge.zzEncode=Ge.zzDecode=function(){return this};Ge.length=function(){return 1};var No=4294967296n;function To(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 Do(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 Xn(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 we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Ar(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Jn=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,we(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 we(this,4);return Ar(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Ar(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=Io(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=Co(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 we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Do(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);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 ie(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 we(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 we(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 we(this,8);let e=Ar(this.buf,this.pos+=4),t=Ar(this.buf,this.pos+=4);return new ie(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=vo(this.buf,this.pos);return this.pos+=jt(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 Yn(r){return new Jn(r instanceof Uint8Array?r:r.subarray())}function qt(r,e,t){let n=Yn(r);return e.decode(n,void 0,t)}var Zn={};G(Zn,{base10:()=>qu});var qu=Pe({prefix:"9",name:"base10",alphabet:"0123456789"});var Qn={};G(Qn,{base16:()=>Gu,base16upper:()=>Wu});var Gu=L({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Wu=L({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ei={};G(ei,{base2:()=>Ku});var Ku=L({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ti={};G(ti,{base256emoji:()=>Qu});var Lo=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}"),Xu=Lo.reduce((r,e,t)=>(r[t]=e,r),[]),Ju=Lo.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function Yu(r){return r.reduce((e,t)=>(e+=Xu[t],e),"")}function Zu(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=Ju[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var Qu=at({prefix:"\u{1F680}",name:"base256emoji",encode:Yu,decode:Zu});var ri={};G(ri,{base64:()=>Gt,base64pad:()=>ef,base64url:()=>tf,base64urlpad:()=>rf});var Gt=L({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ef=L({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),tf=L({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),rf=L({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ni={};G(ni,{base8:()=>nf});var nf=L({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ii={};G(ii,{identity:()=>of});var of=at({prefix:"\0",name:"identity",encode:r=>Ln(r),decode:r=>zn(r)});var Np=new TextEncoder,sf=new TextDecoder;var Po=512;function Fo(r){return JSON.parse(sf.decode(r))}var Ie={};G(Ie,{code:()=>Q,decode:()=>uf,encode:()=>cf,name:()=>af});var af="raw",Q=85;function cf(r){return le(r)}function uf(r){return le(r)}var ai={};G(ai,{identity:()=>si});var Uo=0,ff="identity",Oo=le;function lf(r){return qe(Uo,Oo(r))}var si={code:Uo,name:ff,encode:Oo,digest:lf};var ui={};G(ui,{sha256:()=>oe,sha512:()=>hf});function We({name:r,code:e,encode:t}){return new ci(r,e,t)}var ci=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 $o(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=We({name:"sha2-256",code:18,encode:$o("SHA-256")}),hf=We({name:"sha2-512",code:19,encode:$o("SHA-512")});var fi={...ii,...ei,...ni,...Zn,...Qn,...Rn,...$n,...Mn,...ri,...ti},Vp={...ui,...ai};function Ho(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Mo=Ho("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),li=Ho("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=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),df={utf8:Mo,"utf-8":Mo,hex:fi.base16,latin1:li,ascii:li,binary:li,...fi},Vo=df;function O(r,e="utf8"){let t=Vo[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function hi(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var Ke=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function di(){}var mi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},pf=hi();function mf(r){return globalThis.Buffer!=null?ne(r):pf(r)}var Kt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ke(di,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ke(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new yi((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(Cr,10,ie.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=ie.fromBigInt(e);return this._push(Cr,t.length(),t)}uint64Number(e){return this._push(Eo,jt(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=ie.fromBigInt(e).zzEncode();return this._push(Cr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Cr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(pi,1,e?1:0)}fixed32(e){return this._push(Wt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Wt,4,t.lo)._push(Wt,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(Bo,4,e)}double(e){return this._push(Ao,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(pi,1,0):this.uint32(t)._push(gf,t,e)}string(e){let t=To(e);return t!==0?this.uint32(t)._push(Xn,t,e):this._push(pi,1,0)}fork(){return this.states=new mi(this),this.head=this.tail=new Ke(di,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 Ke(di,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=mf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function pi(r,e,t){e[t]=r&255}function yf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var yi=class extends Ke{next;constructor(e,t){super(yf,e,t),this.next=void 0}};function Cr(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 Wt(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 gf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Kt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(wf,e,r),this},Kt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(xf,e,r),this});function wf(r,e,t){e.set(r,t)}function xf(r,e,t){r.length<40?Xn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(O(r),t)}function gi(){return new Kt}function Xt(r,e){let t=gi();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 Nr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function wi(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 Nr("enum",dt.VARINT,t,n)}function Jt(r,e){return Nr("message",dt.LENGTH_DELIMITED,r,e)}var xe;(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=()=>wi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Jt((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),Tr.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 u=i.uint32();switch(u>>>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=Tr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Xt(i,r.codec()),r.decode=i=>qt(i,r.codec())})(xe||(xe={}));var Tr;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((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=>Xt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(Tr||(Tr={}));var jo;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((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=>Xt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(jo||(jo={}));var qo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},bf=["directory","hamt-sharded-directory"],Go=parseInt("0644",8),Wo=parseInt("0755",8),I=class r{static unmarshal(e){let t=xe.decode(e),n=new r({type:qo[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:u}=e;if(t!=null&&!Object.values(qo).includes(t))throw new Vt("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=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Wo:Go:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return bf.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=xe.DataType.Raw;break;case"directory":e=xe.DataType.Directory;break;case"file":e=xe.DataType.File;break;case"metadata":e=xe.DataType.Metadata;break;case"symlink":e=xe.DataType.Symlink;break;case"hamt-sharded-directory":e=xe.DataType.HAMTShard;break;default:throw new Vt(`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===Go&&!this.isDirectory()&&(n=void 0),n===Wo&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.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 F=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Ko(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=Ie,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await be(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new F("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var Dr=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 Re=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 Xo=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(P({Data:n.marshal()})),o=await be(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*_f(r,e,t){let n=-1,i;for await(let o of Ft(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 kf=(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 I({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 be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new F("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 I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(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},u=T(P(a)),h=await be(u,e,t);return t.onProgress?.(new F("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},Yo=async(r,e,t)=>t.layout(_f(r,e,t),kf(r,e,t));function Sf(r){return Symbol.iterator in r}function Ef(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(Ef(r))return r}catch{throw new Re("Content was invalid")}throw new Re("Content was invalid")}function Zo(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 u of r.chunker(r.chunkValidator(vf(i.content)))){let h=BigInt(u.byteLength);a+=h,r.onProgress?.(new F("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield u}}(),originalPath:o};yield async()=>Yo(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>Xo(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 Re("Content was invalid");if(typeof t=="string"||t instanceof String)yield O(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Re("Content was invalid")}};var If=174;function Yt(r){let e=r?.maxChildrenPerNode??If;return async function t(n,i){let o=[];for await(let s of kr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Af(r){return r[Symbol.asyncIterator]!=null}function Cf(r){if(Af(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 es=Cf;var Ae=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}},Zt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Qt=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xe=class extends Ae{_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?Qt.bytes.byteLength:Zt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof Ae)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(P(i)),s=await be(o,e,this.options),a=o.length+i.Links.reduce((u,h)=>u+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Lr=Pt(ns(),1);function Nf(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 d0=We({name:"murmur3-32",code:35,encode:r=>Nf(Lr.default.x86.hash32(r))}),Je=We({name:"murmur3-128",code:34,encode:r=>st.fromHex(Lr.default.x64.hash128(r))}),p0=We({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Lr.default.x64.hash128(r)).subarray(0,8)});var ss=Pt(Pr(),1);var se=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 ss.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 as(this,e,t)}toJSON(){return this.serialize(Pf,Ff)}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"?O(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(Lf);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 Lf(r){return!!r}function Pf(r,e){return r.key}function Ff(r){return r}async function as(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await as(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Uf=[255,254,252,248,240,224,192,128],Of=[1,3,7,15,31,63,127,255],Fr=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=Rf(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 Rf(r,e,t){let n=$f(e,t);return(r&n)>>>e}function $f(r,e){return Uf[r]&Of[Math.min(e+r-1,7)]}function cs(r){function e(t){return t instanceof Ur?t:new Ur(t,r)}return e}var Ur=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?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Fr(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:cs(r.hashFn)};return new se(e)}async function Mf(r){return(await Je.encode(r)).slice(0,8).reverse()}var us=BigInt(34),Hf=8,xi=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Mf,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=hs(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ls(this._bucket,e,this,this.options))yield{...t,path:this.path}}},fs=xi;async function*ls(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 se){let y;for await(let w of ls(m,e,null,n))y=w;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else if(Vf(m.value)){let y=m.value,w;for await(let k of y.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 y=m.value;if(y.cid==null)continue;let w=x+m.key,b=y.size;s.push({Name:w,Tsize:Number(b),Hash:y.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:us,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),g=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:g,unixfs:h,size:c}}function Vf(r){return typeof r.flush=="function"}function hs(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 se){let g=hs(f,null,t);o.push({Name:l,Tsize:Number(g),Hash:t.cidVersion===0?Zt:Qt})}else if(typeof f.value.flush=="function"){let c=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(c),Hash:t.cidVersion===0?Zt:Qt})}else{let g=f.value;if(g.cid==null)continue;let c=l+f.key,d=g.size;o.push({Name:c,Tsize:Number(d),Hash:g.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:us,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function bi(r,e,t,n){let i=e;e instanceof Xe&&e.estimateNodeSize()>t&&(i=await jf(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 bi(i,o,t,n)}return i}async function jf(r,e){let t=new fs({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 ds=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function qf(r,e,t){let n=ds(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let u=n[a];s+=`${s!==""?"/":""}${u}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(u,r),e=await bi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Xe({root:!1,dir:!0,parent:o,parentKey:u,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(u,f),o=f}}return e}async function*ps(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function ms(r){return async function*(t,n){let i=new Xe({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await qf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*ps(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*ps(a.child,n))}}async function*Ye(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,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,g=t.reduceSingleLeafToSelf??!0,c=t.chunker??Ut(),d=t.chunkValidator??Qo(),m=t.dagBuilder??Zo({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Yt(),bufferImporter:t.bufferImporter??Ko({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:g,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??ms({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let y of x(Ft(m(n,e),f),e))yield{cid:y.cid,path:y.path,unixfs:y.unixfs,size:y.size}}async function ys(r,e,t={}){let n=await _r(Ye([r],e,t));if(n==null)throw new Dr("Nothing imported");return n}async function gs(r,e,t={}){return ys({content:r},e,t)}async function ws(r,e,t={}){return ys({content:r},e,t)}function Gf(r){return r[Symbol.asyncIterator]!=null}function Wf(r){if(Gf(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=Wf;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ce=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Ne=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},tr=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Or=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},mt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Rr=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},$e=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},M=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var rr={cidVersion:1,rawLeaves:!0,layout:Yt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*$r(r,e,t={}){yield*Ye(r,e,{...rr,...t})}async function xs(r,e,t={}){let{cid:n}=await gs(r,e,{...rr,...t});return n}async function bs(r,e,t={}){let{cid:n}=await ws(r,e,{...rr,...t});return n}async function _s(r,e,t={}){if(r.path==null)throw new M("path is required");if(r.content==null)throw new M("content is required");let n=await _e($r([r],e,{...rr,...t,wrapWithDirectory:!0}));if(n==null)throw new M("Nothing imported");return n.cid}async function ks(r,e,t={}){if(r.content!=null)throw new M("Directories cannot have content, use addFile instead");let i=await(r.path==null?_r:_e)($r([{...r,path:r.path??"-"}],e,{...rr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new M("Nothing imported");return i.cid}function yt(r){if(typeof r!="object"||r===null)return!1;let e=Object.getPrototypeOf(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)}var{hasOwnProperty:Es}=Object.prototype,{propertyIsEnumerable:Kf}=Object,gt=(r,e,t)=>{Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})},Xf=void 0,Ss={concatArrays:!1,ignoreUndefined:!1},Mr=r=>{let e=[];for(let t in r)Es.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)Kf.call(r,n)&&e.push(n)}return e};function wt(r){return Array.isArray(r)?Jf(r):yt(r)?Yf(r):r}function Jf(r){let e=r.slice(0,0);return Mr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}function Yf(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Mr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}var vs=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?gt(r,i,_i(r[i],e[i],n)):gt(r,i,wt(e[i])))}),r),Zf=(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++)Es.call(o,a)&&(s.push(String(a)),o===r?gt(n,i++,o[a]):gt(n,i++,wt(o[a])));n=vs(n,o,Mr(o).filter(a=>!s.includes(a)),t)}),n};function _i(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?Zf(r,e,t):!yt(e)||!yt(r)?wt(e):vs(r,e,Mr(e),t)}function K(...r){let e=_i(wt(Ss),this!==Xf&&this||{},Ss),t={_:{}};for(let n of r)if(n!==void 0){if(!yt(n))throw new TypeError("`"+n+"` is not an Option Object");t=_i(t,{_:n},e)}return t._}var Hr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},de=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},Vr=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},H=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},jr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},qr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},Gr=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 Qf=["string","number","bigint","symbol"],el=["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 Bs(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Qf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(tl(r))return"Buffer";let t=rl(r);return t||"Object"}function tl(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function rl(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(el.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 xt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",nl=new TextDecoder,il=new TextEncoder;function Wr(r){return xt&&globalThis.Buffer.isBuffer(r)}function Kr(r){return r instanceof Uint8Array?Wr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Ns=xt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):As(r,e,t):(r,e,t)=>t-e>64?nl.decode(r.subarray(e,t)):As(r,e,t),Xr=xt?r=>r.length>64?globalThis.Buffer.from(r):Is(r):r=>r.length>64?il.encode(r):Is(r);var bt=xt?(r,e,t)=>Wr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ts=xt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Kr(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},Ds=xt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function zs(r,e){if(Wr(r)&&Wr(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 Is(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 As(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,u,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],u=r[e+2],(a&192)===128&&(u&192)===128&&(f=(i&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],u=r[e+2],h=r[e+3],(a&192)===128&&(u&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(u&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 ki(n)}var Cs=4096;function ki(r){let e=r.length;if(e<=Cs)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Cs));return t}var ol=256,Jr=class{constructor(e=ol){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=Ds(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=bt(n,0,this.cursor)}else t=Ts(this.chunks,this.cursor);return e&&this.reset(),t}};var v="CBOR decode error:",_t="CBOR encode error:",nr=[];nr[23]=1;nr[24]=2;nr[25]=3;nr[26]=5;nr[27]=9;function Le(r,e,t){if(r.length-e<t)throw new Error(`${v} not enough data for type`)}var V=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<V[0])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<V[1])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Le(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<V[2])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Le(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<V[3])throw new Error(`${v} 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(`${v} integers outside of the safe integer range are not supported`)}function Ls(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function Ps(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function Fs(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function Us(r,e,t,n){return new _(p.uint,fe(r,e+1,n),9)}function pe(r,e){return q(r,0,e.value)}function q(r,e,t){if(t<V[0]){let n=Number(t);r.push([e|n])}else if(t<V[1]){let n=Number(t);r.push([e|24,n])}else if(t<V[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<V[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<V[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(`${v} encountered BigInt larger than allowable range`)}}pe.encodedSize=function(e){return q.encodedSize(e.value)};q.encodedSize=function(e){return e<V[0]?1:e<V[1]?2:e<V[2]?3:e<V[3]?5:9};pe.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Os(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function Rs(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function $s(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var Si=BigInt(-1),Ms=BigInt(1);function Hs(r,e,t,n){let i=fe(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(`${v} integers outside of the safe integer range are not supported`);return new _(p.negint,Si-BigInt(i),9)}function Yr(r,e){let t=e.value,n=typeof t=="bigint"?t*Si-Ms:t*-1-1;q(r,e.type.majorEncoded,n)}Yr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Si-Ms:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};Yr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function ir(r,e,t,n){Le(r,e,t+n);let i=bt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Vs(r,e,t,n){return ir(r,e,1,t)}function js(r,e,t,n){return ir(r,e,2,ae(r,e+1,n))}function qs(r,e,t,n){return ir(r,e,3,ce(r,e+1,n))}function Gs(r,e,t,n){return ir(r,e,5,ue(r,e+1,n))}function Ws(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer bytes lengths not supported`);return ir(r,e,9,i)}function Zr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Xr(r.value):r.value),r.encodedBytes}function kt(r,e){let t=Zr(e);q(r,e.type.majorEncoded,t.length),r.push(t)}kt.encodedSize=function(e){let t=Zr(e);return q.encodedSize(t.length)+t.length};kt.compareTokens=function(e,t){return al(Zr(e),Zr(t))};function al(r,e){return r.length<e.length?-1:r.length>e.length?1:zs(r,e)}function or(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,Ns(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=bt(r,e+t,e+o)),s}function Ks(r,e,t,n){return or(r,e,1,t,n)}function Xs(r,e,t,n){return or(r,e,2,ae(r,e+1,n),n)}function Js(r,e,t,n){return or(r,e,3,ce(r,e+1,n),n)}function Ys(r,e,t,n){return or(r,e,5,ue(r,e+1,n),n)}function Zs(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer string lengths not supported`);return or(r,e,9,i,n)}var Qs=kt;function St(r,e,t,n){return new _(p.array,n,t)}function ea(r,e,t,n){return St(r,e,1,t)}function ta(r,e,t,n){return St(r,e,2,ae(r,e+1,n))}function ra(r,e,t,n){return St(r,e,3,ce(r,e+1,n))}function na(r,e,t,n){return St(r,e,5,ue(r,e+1,n))}function ia(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer array lengths not supported`);return St(r,e,9,i)}function oa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return St(r,e,1,1/0)}function Qr(r,e){q(r,p.array.majorEncoded,e.value)}Qr.compareTokens=pe.compareTokens;Qr.encodedSize=function(e){return q.encodedSize(e.value)};function Et(r,e,t,n){return new _(p.map,n,t)}function sa(r,e,t,n){return Et(r,e,1,t)}function aa(r,e,t,n){return Et(r,e,2,ae(r,e+1,n))}function ca(r,e,t,n){return Et(r,e,3,ce(r,e+1,n))}function ua(r,e,t,n){return Et(r,e,5,ue(r,e+1,n))}function fa(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer map lengths not supported`);return Et(r,e,9,i)}function la(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return Et(r,e,1,1/0)}function en(r,e){q(r,p.map.majorEncoded,e.value)}en.compareTokens=pe.compareTokens;en.encodedSize=function(e){return q.encodedSize(e.value)};function ha(r,e,t,n){return new _(p.tag,t,1)}function da(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function pa(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function ma(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function ya(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function tn(r,e){q(r,p.tag.majorEncoded,e.value)}tn.compareTokens=pe.compareTokens;tn.encodedSize=function(e){return q.encodedSize(e.value)};var dl=20,pl=21,ml=22,yl=23;function ga(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${v} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new _(p.null,null,1):new _(p.undefined,void 0,1)}function wa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return new _(p.break,void 0,1)}function Ei(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${v} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${v} Infinity values are not supported`)}return new _(p.float,r,e)}function xa(r,e,t,n){return Ei(vi(r,e+1),3,n)}function ba(r,e,t,n){return Ei(Bi(r,e+1),5,n)}function _a(r,e,t,n){return Ei(va(r,e+1),9,n)}function rn(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|dl]);else if(n===!0)r.push([p.float.majorEncoded|pl]);else if(n===null)r.push([p.float.majorEncoded|ml]);else if(n===void 0)r.push([p.float.majorEncoded|yl]);else{let i,o=!1;(!t||t.float64!==!0)&&(Sa(n),i=vi(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(Ea(n),i=Bi(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(gl(n),i=va(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}rn.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){Sa(n);let i=vi(Se,1);if(n===i||Number.isNaN(n))return 3;if(Ea(n),i=Bi(Se,1),n===i)return 5}return 9};var ka=new ArrayBuffer(9),me=new DataView(ka,1),Se=new Uint8Array(ka,0);function Sa(r){if(r===1/0)me.setUint16(0,31744,!1);else if(r===-1/0)me.setUint16(0,64512,!1);else if(Number.isNaN(r))me.setUint16(0,32256,!1);else{me.setFloat32(0,r);let e=me.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)me.setUint16(0,31744,!1);else if(t===0)me.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?me.setUint16(0,0):i<-14?me.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):me.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function vi(r,e){if(r.length-e<2)throw new Error(`${v} 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 Ea(r){me.setFloat32(0,r,!1)}function Bi(r,e){if(r.length-e<4)throw new Error(`${v} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function gl(r){me.setFloat64(0,r,!1)}function va(r,e){if(r.length-e<8)throw new Error(`${v} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}rn.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${v} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function nn(r){return()=>{throw new Error(`${v} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Ls;S[25]=Ps;S[26]=Fs;S[27]=Us;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=Os;S[57]=Rs;S[58]=$s;S[59]=Hs;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=Vs;S[88]=js;S[89]=qs;S[90]=Gs;S[91]=Ws;S[92]=z;S[93]=z;S[94]=z;S[95]=nn("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Ks;S[120]=Xs;S[121]=Js;S[122]=Ys;S[123]=Zs;S[124]=z;S[125]=z;S[126]=z;S[127]=nn("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=ea;S[152]=ta;S[153]=ra;S[154]=na;S[155]=ia;S[156]=z;S[157]=z;S[158]=z;S[159]=oa;for(let r=160;r<=183;r++)S[r]=sa;S[184]=aa;S[185]=ca;S[186]=ua;S[187]=fa;S[188]=z;S[189]=z;S[190]=z;S[191]=la;for(let r=192;r<=215;r++)S[r]=ha;S[216]=da;S[217]=pa;S[218]=ma;S[219]=ya;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=nn("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=ga;S[248]=nn("simple values are not supported");S[249]=xa;S[250]=ba;S[251]=_a;S[252]=z;S[253]=z;S[254]=z;S[255]=wa;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new _(p.negint,r,1);Ee[64]=new _(p.bytes,new Uint8Array(0),1);Ee[96]=new _(p.string,"",1);Ee[128]=new _(p.array,0,1);Ee[160]=new _(p.map,0,1);Ee[244]=new _(p.false,!1,1);Ee[245]=new _(p.true,!0,1);Ee[246]=new _(p.null,null,1);function xl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Yr,r[p.bytes.major]=kt,r[p.string.major]=Qs,r[p.array.major]=Qr,r[p.map.major]=en,r[p.tag.major]=tn,r[p.float.major]=rn,r}var sg=xl(),ag=new Jr,on=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(`${_t} 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)},He={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=on.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Ii(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=on.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Ii(h,t,n),Ii(i?r.get(h):r[h],t,n)];return bl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function Ii(r,e={},t){let n=Bs(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${_t} unsupported type: ${n}`);return o(r,n,e,t)}function bl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var _l={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},sn=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=Ee[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${v} 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}},sr=Symbol.for("DONE"),an=Symbol.for("BREAK");function kl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=vt(e,t);if(o===an){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed array`)}if(o===sr)throw new Error(`${v} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Sl(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=vt(e,t);if(a===an){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed map`)}if(a===sr)throw new Error(`${v} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${v} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${v} found repeat map key "${a}"`);let u=vt(e,t);if(u===sr)throw new Error(`${v} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,u):i[a]=u}return n?o:i}function vt(r,e){if(r.done())return sr;let t=r.next();if(t.type===p.break)return an;if(t.type.terminal)return t.value;if(t.type===p.array)return kl(t,r,e);if(t.type===p.map)return Sl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=vt(r,e);return e.tags[t.value](n)}throw new Error(`${v} tag not supported (${t.value})`)}throw new Error("unsupported")}function Ai(r,e){if(!(r instanceof Uint8Array))throw new Error(`${v} data to decode must be a Uint8Array`);e=Object.assign({},_l,e);let t=e.tokenizer||new sn(r,e),n=vt(t,e);if(n===sr)throw new Error(`${v} did not find any content to decode`);if(n===an)throw new Error(`${v} got unexpected break`);return[n,r.subarray(t.pos())]}function ar(r,e){let[t,n]=Ai(r,e);if(n.length>0)throw new Error(`${v} too many terminals, data makes no sense`);return t}var Ia=42;function Bl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function Il(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Ia),new _(p.bytes,t)]}function Al(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Cl(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 Ba={float64:!0,typeEncoders:{Object:Il,undefined:Al,number:Cl}},gg={...Ba,typeEncoders:{...Ba.typeEncoders}};function Nl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var cn={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};cn.tags[Ia]=Nl;var wg={...cn,tags:cn.tags.slice()};var Aa=113;var Ca=r=>ar(Bl(r),cn);var Ta=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(`${_t} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Xr(JSON.stringify(t.value));e.push(n.length>32?Kr(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(`${_t} 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 Bt=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(`${v} 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(`${v} 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 u=this.ch();if(a.includes(u))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(`${v} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${v} 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(`${v} 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 u=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,u,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${v} 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(`${v} 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(`${v} unexpected unicode sequence at position ${this._pos}`);let u,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:u=this.data[this._pos+1],(u&192)===128&&(l=(o&31)<<6|u&63,l>127&&(s=l));break;case 3:u=this.data[this._pos+1],h=this.data[this._pos+2],(u&192)===128&&(h&192)===128&&(l=(o&15)<<12|(u&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:u=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(u&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(u&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(`${v} 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(`${v} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new _(p.string,ki(t),this._pos-e);default:if(o<32)throw new Error(`${v} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${v} 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(`${v} 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(`${v} 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(`${v} 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(`${v} 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(`${v} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ci(r,e){return e=Object.assign({tokenizer:new Bt(r,e)},e),ar(r,e)}function zl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ni=class extends Bt{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=Gt.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}},Ti={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Ti.tags[42]=A.parse;var Da=297;var za=r=>{let e=zl(r),t=Object.assign(Ti,{tokenizer:new Ni(e,Ti)});return Ci(e,t)};var Fg=new TextDecoder;var Ug=new TextEncoder;function It(r,e,t,n,i,o,s){let a=r,u=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),u=`${u}/${h}`;let f=A.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:u,toResolve:o}};a=a[h]}else throw new Gr(`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 Ll=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ca(u);return It(h,u,r,e,t,n,o)},Pa=Ll;var Pl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=za(u);return It(h,u,r,e,t,n,o)},Fa=Pl;function Fl(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=Fl;var Ul=(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}},At=Ul;var Ol=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new F("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Rl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=Br(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Ol(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Ua=Rl;var $l=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Fo(u);return It(h,u,r,e,t,n,o)},Oa=$l;var Ml=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new F("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Hl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Ml(u),depth:o,size:BigInt(u.length),node:u}}},Ra=Hl;var Vl=async function(r){return(await Je.encode(r)).slice(0,8).reverse()},jl=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 se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},$a=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),ql=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Ma=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(c){throw new H(c.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let g=pt({hashFn:Vl,bits:Math.log2(Number(l.fanout))});n={rootBucket:g,hamtDepth:1,lastBucket:g}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await jl(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=$a(s.pos,o),u=ql(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=$a(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let g=l.Name.substring(0,o),c=l.Name.substring(o);return!(g!==a||c!==""&&c!==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=U(f),Ma(r,e,t,n,i)},Ha=Ma;function Gl(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 un=Gl;function Wl(r){return r[Symbol.asyncIterator]!=null}function Kl(r,e){let t=0;if(Wl(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=un(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 u of n)await e(u,t++)&&(yield u)}();let a=e;return function*(){s===!0&&(yield i);for(let u of n)a(u,t++)&&(yield u)}()}var Va=Kl;function Xl(r){return r[Symbol.asyncIterator]!=null}function Jl(r,e){let t=0;if(Xl(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=un(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 u of n)yield e(u,t++)}();let a=e;return function*(){yield s;for(let u of n)yield a(u,t++)}()}var Ct=Jl;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var fn=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),u=!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=te(),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 fn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new fn("task-complete"))})}u=!0,i.dispatchEvent(new fn("task-complete"))}catch(d){h=d,i.dispatchEvent(new fn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*g(){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*c(){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=te(),await a.promise),h!=null||(n?yield*g():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var ln=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||(e-1&e)!==0)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}},Nt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new ln(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 ln(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 Di=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function hn(r={}){return Yl(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 Yl(r,e){e=e??{};let t=e.onEnd,n=new Nt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,y)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Nt,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})},g=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Nt,g(),{done:!0}),d=x=>(g(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:g,get readableLength(){return n.size},onEmpty:async x=>{let y=x?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let w,b;y!=null&&(w=new Promise((k,B)=>{b=()=>{B(new Di)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&y!=null&&y?.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}var dn=class extends Error{type;code;constructor(e,t,n){super(e??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=t??"ABORT_ERR"}};async function ja(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new dn(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new dn(t?.errorMessage,t?.errorCode,t?.errorName);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var zi=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=te(),this.haveNext=te()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=te(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=te(),await ja(this.readNext.promise,t?.signal,t)}};function qa(){return new zi}function Zl(r){return r[Symbol.asyncIterator]!=null}async function Ql(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*eh(r){let e=new AbortController,t=qa();Ql(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*th(r){for(let e of r)yield*e}function rh(...r){let e=[];for(let t of r)Zl(t)||e.push(t);return e.length===r.length?th(e):eh(r)}var Ga=rh;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Li(r)){let n=r;r=()=>n.source}else if(Ka(r)||Wa(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Li(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++)Li(t[n])&&(t[n]=ih(t[n]));return nh(...t)}var nh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Wa=r=>r?.[Symbol.asyncIterator]!=null,Ka=r=>r?.[Symbol.iterator]!=null,Li=r=>r==null?!1:r.sink!=null&&r.source!=null,ih=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=hn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Wa(o))i=async function*(){yield*o,n.end()};else if(Ka(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ga(n,i())}return r.source};var oh=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=u.offset??0,f=u.length??e.Links.length,l=e.Links.slice(h,f);u.onProgress?.(new F("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,g=>Ct(g,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),g=>tt(g,{ordered:!0,concurrency:u.blockReadConcurrency}),g=>Va(g,c=>c!=null))}return a},Xa=oh;var Fi=Pt(Ya(),1);var ur=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ui=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Za=r=>globalThis.DOMException===void 0?new Ui(r):new DOMException(r),Qa=r=>{let e=r.reason===void 0?Za("This operation was aborted."):r.reason;return e instanceof Error?e:Za(e)};function Oi(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,a,h=new Promise((f,l)=>{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:c}=e;c.aborted&&l(Qa(c)),a=()=>{l(Qa(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let g=new ur;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(c){l(c)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?f():i instanceof Error?l(i):(g.message=i??`Promise timed out after ${t} milliseconds`,l(g))},t),(async()=>{try{f(await r)}catch(c){l(c)}})()}).finally(()=>{h.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return h.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},h}function Ri(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 fr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,id:t.id,run:e};if(this.size===0||this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Ri(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}setPriority(e,t){let n=this.#e.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#e.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}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 lr=class extends Fi.default{#e;#s;#o=0;#d;#a;#p=0;#r;#c;#t;#m;#n=0;#u;#i;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:fr,...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.#s=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#a=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.#i=e.autoStart===!1}get#b(){return this.#s||this.#o<this.#d}get#_(){return this.#n<this.#u}#k(){this.#n--,this.#f(),this.emit("next")}#S(){this.#w(),this.#g(),this.#c=void 0}get#E(){let e=Date.now();if(this.#r===void 0){let t=this.#p-e;if(t<0)this.#o=this.#e?this.#n:0;else return this.#c===void 0&&(this.#c=setTimeout(()=>{this.#S()},t)),!0}return!1}#f(){if(this.#t.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#s||this.#r!==void 0||(this.#r=setInterval(()=>{this.#w()},this.#a),this.#p=Date.now()+this.#a)}#w(){this.#o===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#o=this.#e?this.#n:0,this.#l()}#l(){for(;this.#f(););}get concurrency(){return this.#u}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.#u=e,this.#l()}async#v(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#t.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#x++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#n++,this.#o++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Oi(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#v(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ur&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#i?(this.#i=!1,this.#l(),this):this}pause(){this.#i=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#h("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#h("next",()=>this.#t.size<e)}async onIdle(){this.#n===0&&this.#t.size===0||await this.#h("idle")}async#h(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.#n}get isPaused(){return this.#i}};async function ec(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 new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,g=l+a.blockSizes[h];if((i>=l&&i<g||o>=l&&o<=g||i<l&&o>g)&&u.push({link:f,blockStart:n}),n=g,n>o)break}await Te(u,h=>Ct(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:g}of h){let c;switch(f.Hash.code){case j:c=U(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new lr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new F("unixfs:exporter:walk:file",{cid:f.Hash})),await ec(r,c,t,g,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var ch=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=At(h,u.offset,u.length);if(l===0n)return;let g=0n,c=l-f,d=hn();u.onProgress?.(new F("unixfs:exporter:walk:file",{cid:r})),ec(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(g+=BigInt(m.byteLength),g>c)throw d.end(),new jr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");g===c&&d.end(),u.onProgress?.(new F("unixfs:exporter:progress:unixfs:file",{bytesRead:g,totalBytes:c,fileSize:h})),yield m}if(g<c)throw new qr("Traversed entire DAG but did not read enough bytes")}return a},$i=ch;var uh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new F("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),tc(e,n,i,o,s,u)}return a};async function*tc(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let u=(a.fanout-1n).toString(16).length,h=Te(s,f=>Ct(f,l=>async()=>{let g=l.Name!=null?l.Name.substring(u):null;if(g!=null&&g!==""){let c=await t(l.Hash,g,`${e}/${g}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=U(c),o.onProgress?.(new F("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:tc(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var rc=uh;var fh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,lh={raw:$i,file:$i,directory:Xa,"hamt-sharded-directory":rc,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},hh=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=U(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(c){throw new H(c.message)}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await Ha(h,n[0],s):c=fh(h,n[0]),c==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let g=lh[f.type](r,h,f,t,i,o,s);if(g==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},nc=hh;var dh={[j]:nc,[Q]:Ra,[Aa]:Pa,[Da]:Fa,[si.code]:Ua,[Po]:Oa},ic=async(r,e,t,n,i,o,s)=>{let a=dh[r.code];if(a==null)throw new Vr(`No resolver for code ${r.code}`);return a(r,e,t,n,ic,i,o,s)},oc=ic;var ph=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),mh=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=ph(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new Hr(`Unknown path type ${r}`)};async function*Mi(r,e,t={}){let{cid:n,toResolve:i}=mh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await oc(n,o,s,i,a,e,t);if(u.entry==null&&u.next==null)throw new de(`Could not resolve ${r}`);if(u.entry!=null&&(yield u.entry),u.next==null)return;i=u.next.toResolve,n=u.next.cid,o=u.next.name,s=u.next.path}}async function Z(r,e,t={}){let n=await _e(Mi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*mn(r,e,t={}){let n=await Z(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))}}function yh(r,e){try{if(typeof r=="string"&&r.length>0)return gh(r);if(typeof r=="number"&&isFinite(r))return e?.long?xh(r):wh(r);throw new Error("Value is not a string or number.")}catch(t){let n=bh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function gh(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 gn=yh;function wh(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 xh(r){let e=Math.abs(r);return e>=864e5?yn(r,e,864e5,"day"):e>=36e5?yn(r,e,36e5,"hour"):e>=6e4?yn(r,e,6e4,"minute"):e>=1e3?yn(r,e,1e3,"second"):`${r} ms`}function yn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function bh(r){return typeof r=="object"&&r!==null&&"message"in r}function Hi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=gn,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 g=0;g<f.length;g++)l=(l<<5)-l+f.charCodeAt(g),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,g=null,c,d;function m(...x){if(!m.enabled)return;let y=m,w=Number(new Date),b=w-(l||w);y.diff=b,y.prev=l,y.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,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(y,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(y,x),(y.log||t.log).apply(y,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:()=>g!==null?g:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{g=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let g=t(this.namespace+(typeof l>"u"?":":l)+f);return g.log=this.log,g}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,g=(typeof f=="string"?f:"").split(/[\s,]+/),c=g.length;for(l=0;l<c;l++)g[l]&&(f=g[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,g;for(l=0,g=t.skips.length;l<g;l++)if(t.skips[l].test(f))return!1;for(l=0,g=t.names.length;l<g;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 u(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 wn=Ih(),_h=["#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 kh(){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 Sh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+gn(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 Eh=console.debug??console.log??(()=>{});function vh(r){try{r?wn?.setItem("debug",r):wn?.removeItem("debug")}catch{}}function Bh(){let r;try{r=wn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Ih(){try{return localStorage}catch{}}function Ah(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var sc=Hi({formatArgs:Sh,save:vh,load:Bh,useColors:kh,setupFormatters:Ah,colors:_h,storage:wn,log:Eh});var re=sc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Fe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":Gt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>r==null?"undefined":ac(r.stack)??ac(r.message)??r.toString();function Ch(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 R(r){let e=Ch(`${r}:trace`);return re.enabled(`${r}:trace`)&&re.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=re(`${r}:trace`)),Object.assign(re(r),{error:re(`${r}:error`),trace:e})}function ac(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Gi=Pt(Pr(),1);function bn(r){function e(t){return t instanceof xn?t:new xn(t,r)}return e}var xn=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?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Vi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Nh=[255,254,252,248,240,224,192,128],Th=[1,3,7,15,31,63,127,255],Vi=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=Dh(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 Dh(r,e,t){let n=zh(e,t);return(r&n)>>>e}function zh(r,e){return Nh[r]&Th[Math.min(e+r-1,7)]}var hr=BigInt(Je.code),rt=8;async function Tt(r){return(await Je.encode(r)).subarray(0,8).reverse()}var fc=Pt(Pr(),1);var ve=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var ji=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}},_n=class extends ji{_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(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=uc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of cc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*cc(r,e,t,n){let i=r._children,o=[],s=0n;for(let c=0;c<i.length;c++){let d=i.get(c);if(d==null)continue;let m=c.toString(16).toUpperCase().padStart(2,"0");if(d instanceof se){let x;for await(let y of cc(d,e,null,n))x=y;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Lh(d.value)){let x=d.value,y;for await(let b of x.flush(e))y=b,yield y;if(y==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else{let x=d.value;if(x.cid==null)continue;let y=m+d.key,w=x.size;o.push({Name:y,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:hr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(P(h)),l=await ve(f,e,n),g=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:g}}function Lh(r){return typeof r.flush=="function"}function uc(r,e,t){let n=r._children,i=[];for(let u=0;u<n.length;u++){let h=n.get(u);if(h==null)continue;let f=u.toString(16).toUpperCase().padStart(2,"0");if(h instanceof se){let l=uc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?kn:Sn})}else if(typeof h.value.flush=="function"){let g=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(g),Hash:t.cidVersion===0?kn:Sn})}else{let l=h.value;if(l.cid==null)continue;let g=f+h.key,c=l.size;i.push({Name:g,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:hr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var kn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Sn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var qi=R("helia:unixfs:commands:utils:hamt-utils"),En=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),lc=async(r,e,t)=>{let n=new _n({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},vn=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:hr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let g=T(P(s));if(o=await ve(g,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");qi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),g.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Bn=async(r,e,t,n)=>{let o=bn(Tt)(O(e)),s=[];for(;;){let a=await t.get(r,n),u=U(a),h=new fc.default,f=await o.take(rt),l=En(f);s.push({prefix:l,children:h,node:u});let g;for(let d of u.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)&&(g=d)}if(g==null){qi("no link found with prefix %s for %s",l,e);break}let c=g.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=g.Hash,qi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function In(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=Ph(r);else if(i.type==="hamt-sharded-directory")o=await hc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Ph(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?Sn.bytes.byteLength:kn.bytes.byteLength;return e}async function hc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.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===j){let u=await n.get(s.Hash,i),h=U(u);e+=await hc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function Dt(r,e,t,n){if(r.node.Data==null)throw new M("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),Oh(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Uh(r,e,t,n);if(await In(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Fh(o,t);o.cid=s.cid,o.node=U(await t.get(s.cid,n))}return o}var Fh=async(r,e)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await lc(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 De(`converted directory to sharded directory ${n.cid}`),n},Uh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new tr;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.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),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},Oh=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,u=parseInt(a,16);De("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(De("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new tr;De("overwriting %s in sub-shard",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 sub-shard?!");{De("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),g=s.node.Links.splice(l,1)[0],c=(g.Name??"").substring(2),m=bn(Tt)(O(c));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),y=En(x);g.Name=`${y}${c}`;let w=await o.take(rt),b=En(w);if(y===b){let B=new Gi.default;B.set(w,!0),i.push({prefix:b,children:B,node:{Links:[]}});continue}let k=new Gi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[g,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else De("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),De("adding %s to existing sub-shard",h);return vn(i,t,n)};async function Ve(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function zt(r,e,t,n){let i=await Z(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ce(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Rh(i.node),Hash:r}}function Rh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var $h=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await es(Mi(i,t,n));if(o.length===0)throw new Or("Could not find path in directory");return $h("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Lt(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([Ve(o.cid,t,n),zt(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 Mh=K.bind({ignoreUndefined:!0}),Hh={};async function*dc(r,e,t={}){let n=Mh(Hh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new Rr;if(o.content==null)throw new mt;yield*o.content(n)}var Vh=K.bind({ignoreUndefined:!0}),jh=R("helia:unixfs:chmod"),qh={recursive:!1,shardSplitThresholdBytes:262144};async function pc(r,e,t,n={}){let i=Vh(qh,n),o=await ze(r,i.path,t,n);if(jh("chmod %c %d",o.cid,e),i.recursive){let g=await Te(async function*(){for await(let c of mn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new I({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await ve(w,m,{...i,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${o.cid.toString()}`);return Lt(g.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new I({type:"file",data:s});else{let g=U(s);if(g.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=g.Links,a=I.unmarshal(g.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(o.cid.version,j,f);return await t.put(l,h),Lt(l,o,t,i)}var Gh=K.bind({ignoreUndefined:!0}),Wh=R("helia:unixfs:cp"),Kh={force:!1,shardSplitThresholdBytes:262144};async function mc(r,e,t,n,i={}){let o=Gh(Kh,i);if(t.includes("/"))throw new M("Name must not have slashes");let[s,a]=await Promise.all([Ve(e,n,o),zt(r,t,n,o)]);return Wh('Adding %c as "%s" to %c',r,t,e),(await Dt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Xh=K.bind({ignoreUndefined:!0}),Jh={};async function*yc(r,e,t={}){let n=Xh(Jh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new mt;if(o.type!=="directory")throw new $e;yield*o.content({offset:t.offset,length:t.length})}var Yh=K.bind({ignoreUndefined:!0}),gc=R("helia:unixfs:mkdir"),Zh={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function wc(r,e,t,n={}){let i=Yh(Zh,n);if(e.includes("/"))throw new M("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);gc("creating %s",e);let a={Data:new I({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await oe.digest(u),f=A.create(i.cidVersion,j,h);await t.put(f,u);let[l,g]=await Promise.all([Ve(r,t,i),zt(f,e,t,i)]);return gc("adding empty dir called %s to %c",e,r),(await Dt(l,g,t,{...i,allowOverwriting:i.force})).cid}var Cn=R("helia:unixfs:utils:remove-link");async function xc(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Cn(`removing ${e} from sharded directory`);let o=await ed(r,e,t,n);return await In(o.node,t,n.shardSplitThresholdBytes,n)?o:(Cn("converting shard to flat directory %c",r.cid),td(o,t,n))}return Cn(`removing link ${e} regular directory`),Qh(r,e,t,n)}var Qh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await ve(i,t,{...n,cidVersion:r.cid.version});return Cn(`Updated regular directory ${o}`),{node:r.node,cid:o}},ed=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),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),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(g=>!(g.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return vn(i,t,n)},td=async(r,e,t)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Z(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await ve(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var rd=K.bind({ignoreUndefined:!0}),nd=R("helia:unixfs:rm"),id={shardSplitThresholdBytes:262144};async function bc(r,e,t,n={}){let i=rd(id,n);if(e.includes("/"))throw new M("Name must not have slashes");let o=await Ve(r,t,i);return nd("Removing %s from %c",e,r),(await xc(o,e,t,{...i,cidVersion:r.version})).cid}var Wi={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},_c={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},kc=new globalThis.TextEncoder;function od(r,e){let t=Wi[e],n=_c[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function sd(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Wi[e],i=_c[e],o=r;for(;o.length>0;){let s=kc.encodeInto(o,t);o=o.slice(s.read);for(let a=0;a<s.written;a++)i^=BigInt(t[a]),i=BigInt.asUintN(e,i*n)}return i}function Ki(r,{size:e=32,utf8Buffer:t}={}){if(!Wi[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return sd(r,e,t);r=kc.encode(r)}return od(r,e)}var dr={hash:r=>Number(Ki(r,{size:32})),hashV:(r,e)=>ad(dr.hash(r,e))};function ad(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),O(e,"base16")}var Sc=64,Be=class{fp;h;seed;constructor(e,t,n,i=2){if(i>Sc)throw new TypeError("Invalid Fingerprint Size");let o=t.hashV(e,n),s=ge(i);for(let a=0;a<s.length;a++)s[a]=o[a];s.length===0&&(s[0]=7),this.fp=s,this.h=t,this.seed=n}hash(){return this.h.hash(this.fp,this.seed)}equals(e){return e?.fp instanceof Uint8Array?Sr(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var cd=500,pr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<cd;a++){let u=this.buckets[s].swap(t);if(u!=null&&(s=(s^u.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var mr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new pr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=O(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new pr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var Ec=1877,Nn=1604,ud=K.bind({ignoreUndefined:!0}),fd=R("helia:unixfs:stat"),ld={};async function vc(r,e,t={}){let n=ud(ld,t),i=await ze(r,t.path,e,n);fd("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?md(o):pd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?dd(o,e,t.filter??new mr({filterSize:1024}),t):hd(o);throw new Ce}function hd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?Ec:Nn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function dd(r,e,t,n){let i=await Bc(r.cid,e,!1,t,n);return{type:r.type,cid:r.cid,unixfs:r.unixfs,size:r.unixfs.isDirectory()?i.dirSize:r.unixfs.fileSize(),mode:r.unixfs.mode??(r.unixfs.isDirectory()?Ec:Nn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function pd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Nn,mtime:void 0,size:BigInt(r.node.byteLength)}}function md(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Nn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function Bc(r,e,t,n,i){let o={dirSize:0n,localSize:0n,dagSize:0n,deduplicatedDagSize:0n,blocks:0n,uniqueBlocks:0n};try{let s=n.has(r.bytes);n.add(r.bytes);let a=await e.get(r,i);if(o.blocks++,o.dagSize+=BigInt(a.byteLength),s||(o.uniqueBlocks++,o.deduplicatedDagSize+=BigInt(a.byteLength)),r.code===Q)o.localSize+=BigInt(a.byteLength),t&&(o.dirSize+=BigInt(a.byteLength));else if(r.code===j){let u=U(a),h;if(u.Data!=null&&(h=I.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Bc(f.Hash,e,yd(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Ne(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function yd(r,e){if(e==null)return!1;let t=r.Name;return t==null?!1:e.type==="directory"?!0:e.type==="hamt-sharded-directory"&&t.length>2}var gd=K.bind({ignoreUndefined:!0}),wd=R("helia:unixfs:touch"),xd={recursive:!1,shardSplitThresholdBytes:262144};async function Ic(r,e,t={}){let n=gd(xd,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(wd("touch %c %o",i.cid,o),n.recursive){let g=await Te(async function*(){for await(let c of mn(i.cid,e)){let d,m;if(c.type==="raw")d=new I({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await ve(w,m,{...n,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${i.cid.toString()}`);return Lt(g.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new I({data:s});else{let g=U(s);if(u=g.Links,g.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=I.unmarshal(g.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(i.cid.version,j,f);return await e.put(l,h),Lt(l,i,e,n)}var Tn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*$r(e,this.components.blockstore,t)}async addBytes(e,t={}){return xs(e,this.components.blockstore,t)}async addByteStream(e,t={}){return bs(e,this.components.blockstore,t)}async addFile(e,t={}){return _s(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return ks(e,this.components.blockstore,t)}async*cat(e,t={}){yield*dc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return pc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return mc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*yc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return wc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return bc(e,t,this.components.blockstore,n)}async stat(e,t={}){return vc(e,this.components.blockstore,t)}async touch(e,t={}){return Ic(e,this.components.blockstore,t)}};async function*Ac(){throw new Error("Not supported in browsers")}function Cc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:bd(r,e)}}async function*bd(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Ne("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function _d(r){return new Tn(r)}return Pc(kd);})();
2
+ "use strict";var HeliaUnixfs=(()=>{var Dc=Object.create;var xr=Object.defineProperty;var zc=Object.getOwnPropertyDescriptor;var Lc=Object.getOwnPropertyNames;var Fc=Object.getPrototypeOf,Pc=Object.prototype.hasOwnProperty;var br=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),q=(r,e)=>{for(var t in e)xr(r,t,{get:e[t],enumerable:!0})},Ji=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Lc(e))!Pc.call(r,i)&&i!==t&&xr(r,i,{get:()=>e[i],enumerable:!(n=zc(e,i))||n.enumerable});return r};var Ft=(r,e,t)=>(t=r!=null?Dc(Fc(r)):{},Ji(e||!r||!r.__esModule?xr(t,"default",{value:r,enumerable:!0}):t,r)),Uc=r=>Ji(xr({},"__esModule",{value:!0}),r);var ns=br((er,Lr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(c){if(!Array.isArray(c)&&!ArrayBuffer.isView(c))return!1;for(var d=0;d<c.length;d++)if(!Number.isInteger(c[d])||c[d]<0||c[d]>255)return!1;return!0}function i(c,d){return(c&65535)*d+(((c>>>16)*d&65535)<<16)}function o(c,d){return c<<d|c>>>32-d}function s(c){return c^=c>>>16,c=i(c,2246822507),c^=c>>>13,c=i(c,3266489909),c^=c>>>16,c}function a(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=c[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]*d[3]+c[1]*d[2]+c[2]*d[1]+c[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(c,d){return d%=64,d===32?[c[1],c[0]]:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d|c[0]>>>32-d]:(d-=32,[c[1]<<d|c[0]>>>32-d,c[0]<<d|c[1]>>>32-d])}function f(c,d){return d%=64,d===0?c:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d]:[c[1]<<d-32,0]}function l(c,d){return[c[0]^d[0],c[1]^d[1]]}function g(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,y=d,w=0,b=3432918353,k=461845907,v=0;v<x;v=v+4)w=c[v]|c[v+1]<<8|c[v+2]<<16|c[v+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),y^=w,y=o(y,13),y=i(y,5)+3864292196;switch(w=0,m){case 3:w^=c[v+2]<<16;case 2:w^=c[v+1]<<8;case 1:w^=c[v],w=i(w,b),w=o(w,15),w=i(w,k),y^=w}return y^=c.length,y=s(y),y>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=d,w=d,b=d,k=d,v=0,C=0,E=0,D=0,ye=597399067,yr=2869860233,gr=951274213,wr=2716044179,N=0;N<x;N=N+16)v=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,C=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,E=c[N+8]|c[N+9]<<8|c[N+10]<<16|c[N+11]<<24,D=c[N+12]|c[N+13]<<8|c[N+14]<<16|c[N+15]<<24,v=i(v,ye),v=o(v,15),v=i(v,yr),y^=v,y=o(y,19),y+=w,y=i(y,5)+1444728091,C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=y,k=i(k,5)+850148119;switch(v=0,C=0,E=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=c[N+11]<<24;case 11:E^=c[N+10]<<16;case 10:E^=c[N+9]<<8;case 9:E^=c[N+8],E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E;case 8:C^=c[N+7]<<24;case 7:C^=c[N+6]<<16;case 6:C^=c[N+5]<<8;case 5:C^=c[N+4],C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C;case 4:v^=c[N+3]<<24;case 3:v^=c[N+2]<<16;case 2:v^=c[N+1]<<8;case 1:v^=c[N],v=i(v,ye),v=o(v,15),v=i(v,yr),y^=v}return y^=c.length,w^=c.length,b^=c.length,k^=c.length,y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,y=s(y),w=s(w),b=s(b),k=s(k),y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,("00000000"+(y>>>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(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=[0,d],w=[0,d],b=[0,0],k=[0,0],v=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[c[E+4]|c[E+5]<<8|c[E+6]<<16|c[E+7]<<24,c[E]|c[E+1]<<8|c[E+2]<<16|c[E+3]<<24],k=[c[E+12]|c[E+13]<<8|c[E+14]<<16|c[E+15]<<24,c[E+8]|c[E+9]<<8|c[E+10]<<16|c[E+11]<<24],b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b),y=h(y,27),y=a(y,w),y=a(u(y,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k),w=h(w,31),w=a(w,y),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[E+14]],48));case 14:k=l(k,f([0,c[E+13]],40));case 13:k=l(k,f([0,c[E+12]],32));case 12:k=l(k,f([0,c[E+11]],24));case 11:k=l(k,f([0,c[E+10]],16));case 10:k=l(k,f([0,c[E+9]],8));case 9:k=l(k,[0,c[E+8]]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k);case 8:b=l(b,f([0,c[E+7]],56));case 7:b=l(b,f([0,c[E+6]],48));case 6:b=l(b,f([0,c[E+5]],40));case 5:b=l(b,f([0,c[E+4]],32));case 4:b=l(b,f([0,c[E+3]],24));case 3:b=l(b,f([0,c[E+2]],16));case 2:b=l(b,f([0,c[E+1]],8));case 1:b=l(b,[0,c[E]]),b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b)}return y=l(y,[0,c.length]),w=l(w,[0,c.length]),y=a(y,w),w=a(w,y),y=g(y),w=g(w),y=a(y,w),w=a(w,y),("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof er<"u"?(typeof Lr<"u"&&Lr.exports&&(er=Lr.exports=t),er.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)})(er)});var os=br((h0,is)=>{is.exports=ns()});var Pr=br((x0,as)=>{"use strict";as.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(zf,0),u=~(4294967295<<o+1),h=ss(i&u);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 u=Math.min(n,t),h=~(255<<u),f=o&h;i|=f<<8-t,o=o>>>u,n-=u,t-=u,(!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 zf(r,e){return r+ss(e)}function ss(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 Qa=br((Mw,Pi)=>{"use strict";var ch=Object.prototype.hasOwnProperty,Y="~";function cr(){}Object.create&&(cr.prototype=Object.create(null),new cr().__proto__||(Y=!1));function uh(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Za(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new uh(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 mn(r,e){--r._eventsCount===0?r._events=new cr:delete r._events[e]}function X(){this._events=new cr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)ch.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 u=this._events[a],h=arguments.length,f,l;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,i),!0;case 5:return u.fn.call(u.context,t,n,i,o),!0;case 6:return u.fn.call(u.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];u.fn.apply(u.context,f)}else{var g=u.length,c;for(l=0;l<g;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[l].context,f)}}return!0};X.prototype.on=function(e,t,n){return Za(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return Za(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 mn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&mn(this,o);else{for(var a=0,u=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&u.push(s[a]);u.length?this._events[o]=u.length===1?u[0]:u:mn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&mn(this,t)):(this._events=new cr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Pi<"u"&&(Pi.exports=X)});var Ed={};q(Ed,{globSource:()=>Nc,unixfs:()=>Sd,urlSource:()=>Tc});function Oc(r){return r[Symbol.asyncIterator]!=null}function Rc(r){if(Oc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var _r=Rc;function $c(r){return r[Symbol.asyncIterator]!=null}function Mc(r,e=1){return e=Number(e),$c(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 kr=Mc;async function*Pt(r,e=1){for await(let t of kr(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 ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function je(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Sr(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 Zi=Symbol.for("@achingbrain/uint8arraylist");function Yi(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 Er(r){return!!r?.[Zi]}var ot=class r{bufs;length;[Zi]=!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(Er(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(Er(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=Yi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Yi(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(Er(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 je(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:je(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,u=a+s.byteLength;if(i=u,e>=u)continue;let h=e>=a&&e<u,f=t>a&&t<=u;if(h&&f){if(e===a&&t===u){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===u){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(!Er(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,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let g=h;g>=0;g--){let c=this.get(l+g);if(n[g]!==c){f=Math.max(1,g-a[c]);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=ne(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=ge(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=ge(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=ge(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=ne(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=ge(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=ge(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=ge(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=ge(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=ge(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(!Sr(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 Hc=262144,Ut=(r={})=>{let e=r.chunkSize??Hc;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 u=new ot;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};q($,{code:()=>j,createLink:()=>xo,createNode:()=>wo,decode:()=>U,encode:()=>T,name:()=>Mu,prepare:()=>F,validate:()=>Wn});var $n={};q($n,{base32:()=>Pe,base32hex:()=>tu,base32hexpad:()=>nu,base32hexpadupper:()=>iu,base32hexupper:()=>ru,base32pad:()=>Qc,base32padupper:()=>eu,base32upper:()=>Zc,base32z:()=>ou});var st={};q(st,{coerce:()=>le,empty:()=>Qi,equals:()=>zn,fromHex:()=>jc,fromString:()=>Ln,isBinary:()=>Gc,toHex:()=>Vc,toString:()=>Fn});var Qi=new Uint8Array(0);function Vc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function jc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):Qi}function zn(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 le(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 Gc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Ln(r){return new TextEncoder().encode(r)}function Fn(r){return new TextDecoder().decode(r)}function qc(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,u=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,y=0,w=d.length;y!==w&&d[y]===0;)y++,m++;for(var b=(w-y)*f+1>>>0,k=new Uint8Array(b);y!==w;){for(var v=d[y],C=0,E=b-1;(v!==0||C<x)&&E!==-1;E--,C++)v+=256*k[E]>>>0,k[E]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");x=C,y++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function g(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,y=0;d[m]===u;)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 v=0,C=w-1;(k!==0||v<y)&&C!==-1;C--,v++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");y=v,m++}if(d[m]!==" "){for(var E=w-y;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function c(d){var m=g(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:g,decode:c}}var Wc=qc,Kc=Wc,eo=Kc;var Pn=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")}},Un=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,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 to(this,e)}},On=class{decoders;constructor(e){this.decoders=e}or(e){return to(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 to(r,e){return new On({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Rn=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 Pn(e,t,n),this.decoder=new Un(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 Rn(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=eo(t,r);return at({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Xc(r,e,t,n){let i=r.length;for(;r[i-1]==="=";)--i;let o=new Uint8Array(i*t/8|0),s=0,a=0,u=0;for(let h=0;h<i;++h){let f=e[r[h]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|f,s+=t,s>=8&&(s-=8,o[u++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return o}function Jc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],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)!==0;)o+="=";return o}function Yc(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function L({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=Yc(n);return at({prefix:e,name:r,encode(o){return Jc(o,n,t)},decode(o){return Xc(o,i,t,r)}})}var Pe=L({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Zc=L({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qc=L({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),eu=L({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),tu=L({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),ru=L({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),nu=L({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),iu=L({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ou=L({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Mn={};q(Mn,{base36:()=>Ot,base36upper:()=>su});var Ot=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),su=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Hn={};q(Hn,{base58btc:()=>he,base58flickr:()=>au});var he=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),au=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var cu=io,ro=128,uu=127,fu=~uu,lu=Math.pow(2,31);function io(r,e,t){e=e||[],t=t||0;for(var n=t;r>=lu;)e[t++]=r&255|ro,r/=128;for(;r&fu;)e[t++]=r&255|ro,r>>>=7;return e[t]=r|0,io.bytes=t-n+1,e}var hu=Vn,du=128,no=127;function Vn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Vn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&no)<<i:(s&no)*Math.pow(2,i),i+=7}while(s>=du);return Vn.bytes=o-n,t}var pu=Math.pow(2,7),mu=Math.pow(2,14),yu=Math.pow(2,21),gu=Math.pow(2,28),wu=Math.pow(2,35),xu=Math.pow(2,42),bu=Math.pow(2,49),_u=Math.pow(2,56),ku=Math.pow(2,63),Su=function(r){return r<pu?1:r<mu?2:r<yu?3:r<gu?4:r<wu?5:r<xu?6:r<bu?7:r<_u?8:r<ku?9:10},Eu={encode:cu,decode:hu,encodingLength:Su},Bu=Eu,Rt=Bu;function $t(r,e=0){return[Rt.decode(r,e),Rt.decode.bytes]}function ct(r,e,t=0){return Rt.encode(r,e,t),e}function ut(r){return Rt.encodingLength(r)}function Ge(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 vr(r){let e=le(r),[t,n]=$t(e),[i,o]=$t(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 oo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&zn(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 so(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Iu(t,jn(r),e??he.encoder);default:return Au(t,jn(r),e??Pe.encoder)}}var ao=new WeakMap;function jn(r){let e=ao.get(r);if(e==null){let t=new Map;return ao.set(r,t),t}return e}var A=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!==Mt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Cu)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=Ge(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&&oo(e.multihash,n.multihash)}toString(e){return so(this,e)}toJSON(){return{"/":so(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??co(n,i,o.bytes))}else if(t[Nu]===!0){let{version:n,multihash:i,code:o}=t,s=vr(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!==Mt)throw new Error(`Version 0 CID must use dag-pb (code: ${Mt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=co(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Mt,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=le(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,g]=$t(e.subarray(t));return t+=g,l},i=n(),o=Mt;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(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,multihashSize:f,size:h}}static parse(e,t){let[n,i]=vu(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 jn(o).set(n,e),o}};function vu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Pe.prefix:{let t=e??Pe;return[Pe.prefix,t.decode(r)]}case Ot.prefix:{let t=e??Ot;return[Ot.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 Iu(r,e,t){let{prefix:n}=t;if(n!==he.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 Au(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 Mt=112,Cu=18;function co(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 Nu=Symbol.for("@ipld/js-cid/CID");var Tu=new TextDecoder;function Gn(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 Ir(r,e){let t;[t,e]=Gn(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 uo(r,e){let t;return[t,e]=Gn(r,e),[t&7,t>>3,e]}function Du(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=uo(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]=Ir(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]=Ir(r,n),e.Name=Tu.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]=Gn(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 fo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=uo(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(u===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Ir(r,t),n&&(i=!0)}else if(u===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Ir(r,t),n.push(Du(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${u}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var ho=new TextEncoder,lo=2**32,zu=2**31;function Lu(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=Ht(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=ho.encode(r.Name);t-=n.length,e.set(n,t),t=Ht(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ht(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function po(r){let e=Pu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ht(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Lu(r.Links[i],t.subarray(0,n));n-=o,n=Ht(t,n,o)-1,t[n]=18}return t}function Fu(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=ho.encode(r.Name).length;e+=1+t+ht(t)}return typeof r.Tsize=="number"&&(e+=1+ht(r.Tsize)),e}function Pu(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=Fu(t);e+=1+n+ht(n)}return e}function Ht(r,e,t){e-=ht(t);let n=e;for(;t>=zu;)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((Uu(r)+6)/7)}function Uu(r){let e=0;return r>=lo&&(r=Math.floor(r/lo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Ou[r]}var Ou=[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 Ru=["Data","Links"],$u=["Hash","Name","Tsize"],qn=new TextEncoder;function yo(r,e){if(r===e)return 0;let t=r.Name?qn.encode(r.Name):[],n=e.Name?qn.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 mo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function go(r){if(typeof r.asCID=="object"){let t=A.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=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.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=qn.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(go),e.Links.sort(yo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Wn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!mo(r,Ru))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(!mo(t,$u))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&&yo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function wo(r,e=[]){return F({Data:r,Links:e})}function xo(r,e,t){return go({Hash:t,Name:r,Tsize:e})}function bo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Mu="dag-pb",j=112;function T(r){Wn(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),po(e)}function U(r){let e=bo(r),t=fo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.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 Vt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}},Ar=class r extends Error{static name="InvalidUnixFSMessageError";static code="ERR_INVALID_MESSAGE";name=r.name;code=r.code;constructor(e="Invalid message"){super(e)}};var Hu=Math.pow(2,7),Vu=Math.pow(2,14),ju=Math.pow(2,21),_o=Math.pow(2,28),ko=Math.pow(2,35),So=Math.pow(2,42),Eo=Math.pow(2,49),J=128,Ue=127;function jt(r){if(r<Hu)return 1;if(r<Vu)return 2;if(r<ju)return 3;if(r<_o)return 4;if(r<ko)return 5;if(r<So)return 6;if(r<Eo)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(jt(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 vo(r,e){let t=r[e],n=0;if(n+=t&Ue,t<J||(t=r[e+1],n+=(t&Ue)<<7,t<J)||(t=r[e+2],n+=(t&Ue)<<14,t<J)||(t=r[e+3],n+=(t&Ue)<<21,t<J)||(t=r[e+4],n+=(t&Ue)*_o,t<J)||(t=r[e+5],n+=(t&Ue)*ko,t<J)||(t=r[e+6],n+=(t&Ue)*So,t<J)||(t=r[e+7],n+=(t&Ue)*Eo,t<J))return n;throw new RangeError("Could not decode varint")}var Kn=new Float32Array([-0]),Oe=new Uint8Array(Kn.buffer);function Io(r,e,t){Kn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Ao(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Kn[0]}var Xn=new Float64Array([-0]),W=new Uint8Array(Xn.buffer);function Co(r,e,t){Xn[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 No(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],Xn[0]}var Gu=BigInt(Number.MAX_SAFE_INTEGER),qu=BigInt(Number.MIN_SAFE_INTEGER),ie=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<Gu&&e>qu)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>To&&(i=0n,++n>To&&(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 ie(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var To=4294967296n;function Do(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 zo(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 Jn(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 we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Cr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Yn=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,we(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 we(this,4);return Cr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Cr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=Ao(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=No(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 we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return zo(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);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 ie(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 we(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 we(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 we(this,8);let e=Cr(this.buf,this.pos+=4),t=Cr(this.buf,this.pos+=4);return new ie(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=vo(this.buf,this.pos);return this.pos+=jt(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 Zn(r){return new Yn(r instanceof Uint8Array?r:r.subarray())}function Gt(r,e,t){let n=Zn(r);return e.decode(n,void 0,t)}var Qn={};q(Qn,{base10:()=>Wu});var Wu=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var ei={};q(ei,{base16:()=>Ku,base16upper:()=>Xu});var Ku=L({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Xu=L({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ti={};q(ti,{base2:()=>Ju});var Ju=L({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ri={};q(ri,{base256emoji:()=>tf});var Fo=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}"),Yu=Fo.reduce((r,e,t)=>(r[t]=e,r),[]),Zu=Fo.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function Qu(r){return r.reduce((e,t)=>(e+=Yu[t],e),"")}function ef(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=Zu[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var tf=at({prefix:"\u{1F680}",name:"base256emoji",encode:Qu,decode:ef});var ni={};q(ni,{base64:()=>qt,base64pad:()=>rf,base64url:()=>nf,base64urlpad:()=>of});var qt=L({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),rf=L({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),nf=L({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),of=L({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ii={};q(ii,{base8:()=>sf});var sf=L({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var oi={};q(oi,{identity:()=>af});var af=at({prefix:"\0",name:"identity",encode:r=>Fn(r),decode:r=>Ln(r)});var Dp=new TextEncoder,cf=new TextDecoder;var Po=512;function Uo(r){return JSON.parse(cf.decode(r))}var Ie={};q(Ie,{code:()=>Q,decode:()=>lf,encode:()=>ff,name:()=>uf});var uf="raw",Q=85;function ff(r){return le(r)}function lf(r){return le(r)}var ci={};q(ci,{identity:()=>ai});var Oo=0,hf="identity",Ro=le;function df(r){return Ge(Oo,Ro(r))}var ai={code:Oo,name:hf,encode:Ro,digest:df};var fi={};q(fi,{sha256:()=>oe,sha512:()=>pf});function We({name:r,code:e,encode:t}){return new ui(r,e,t)}var ui=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?Ge(this.code,t):t.then(n=>Ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Mo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=We({name:"sha2-256",code:18,encode:Mo("SHA-256")}),pf=We({name:"sha2-512",code:19,encode:Mo("SHA-512")});var li={...oi,...ti,...ii,...Qn,...ei,...$n,...Mn,...Hn,...ni,...ri},Gp={...fi,...ci};function Vo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Ho=Vo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),hi=Vo("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=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),mf={utf8:Ho,"utf-8":Ho,hex:li.base16,latin1:hi,ascii:hi,binary:hi,...li},jo=mf;function O(r,e="utf8"){let t=jo[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function di(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var Ke=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function pi(){}var yi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},yf=di();function gf(r){return globalThis.Buffer!=null?ne(r):yf(r)}var Kt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ke(pi,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ke(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new gi((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(Nr,10,ie.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=ie.fromBigInt(e);return this._push(Nr,t.length(),t)}uint64Number(e){return this._push(Bo,jt(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=ie.fromBigInt(e).zzEncode();return this._push(Nr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Nr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(mi,1,e?1:0)}fixed32(e){return this._push(Wt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Wt,4,t.lo)._push(Wt,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(Io,4,e)}double(e){return this._push(Co,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(mi,1,0):this.uint32(t)._push(xf,t,e)}string(e){let t=Do(e);return t!==0?this.uint32(t)._push(Jn,t,e):this._push(mi,1,0)}fork(){return this.states=new yi(this),this.head=this.tail=new Ke(pi,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 Ke(pi,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=gf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function mi(r,e,t){e[t]=r&255}function wf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var gi=class extends Ke{next;constructor(e,t){super(wf,e,t),this.next=void 0}};function Nr(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 Wt(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 xf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Kt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(bf,e,r),this},Kt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(_f,e,r),this});function bf(r,e,t){e.set(r,t)}function _f(r,e,t){r.length<40?Jn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(O(r),t)}function wi(){return new Kt}function Xt(r,e){let t=wi();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 Tr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function xi(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 Tr("enum",dt.VARINT,t,n)}function Jt(r,e){return Tr("message",dt.LENGTH_DELIMITED,r,e)}var xe;(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=()=>xi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Jt((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),Dr.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 u=i.uint32();switch(u>>>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=Dr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Xt(i,r.codec()),r.decode=i=>Gt(i,r.codec())})(xe||(xe={}));var Dr;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((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=>Xt(t,r.codec()),r.decode=t=>Gt(t,r.codec())})(Dr||(Dr={}));var Go;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((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=>Xt(t,r.codec()),r.decode=t=>Gt(t,r.codec())})(Go||(Go={}));var qo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},kf=["directory","hamt-sharded-directory"],Wo=parseInt("0644",8),Ko=parseInt("0755",8),Xo=BigInt(1024),I=class r{static unmarshal(e){let t=xe.decode(e);if(t.fanout!=null&&t.fanout>Xo)throw new Ar(`Fanout size was too large - ${t.fanout} > ${Xo}`);let n=new r({type:qo[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:u}=e;if(t!=null&&!Object.values(qo).includes(t))throw new Vt("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=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Ko:Wo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return kf.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=xe.DataType.Raw;break;case"directory":e=xe.DataType.Directory;break;case"file":e=xe.DataType.File;break;case"metadata":e=xe.DataType.Metadata;break;case"symlink":e=xe.DataType.Symlink;break;case"hamt-sharded-directory":e=xe.DataType.HAMTShard;break;default:throw new Vt(`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===Wo&&!this.isDirectory()&&(n=void 0),n===Ko&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.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 P=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Jo(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=Ie,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await be(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var zr=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 Re=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 Yo=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(F({Data:n.marshal()})),o=await be(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*Sf(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 Zo(r){return r.single===!0}var Ef=(r,e,t)=>async function(i){if(i.length===1&&Zo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Zo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new I({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 be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new P("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 I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(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},u=T(F(a)),h=await be(u,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},Qo=async(r,e,t)=>t.layout(Sf(r,e,t),Ef(r,e,t));function Bf(r){return Symbol.iterator in r}function vf(r){return Symbol.asyncIterator in r}function If(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Bf(r))return async function*(){yield*r}();if(vf(r))return r}catch{throw new Re("Content was invalid")}throw new Re("Content was invalid")}function es(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 u=0n;for await(let h of r.chunker(r.chunkValidator(If(i.content)))){let f=BigInt(h.byteLength);u+=f,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:u,chunkSize:f,path:i.path})),yield h}}(),originalPath:o},a=r.fileBuilder??Qo;yield async()=>a(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o},a=r.dirBuilder??Yo;yield async()=>a(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Af(r){return r.content!=null}var ts=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Re("Content was invalid");if(typeof t=="string"||t instanceof String)yield O(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Re("Content was invalid")}};var Cf=174;function Yt(r){let e=r?.maxChildrenPerNode??Cf;return async function t(n,i){let o=[];for await(let s of kr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Nf(r){return r[Symbol.asyncIterator]!=null}function Tf(r){if(Nf(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 rs=Tf;var Ae=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}},Zt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Qt=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xe=class extends Ae{_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}*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?Qt.bytes.byteLength:Zt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof Ae)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(F(i)),s=await be(o,e,this.options),a=o.length+i.Links.reduce((u,h)=>u+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Fr=Ft(os(),1);function Df(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 m0=We({name:"murmur3-32",code:35,encode:r=>Df(Fr.default.x86.hash32(r))}),Je=We({name:"murmur3-128",code:34,encode:r=>st.fromHex(Fr.default.x64.hash128(r))}),y0=We({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Fr.default.x64.hash128(r)).subarray(0,8)});var cs=Ft(Pr(),1);var se=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 cs.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 us(this,e,t)}toJSON(){return this.serialize(Uf,Of)}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"?O(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 Of(r){return r}async function us(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await us(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Rf=[255,254,252,248,240,224,192,128],$f=[1,3,7,15,31,63,127,255],Ur=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=Mf(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 Mf(r,e,t){let n=Hf(e,t);return(r&n)>>>e}function Hf(r,e){return Rf[r]&$f[Math.min(e+r-1,7)]}function fs(r){function e(t){return t instanceof Or?t:new Or(t,r)}return e}var Or=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?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Ur(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:fs(r.hashFn)};return new se(e)}async function Vf(r){return(await Je.encode(r)).slice(0,8).reverse()}var ls=BigInt(34),jf=8,bi=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Vf,bits:t.shardFanoutBits??jf})}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()}*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ps(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ds(this._bucket,e,this,this.options))yield{...t,path:this.path}}},hs=bi;async function*ds(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 se){let y;for await(let w of ds(m,e,null,n))y=w;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else if(Gf(m.value)){let y=m.value,w;for await(let k of y.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 y=m.value;if(y.cid==null)continue;let w=x+m.key,b=y.size;s.push({Name:w,Tsize:Number(b),Hash:y.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:ls,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),g=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:g,unixfs:h,size:c}}function Gf(r){return typeof r.flush=="function"}function ps(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 se){let g=ps(f,null,t);o.push({Name:l,Tsize:Number(g),Hash:t.cidVersion===0?Zt:Qt})}else if(typeof f.value.flush=="function"){let c=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(c),Hash:t.cidVersion===0?Zt:Qt})}else{let g=f.value;if(g.cid==null)continue;let c=l+f.key,d=g.size;o.push({Name:c,Tsize:Number(d),Hash:g.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ls,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function _i(r,e,t,n){let i=e;e instanceof Xe&&e.estimateNodeSize()>t&&(i=await qf(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 _i(i,o,t,n)}return i}async function qf(r,e){let t=new hs({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(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var ms=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Wf(r,e,t){let n=ms(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let u=n[a];s+=`${s!==""?"/":""}${u}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(u,r),e=await _i(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Xe({root:!1,dir:!0,parent:o,parentKey:u,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(u,f),o=f}}return e}async function*ys(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function gs(r){return async function*(t,n){let i=new Xe({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await Wf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*ys(i,n);else for(let a of i.eachChildSeries())a!=null&&(yield*ys(a.child,n))}}async function*Ye(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,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,g=t.reduceSingleLeafToSelf??!0,c=t.chunker??Ut(),d=t.chunkValidator??ts(),m=t.dagBuilder??es({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Yt(),bufferImporter:t.bufferImporter??Jo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:g,cidVersion:a,onProgress:t.onProgress,dirBuilder:t.dirBuilder,fileBuilder:t.fileBuilder}),x=t.treeBuilder??gs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let y of x(Pt(m(n,e),f),e))yield{cid:y.cid,path:y.path,unixfs:y.unixfs,size:y.size}}async function ws(r,e,t={}){let n=await _r(Ye([r],e,t));if(n==null)throw new zr("Nothing imported");return n}async function xs(r,e,t={}){return ws({content:r},e,t)}async function bs(r,e,t={}){return ws({content:r},e,t)}function Kf(r){return r[Symbol.asyncIterator]!=null}function Xf(r){if(Kf(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=Xf;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ce=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Ne=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},tr=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Rr=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},mt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},$r=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},$e=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},M=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var rr={cidVersion:1,rawLeaves:!0,layout:Yt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*Mr(r,e,t={}){yield*Ye(r,e,{...rr,...t})}async function _s(r,e,t={}){let{cid:n}=await xs(r,e,{...rr,...t});return n}async function ks(r,e,t={}){let{cid:n}=await bs(r,e,{...rr,...t});return n}async function Ss(r,e,t={}){if(r.path==null)throw new M("path is required");if(r.content==null)throw new M("content is required");let n=await _e(Mr([r],e,{...rr,...t,wrapWithDirectory:!0}));if(n==null)throw new M("Nothing imported");return n.cid}async function Es(r,e,t={}){if(r.content!=null)throw new M("Directories cannot have content, use addFile instead");let i=await(r.path==null?_r:_e)(Mr([{...r,path:r.path??"-"}],e,{...rr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new M("Nothing imported");return i.cid}function yt(r){if(typeof r!="object"||r===null)return!1;let e=Object.getPrototypeOf(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)}var{hasOwnProperty:vs}=Object.prototype,{propertyIsEnumerable:Jf}=Object,gt=(r,e,t)=>{Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})},Yf=void 0,Bs={concatArrays:!1,ignoreUndefined:!1},Hr=r=>{let e=[];for(let t in r)vs.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)Jf.call(r,n)&&e.push(n)}return e};function wt(r){return Array.isArray(r)?Zf(r):yt(r)?Qf(r):r}function Zf(r){let e=r.slice(0,0);return Hr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}function Qf(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Hr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}var Is=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?gt(r,i,ki(r[i],e[i],n)):gt(r,i,wt(e[i])))}),r),el=(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++)vs.call(o,a)&&(s.push(String(a)),o===r?gt(n,i++,o[a]):gt(n,i++,wt(o[a])));n=Is(n,o,Hr(o).filter(a=>!s.includes(a)),t)}),n};function ki(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?el(r,e,t):!yt(e)||!yt(r)?wt(e):Is(r,e,Hr(e),t)}function K(...r){let e=ki(wt(Bs),this!==Yf&&this||{},Bs),t={_:{}};for(let n of r)if(n!==void 0){if(!yt(n))throw new TypeError("`"+n+"` is not an Option Object");t=ki(t,{_:n},e)}return t._}var Vr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},de=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},jr=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},H=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},Gr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},qr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},Wr=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 tl=["string","number","bigint","symbol"],rl=["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 As(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(tl.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(nl(r))return"Buffer";let t=il(r);return t||"Object"}function nl(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function il(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(rl.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 xt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",ol=new TextDecoder,sl=new TextEncoder;function Kr(r){return xt&&globalThis.Buffer.isBuffer(r)}function Xr(r){return r instanceof Uint8Array?Kr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Ds=xt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Ns(r,e,t):(r,e,t)=>t-e>64?ol.decode(r.subarray(e,t)):Ns(r,e,t),Jr=xt?r=>r.length>64?globalThis.Buffer.from(r):Cs(r):r=>r.length>64?sl.encode(r):Cs(r);var bt=xt?(r,e,t)=>Kr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),zs=xt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Xr(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},Ls=xt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Fs(r,e){if(Kr(r)&&Kr(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 Cs(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 Ns(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,u,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],u=r[e+2],(a&192)===128&&(u&192)===128&&(f=(i&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],u=r[e+2],h=r[e+3],(a&192)===128&&(u&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(u&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 Si(n)}var Ts=4096;function Si(r){let e=r.length;if(e<=Ts)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ts));return t}var al=256,Yr=class{constructor(e=al){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=Ls(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=bt(n,0,this.cursor)}else t=zs(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",_t="CBOR encode error:",nr=[];nr[23]=1;nr[24]=2;nr[25]=3;nr[26]=5;nr[27]=9;function Le(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var V=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<V[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<V[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Le(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<V[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Le(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<V[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 Ps(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function Us(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function Os(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function Rs(r,e,t,n){return new _(p.uint,fe(r,e+1,n),9)}function pe(r,e){return G(r,0,e.value)}function G(r,e,t){if(t<V[0]){let n=Number(t);r.push([e|n])}else if(t<V[1]){let n=Number(t);r.push([e|24,n])}else if(t<V[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<V[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<V[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`)}}pe.encodedSize=function(e){return G.encodedSize(e.value)};G.encodedSize=function(e){return e<V[0]?1:e<V[1]?2:e<V[2]?3:e<V[3]?5:9};pe.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function $s(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function Ms(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function Hs(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var Ei=BigInt(-1),Vs=BigInt(1);function js(r,e,t,n){let i=fe(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,Ei-BigInt(i),9)}function Zr(r,e){let t=e.value,n=typeof t=="bigint"?t*Ei-Vs:t*-1-1;G(r,e.type.majorEncoded,n)}Zr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Ei-Vs:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};Zr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function ir(r,e,t,n){Le(r,e,t+n);let i=bt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Gs(r,e,t,n){return ir(r,e,1,t)}function qs(r,e,t,n){return ir(r,e,2,ae(r,e+1,n))}function Ws(r,e,t,n){return ir(r,e,3,ce(r,e+1,n))}function Ks(r,e,t,n){return ir(r,e,5,ue(r,e+1,n))}function Xs(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return ir(r,e,9,i)}function Qr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Jr(r.value):r.value),r.encodedBytes}function kt(r,e){let t=Qr(e);G(r,e.type.majorEncoded,t.length),r.push(t)}kt.encodedSize=function(e){let t=Qr(e);return G.encodedSize(t.length)+t.length};kt.compareTokens=function(e,t){return ul(Qr(e),Qr(t))};function ul(r,e){return r.length<e.length?-1:r.length>e.length?1:Fs(r,e)}function or(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,Ds(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=bt(r,e+t,e+o)),s}function Js(r,e,t,n){return or(r,e,1,t,n)}function Ys(r,e,t,n){return or(r,e,2,ae(r,e+1,n),n)}function Zs(r,e,t,n){return or(r,e,3,ce(r,e+1,n),n)}function Qs(r,e,t,n){return or(r,e,5,ue(r,e+1,n),n)}function ea(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return or(r,e,9,i,n)}var ta=kt;function St(r,e,t,n){return new _(p.array,n,t)}function ra(r,e,t,n){return St(r,e,1,t)}function na(r,e,t,n){return St(r,e,2,ae(r,e+1,n))}function ia(r,e,t,n){return St(r,e,3,ce(r,e+1,n))}function oa(r,e,t,n){return St(r,e,5,ue(r,e+1,n))}function sa(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return St(r,e,9,i)}function aa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return St(r,e,1,1/0)}function en(r,e){G(r,p.array.majorEncoded,e.value)}en.compareTokens=pe.compareTokens;en.encodedSize=function(e){return G.encodedSize(e.value)};function Et(r,e,t,n){return new _(p.map,n,t)}function ca(r,e,t,n){return Et(r,e,1,t)}function ua(r,e,t,n){return Et(r,e,2,ae(r,e+1,n))}function fa(r,e,t,n){return Et(r,e,3,ce(r,e+1,n))}function la(r,e,t,n){return Et(r,e,5,ue(r,e+1,n))}function ha(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return Et(r,e,9,i)}function da(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return Et(r,e,1,1/0)}function tn(r,e){G(r,p.map.majorEncoded,e.value)}tn.compareTokens=pe.compareTokens;tn.encodedSize=function(e){return G.encodedSize(e.value)};function pa(r,e,t,n){return new _(p.tag,t,1)}function ma(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function ya(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function ga(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function wa(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function rn(r,e){G(r,p.tag.majorEncoded,e.value)}rn.compareTokens=pe.compareTokens;rn.encodedSize=function(e){return G.encodedSize(e.value)};var ml=20,yl=21,gl=22,wl=23;function xa(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 ba(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 Bi(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 _a(r,e,t,n){return Bi(vi(r,e+1),3,n)}function ka(r,e,t,n){return Bi(Ii(r,e+1),5,n)}function Sa(r,e,t,n){return Bi(Ia(r,e+1),9,n)}function nn(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|ml]);else if(n===!0)r.push([p.float.majorEncoded|yl]);else if(n===null)r.push([p.float.majorEncoded|gl]);else if(n===void 0)r.push([p.float.majorEncoded|wl]);else{let i,o=!1;(!t||t.float64!==!0)&&(Ba(n),i=vi(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(va(n),i=Ii(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(xl(n),i=Ia(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}nn.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){Ba(n);let i=vi(Se,1);if(n===i||Number.isNaN(n))return 3;if(va(n),i=Ii(Se,1),n===i)return 5}return 9};var Ea=new ArrayBuffer(9),me=new DataView(Ea,1),Se=new Uint8Array(Ea,0);function Ba(r){if(r===1/0)me.setUint16(0,31744,!1);else if(r===-1/0)me.setUint16(0,64512,!1);else if(Number.isNaN(r))me.setUint16(0,32256,!1);else{me.setFloat32(0,r);let e=me.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)me.setUint16(0,31744,!1);else if(t===0)me.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?me.setUint16(0,0):i<-14?me.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):me.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function vi(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 va(r){me.setFloat32(0,r,!1)}function Ii(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 xl(r){me.setFloat64(0,r,!1)}function Ia(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)}nn.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function on(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Ps;S[25]=Us;S[26]=Os;S[27]=Rs;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=$s;S[57]=Ms;S[58]=Hs;S[59]=js;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=Gs;S[88]=qs;S[89]=Ws;S[90]=Ks;S[91]=Xs;S[92]=z;S[93]=z;S[94]=z;S[95]=on("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Js;S[120]=Ys;S[121]=Zs;S[122]=Qs;S[123]=ea;S[124]=z;S[125]=z;S[126]=z;S[127]=on("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=ra;S[152]=na;S[153]=ia;S[154]=oa;S[155]=sa;S[156]=z;S[157]=z;S[158]=z;S[159]=aa;for(let r=160;r<=183;r++)S[r]=ca;S[184]=ua;S[185]=fa;S[186]=la;S[187]=ha;S[188]=z;S[189]=z;S[190]=z;S[191]=da;for(let r=192;r<=215;r++)S[r]=pa;S[216]=ma;S[217]=ya;S[218]=ga;S[219]=wa;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=on("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=xa;S[248]=on("simple values are not supported");S[249]=_a;S[250]=ka;S[251]=Sa;S[252]=z;S[253]=z;S[254]=z;S[255]=ba;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new _(p.negint,r,1);Ee[64]=new _(p.bytes,new Uint8Array(0),1);Ee[96]=new _(p.string,"",1);Ee[128]=new _(p.array,0,1);Ee[160]=new _(p.map,0,1);Ee[244]=new _(p.false,!1,1);Ee[245]=new _(p.true,!0,1);Ee[246]=new _(p.null,null,1);function _l(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Zr,r[p.bytes.major]=kt,r[p.string.major]=ta,r[p.array.major]=en,r[p.map.major]=tn,r[p.tag.major]=rn,r[p.float.major]=nn,r}var cg=_l(),ug=new Yr,sn=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(`${_t} 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)},He={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=sn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Ai(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=sn.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Ai(h,t,n),Ai(i?r.get(h):r[h],t,n)];return kl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function Ai(r,e={},t){let n=As(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${_t} unsupported type: ${n}`);return o(r,n,e,t)}function kl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Sl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},an=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=Ee[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}},sr=Symbol.for("DONE"),cn=Symbol.for("BREAK");function El(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Bt(e,t);if(o===cn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===sr)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Bl(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=Bt(e,t);if(a===cn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===sr)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 u=Bt(e,t);if(u===sr)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,u):i[a]=u}return n?o:i}function Bt(r,e){if(r.done())return sr;let t=r.next();if(t.type===p.break)return cn;if(t.type.terminal)return t.value;if(t.type===p.array)return El(t,r,e);if(t.type===p.map)return Bl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=Bt(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Ci(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},Sl,e);let t=e.tokenizer||new an(r,e),n=Bt(t,e);if(n===sr)throw new Error(`${B} did not find any content to decode`);if(n===cn)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function ar(r,e){let[t,n]=Ci(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Ca=42;function Al(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function Cl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Ca),new _(p.bytes,t)]}function Nl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Tl(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 Aa={float64:!0,typeEncoders:{Object:Cl,undefined:Nl,number:Tl}},xg={...Aa,typeEncoders:{...Aa.typeEncoders}};function Dl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var un={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};un.tags[Ca]=Dl;var bg={...un,tags:un.tags.slice()};var Na=113;var Ta=r=>ar(Al(r),un);var za=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(`${_t} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Jr(JSON.stringify(t.value));e.push(n.length>32?Xr(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(`${_t} 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 vt=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 u=this.ch();if(a.includes(u))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 u=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,u,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 u,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:u=this.data[this._pos+1],(u&192)===128&&(l=(o&31)<<6|u&63,l>127&&(s=l));break;case 3:u=this.data[this._pos+1],h=this.data[this._pos+2],(u&192)===128&&(h&192)===128&&(l=(o&15)<<12|(u&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:u=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(u&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(u&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,Si(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 Ni(r,e){return e=Object.assign({tokenizer:new vt(r,e)},e),ar(r,e)}function Fl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ti=class extends vt{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=qt.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}},Di={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Di.tags[42]=A.parse;var La=297;var Fa=r=>{let e=Fl(r),t=Object.assign(Di,{tokenizer:new Ti(e,Di)});return Ni(e,t)};var Og=new TextDecoder;var Rg=new TextEncoder;function It(r,e,t,n,i,o,s){let a=r,u=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),u=`${u}/${h}`;let f=A.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:u,toResolve:o}};a=a[h]}else throw new Wr(`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 Pl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ta(u);return It(h,u,r,e,t,n,o)},Ua=Pl;var Ul=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Fa(u);return It(h,u,r,e,t,n,o)},Oa=Ul;function Ol(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=Ol;var Rl=(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}},At=Rl;var $l=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Ml=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=vr(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:$l(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Ra=Ml;var Hl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Uo(u);return It(h,u,r,e,t,n,o)},$a=Hl;var Vl=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},jl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Vl(u),depth:o,size:BigInt(u.length),node:u}}},Ma=jl;var Gl=async function(r){return(await Je.encode(r)).slice(0,8).reverse()},ql=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 se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Ha=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Wl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Va=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(c){throw new H(c.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let g=pt({hashFn:Gl,bits:Math.log2(Number(l.fanout))});n={rootBucket:g,hamtDepth:1,lastBucket:g}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await ql(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Ha(s.pos,o),u=Wl(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=Ha(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let g=l.Name.substring(0,o),c=l.Name.substring(o);return!(g!==a||c!==""&&c!==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=U(f),Va(r,e,t,n,i)},ja=Va;function Kl(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 fn=Kl;function Xl(r){return r[Symbol.asyncIterator]!=null}function Jl(r,e){let t=0;if(Xl(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=fn(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(let u of n)await e(u,t++)&&(yield u)}();let a=e;return function*(){s===!0&&(yield i);for(let u of n)a(u,t++)&&(yield u)}()}var Ga=Jl;function Yl(r){return r[Symbol.asyncIterator]!=null}function Zl(r,e){let t=0;if(Yl(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=fn(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(let u of n)yield e(u,t++)}();let a=e;return function*(){yield s;for(let u of n)yield a(u,t++)}()}var Ct=Zl;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var ln=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),u=!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=te(),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 ln("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new ln("task-complete"))})}u=!0,i.dispatchEvent(new ln("task-complete"))}catch(d){h=d,i.dispatchEvent(new ln("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*g(){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*c(){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=te(),await a.promise),h!=null||(n?yield*g():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var hn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||(e-1&e)!==0)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}},Nt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new hn(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 hn(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 zi=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function dn(r={}){return Ql(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 Ql(r,e){e=e??{};let t=e.onEnd,n=new Nt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,y)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Nt,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})},g=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Nt,g(),{done:!0}),d=x=>(g(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:g,get readableLength(){return n.size},onEmpty:async x=>{let y=x?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let w,b;y!=null&&(w=new Promise((k,v)=>{b=()=>{v(new zi)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&y!=null&&y?.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}var pn=class extends Error{type;code;constructor(e,t,n){super(e??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=t??"ABORT_ERR"}};async function qa(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new pn(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new pn(t?.errorMessage,t?.errorCode,t?.errorName);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Li=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=te(),this.haveNext=te()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=te(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=te(),await qa(this.readNext.promise,t?.signal,t)}};function Wa(){return new Li}function eh(r){return r[Symbol.asyncIterator]!=null}async function th(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*rh(r){let e=new AbortController,t=Wa();th(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*nh(r){for(let e of r)yield*e}function ih(...r){let e=[];for(let t of r)eh(t)||e.push(t);return e.length===r.length?nh(e):rh(r)}var Ka=ih;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Fi(r)){let n=r;r=()=>n.source}else if(Ja(r)||Xa(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Fi(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++)Fi(t[n])&&(t[n]=sh(t[n]));return oh(...t)}var oh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Xa=r=>r?.[Symbol.asyncIterator]!=null,Ja=r=>r?.[Symbol.iterator]!=null,Fi=r=>r==null?!1:r.sink!=null&&r.source!=null,sh=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=dn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Xa(o))i=async function*(){yield*o,n.end()};else if(Ja(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ka(n,i())}return r.source};var ah=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=u.offset??0,f=u.length??e.Links.length,l=e.Links.slice(h,f);u.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,g=>Ct(g,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),g=>tt(g,{ordered:!0,concurrency:u.blockReadConcurrency}),g=>Ga(g,c=>c!=null))}return a},Ya=ah;var Ui=Ft(Qa(),1);var ur=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Oi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},ec=r=>globalThis.DOMException===void 0?new Oi(r):new DOMException(r),tc=r=>{let e=r.reason===void 0?ec("This operation was aborted."):r.reason;return e instanceof Error?e:ec(e)};function Ri(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,a,h=new Promise((f,l)=>{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:c}=e;c.aborted&&l(tc(c)),a=()=>{l(tc(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let g=new ur;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(c){l(c)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?f():i instanceof Error?l(i):(g.message=i??`Promise timed out after ${t} milliseconds`,l(g))},t),(async()=>{try{f(await r)}catch(c){l(c)}})()}).finally(()=>{h.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return h.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},h}function $i(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 fr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,id:t.id,run:e};if(this.size===0||this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=$i(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}setPriority(e,t){let n=this.#e.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#e.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}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 lr=class extends Ui.default{#e;#s;#o=0;#d;#a;#p=0;#r;#c;#t;#m;#n=0;#u;#i;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:fr,...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.#s=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#a=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.#i=e.autoStart===!1}get#b(){return this.#s||this.#o<this.#d}get#_(){return this.#n<this.#u}#k(){this.#n--,this.#f(),this.emit("next")}#S(){this.#w(),this.#g(),this.#c=void 0}get#E(){let e=Date.now();if(this.#r===void 0){let t=this.#p-e;if(t<0)this.#o=this.#e?this.#n:0;else return this.#c===void 0&&(this.#c=setTimeout(()=>{this.#S()},t)),!0}return!1}#f(){if(this.#t.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#s||this.#r!==void 0||(this.#r=setInterval(()=>{this.#w()},this.#a),this.#p=Date.now()+this.#a)}#w(){this.#o===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#o=this.#e?this.#n:0,this.#l()}#l(){for(;this.#f(););}get concurrency(){return this.#u}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.#u=e,this.#l()}async#B(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#t.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#x++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#n++,this.#o++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ri(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#B(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ur&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#i?(this.#i=!1,this.#l(),this):this}pause(){this.#i=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#h("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#h("next",()=>this.#t.size<e)}async onIdle(){this.#n===0&&this.#t.size===0||await this.#h("idle")}async#h(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.#n}get isPaused(){return this.#i}};async function rc(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 new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,g=l+a.blockSizes[h];if((i>=l&&i<g||o>=l&&o<=g||i<l&&o>g)&&u.push({link:f,blockStart:n}),n=g,n>o)break}await Te(u,h=>Ct(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:g}of h){let c;switch(f.Hash.code){case j:c=U(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new lr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:f.Hash})),await rc(r,c,t,g,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var fh=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=At(h,u.offset,u.length);if(l===0n)return;let g=0n,c=l-f,d=dn();u.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),rc(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(g+=BigInt(m.byteLength),g>c)throw d.end(),new Gr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");g===c&&d.end(),u.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:g,totalBytes:c,fileSize:h})),yield m}if(g<c)throw new qr("Traversed entire DAG but did not read enough bytes")}return a},Mi=fh;var lh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),nc(e,n,i,o,s,u)}return a};async function*nc(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let u=(a.fanout-1n).toString(16).length,h=Te(s,f=>Ct(f,l=>async()=>{let g=l.Name!=null?l.Name.substring(u):null;if(g!=null&&g!==""){let c=await t(l.Hash,g,`${e}/${g}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=U(c),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:nc(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var ic=lh;var hh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,dh={raw:Mi,file:Mi,directory:Ya,"hamt-sharded-directory":ic,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},ph=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=U(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(c){throw new H(c.message)}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await ja(h,n[0],s):c=hh(h,n[0]),c==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let g=dh[f.type](r,h,f,t,i,o,s);if(g==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},oc=ph;var mh={[j]:oc,[Q]:Ma,[Na]:Ua,[La]:Oa,[ai.code]:Ra,[Po]:$a},sc=async(r,e,t,n,i,o,s)=>{let a=mh[r.code];if(a==null)throw new jr(`No resolver for code ${r.code}`);return a(r,e,t,n,sc,i,o,s)},ac=sc;var yh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),gh=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=yh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new Vr(`Unknown path type ${r}`)};async function*Hi(r,e,t={}){let{cid:n,toResolve:i}=gh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await ac(n,o,s,i,a,e,t);if(u.entry==null&&u.next==null)throw new de(`Could not resolve ${r}`);if(u.entry!=null&&(yield u.entry),u.next==null)return;i=u.next.toResolve,n=u.next.cid,o=u.next.name,s=u.next.path}}async function Z(r,e,t={}){let n=await _e(Hi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*yn(r,e,t={}){let n=await Z(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))}}function wh(r,e){try{if(typeof r=="string"&&r.length>0)return xh(r);if(typeof r=="number"&&isFinite(r))return e?.long?_h(r):bh(r);throw new Error("Value is not a string or number.")}catch(t){let n=kh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function xh(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 wn=wh;function bh(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 _h(r){let e=Math.abs(r);return e>=864e5?gn(r,e,864e5,"day"):e>=36e5?gn(r,e,36e5,"hour"):e>=6e4?gn(r,e,6e4,"minute"):e>=1e3?gn(r,e,1e3,"second"):`${r} ms`}function gn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function kh(r){return typeof r=="object"&&r!==null&&"message"in r}function Vi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=wn,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 g=0;g<f.length;g++)l=(l<<5)-l+f.charCodeAt(g),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,g=null,c,d;function m(...x){if(!m.enabled)return;let y=m,w=Number(new Date),b=w-(l||w);y.diff=b,y.prev=l,y.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,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(y,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(y,x),(y.log||t.log).apply(y,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:()=>g!==null?g:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{g=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let g=t(this.namespace+(typeof l>"u"?":":l)+f);return g.log=this.log,g}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,g=(typeof f=="string"?f:"").split(/[\s,]+/),c=g.length;for(l=0;l<c;l++)g[l]&&(f=g[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,g;for(l=0,g=t.skips.length;l<g;l++)if(t.skips[l].test(f))return!1;for(l=0,g=t.names.length;l<g;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 u(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 xn=Ch(),Sh=["#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 Eh(){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 Bh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+wn(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 vh=console.debug??console.log??(()=>{});function Ih(r){try{r?xn?.setItem("debug",r):xn?.removeItem("debug")}catch{}}function Ah(){let r;try{r=xn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Ch(){try{return localStorage}catch{}}function Nh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var cc=Vi({formatArgs:Bh,save:Ih,load:Ah,useColors:Eh,setupFormatters:Nh,colors:Sh,storage:xn,log:vh});var re=cc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Pe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":qt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>r==null?"undefined":uc(r.stack)??uc(r.message)??r.toString();function Th(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 R(r){let e=Th(`${r}:trace`);return re.enabled(`${r}:trace`)&&re.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=re(`${r}:trace`)),Object.assign(re(r),{error:re(`${r}:error`),trace:e})}function uc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Wi=Ft(Pr(),1);function _n(r){function e(t){return t instanceof bn?t:new bn(t,r)}return e}var bn=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?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new ji(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Dh=[255,254,252,248,240,224,192,128],zh=[1,3,7,15,31,63,127,255],ji=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=Lh(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 Lh(r,e,t){let n=Fh(e,t);return(r&n)>>>e}function Fh(r,e){return Dh[r]&zh[Math.min(e+r-1,7)]}var hr=BigInt(Je.code),rt=8;async function Tt(r){return(await Je.encode(r)).subarray(0,8).reverse()}var hc=Ft(Pr(),1);var Be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var Gi=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}},kn=class extends Gi{_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(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=lc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of fc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*fc(r,e,t,n){let i=r._children,o=[],s=0n;for(let c=0;c<i.length;c++){let d=i.get(c);if(d==null)continue;let m=c.toString(16).toUpperCase().padStart(2,"0");if(d instanceof se){let x;for await(let y of fc(d,e,null,n))x=y;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Ph(d.value)){let x=d.value,y;for await(let b of x.flush(e))y=b,yield y;if(y==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else{let x=d.value;if(x.cid==null)continue;let y=m+d.key,w=x.size;o.push({Name:y,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:hr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(F(h)),l=await Be(f,e,n),g=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:g}}function Ph(r){return typeof r.flush=="function"}function lc(r,e,t){let n=r._children,i=[];for(let u=0;u<n.length;u++){let h=n.get(u);if(h==null)continue;let f=u.toString(16).toUpperCase().padStart(2,"0");if(h instanceof se){let l=lc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?Sn:En})}else if(typeof h.value.flush=="function"){let g=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(g),Hash:t.cidVersion===0?Sn:En})}else{let l=h.value;if(l.cid==null)continue;let g=f+h.key,c=l.size;i.push({Name:g,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:hr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var Sn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),En=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var qi=R("helia:unixfs:commands:utils:hamt-utils"),Bn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),dc=async(r,e,t)=>{let n=new kn({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},vn=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:hr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let g=T(F(s));if(o=await Be(g,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");qi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),g.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},In=async(r,e,t,n)=>{let o=_n(Tt)(O(e)),s=[];for(;;){let a=await t.get(r,n),u=U(a),h=new hc.default,f=await o.take(rt),l=Bn(f);s.push({prefix:l,children:h,node:u});let g;for(let d of u.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)&&(g=d)}if(g==null){qi("no link found with prefix %s for %s",l,e);break}let c=g.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=g.Hash,qi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function An(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=Uh(r);else if(i.type==="hamt-sharded-directory")o=await pc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Uh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?En.bytes.byteLength:Sn.bytes.byteLength;return e}async function pc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.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===j){let u=await n.get(s.Hash,i),h=U(u);e+=await pc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function Dt(r,e,t,n){if(r.node.Data==null)throw new M("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),$h(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Rh(r,e,t,n);if(await An(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Oh(o,t);o.cid=s.cid,o.node=U(await t.get(s.cid,n))}return o}var Oh=async(r,e)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await dc(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 De(`converted directory to sharded directory ${n.cid}`),n},Rh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new tr;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.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),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},$h=async(r,e,t,n)=>{let{path:i,hash:o}=await In(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,u=parseInt(a,16);De("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(De("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new tr;De("overwriting %s in sub-shard",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 sub-shard?!");{De("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),g=s.node.Links.splice(l,1)[0],c=(g.Name??"").substring(2),m=_n(Tt)(O(c));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),y=Bn(x);g.Name=`${y}${c}`;let w=await o.take(rt),b=Bn(w);if(y===b){let v=new Wi.default;v.set(w,!0),i.push({prefix:b,children:v,node:{Links:[]}});continue}let k=new Wi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[g,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else De("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),De("adding %s to existing sub-shard",h);return vn(i,t,n)};async function Ve(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function zt(r,e,t,n){let i=await Z(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ce(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Mh(i.node),Hash:r}}function Mh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Hh=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await rs(Hi(i,t,n));if(o.length===0)throw new Rr("Could not find path in directory");return Hh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Lt(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([Ve(o.cid,t,n),zt(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 Vh=K.bind({ignoreUndefined:!0}),jh={};async function*mc(r,e,t={}){let n=Vh(jh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new $r;if(o.content==null)throw new mt;yield*o.content(n)}var Gh=K.bind({ignoreUndefined:!0}),qh=R("helia:unixfs:chmod"),Wh={recursive:!1,shardSplitThresholdBytes:262144};async function yc(r,e,t,n={}){let i=Gh(Wh,n),o=await ze(r,i.path,t,n);if(qh("chmod %c %d",o.cid,e),i.recursive){let g=await Te(async function*(){for await(let c of yn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new I({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...i,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${o.cid.toString()}`);return Lt(g.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new I({type:"file",data:s});else{let g=U(s);if(g.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=g.Links,a=I.unmarshal(g.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(o.cid.version,j,f);return await t.put(l,h),Lt(l,o,t,i)}var Kh=K.bind({ignoreUndefined:!0}),Xh=R("helia:unixfs:cp"),Jh={force:!1,shardSplitThresholdBytes:262144};async function gc(r,e,t,n,i={}){let o=Kh(Jh,i);if(t.includes("/"))throw new M("Name must not have slashes");let[s,a]=await Promise.all([Ve(e,n,o),zt(r,t,n,o)]);return Xh('Adding %c as "%s" to %c',r,t,e),(await Dt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Yh=K.bind({ignoreUndefined:!0}),Zh={};async function*wc(r,e,t={}){let n=Yh(Zh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new mt;if(o.type!=="directory")throw new $e;yield*o.content({offset:t.offset,length:t.length})}var Qh=K.bind({ignoreUndefined:!0}),xc=R("helia:unixfs:mkdir"),ed={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function bc(r,e,t,n={}){let i=Qh(ed,n);if(e.includes("/"))throw new M("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);xc("creating %s",e);let a={Data:new I({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await oe.digest(u),f=A.create(i.cidVersion,j,h);await t.put(f,u);let[l,g]=await Promise.all([Ve(r,t,i),zt(f,e,t,i)]);return xc("adding empty dir called %s to %c",e,r),(await Dt(l,g,t,{...i,allowOverwriting:i.force})).cid}var Nn=R("helia:unixfs:utils:remove-link");async function _c(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Nn(`removing ${e} from sharded directory`);let o=await rd(r,e,t,n);return await An(o.node,t,n.shardSplitThresholdBytes,n)?o:(Nn("converting shard to flat directory %c",r.cid),nd(o,t,n))}return Nn(`removing link ${e} regular directory`),td(r,e,t,n)}var td=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await Be(i,t,{...n,cidVersion:r.cid.version});return Nn(`Updated regular directory ${o}`),{node:r.node,cid:o}},rd=async(r,e,t,n)=>{let{path:i}=await In(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),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),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(g=>!(g.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return vn(i,t,n)},nd=async(r,e,t)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Z(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await Be(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var id=K.bind({ignoreUndefined:!0}),od=R("helia:unixfs:rm"),sd={shardSplitThresholdBytes:262144};async function kc(r,e,t,n={}){let i=id(sd,n);if(e.includes("/"))throw new M("Name must not have slashes");let o=await Ve(r,t,i);return od("Removing %s from %c",e,r),(await _c(o,e,t,{...i,cidVersion:r.version})).cid}var Ki={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},Sc={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},Ec=new globalThis.TextEncoder;function ad(r,e){let t=Ki[e],n=Sc[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function cd(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Ki[e],i=Sc[e],o=r;for(;o.length>0;){let s=Ec.encodeInto(o,t);o=o.slice(s.read);for(let a=0;a<s.written;a++)i^=BigInt(t[a]),i=BigInt.asUintN(e,i*n)}return i}function Xi(r,{size:e=32,utf8Buffer:t}={}){if(!Ki[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return cd(r,e,t);r=Ec.encode(r)}return ad(r,e)}var dr={hash:r=>Number(Xi(r,{size:32})),hashV:(r,e)=>ud(dr.hash(r,e))};function ud(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),O(e,"base16")}var Bc=64,ve=class{fp;h;seed;constructor(e,t,n,i=2){if(i>Bc)throw new TypeError("Invalid Fingerprint Size");let o=t.hashV(e,n),s=ge(i);for(let a=0;a<s.length;a++)s[a]=o[a];s.length===0&&(s[0]=7),this.fp=s,this.h=t,this.seed=n}hash(){return this.h.hash(this.fp,this.seed)}equals(e){return e?.fp instanceof Uint8Array?Sr(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var fd=500,pr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<fd;a++){let u=this.buckets[s].swap(t);if(u!=null&&(s=(s^u.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var mr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new pr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=O(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new pr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var vc=1877,Tn=1604,ld=K.bind({ignoreUndefined:!0}),hd=R("helia:unixfs:stat"),dd={};async function Ic(r,e,t={}){let n=ld(dd,t),i=await ze(r,t.path,e,n);hd("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?gd(o):yd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?md(o,e,t.filter??new mr({filterSize:1024}),t):pd(o);throw new Ce}function pd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?vc:Tn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function md(r,e,t,n){let i=await Ac(r.cid,e,!1,t,n);return{type:r.type,cid:r.cid,unixfs:r.unixfs,size:r.unixfs.isDirectory()?i.dirSize:r.unixfs.fileSize(),mode:r.unixfs.mode??(r.unixfs.isDirectory()?vc:Tn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function yd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Tn,mtime:void 0,size:BigInt(r.node.byteLength)}}function gd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Tn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function Ac(r,e,t,n,i){let o={dirSize:0n,localSize:0n,dagSize:0n,deduplicatedDagSize:0n,blocks:0n,uniqueBlocks:0n};try{let s=n.has(r.bytes);n.add(r.bytes);let a=await e.get(r,i);if(o.blocks++,o.dagSize+=BigInt(a.byteLength),s||(o.uniqueBlocks++,o.deduplicatedDagSize+=BigInt(a.byteLength)),r.code===Q)o.localSize+=BigInt(a.byteLength),t&&(o.dirSize+=BigInt(a.byteLength));else if(r.code===j){let u=U(a),h;if(u.Data!=null&&(h=I.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Ac(f.Hash,e,wd(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Ne(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function wd(r,e){if(e==null)return!1;let t=r.Name;return t==null?!1:e.type==="directory"?!0:e.type==="hamt-sharded-directory"&&t.length>2}var xd=K.bind({ignoreUndefined:!0}),bd=R("helia:unixfs:touch"),_d={recursive:!1,shardSplitThresholdBytes:262144};async function Cc(r,e,t={}){let n=xd(_d,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(bd("touch %c %o",i.cid,o),n.recursive){let g=await Te(async function*(){for await(let c of yn(i.cid,e)){let d,m;if(c.type==="raw")d=new I({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...n,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${i.cid.toString()}`);return Lt(g.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new I({data:s});else{let g=U(s);if(u=g.Links,g.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=I.unmarshal(g.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(i.cid.version,j,f);return await e.put(l,h),Lt(l,i,e,n)}var Dn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Mr(e,this.components.blockstore,t)}async addBytes(e,t={}){return _s(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ks(e,this.components.blockstore,t)}async addFile(e,t={}){return Ss(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Es(e,this.components.blockstore,t)}async*cat(e,t={}){yield*mc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return yc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return gc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*wc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return bc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return kc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Ic(e,this.components.blockstore,t)}async touch(e,t={}){return Cc(e,this.components.blockstore,t)}};async function*Nc(){throw new Error("Not supported in browsers")}function Tc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:kd(r,e)}}async function*kd(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Ne("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function Sd(r){return new Dn(r)}return Uc(Ed);})();
3
3
  return HeliaUnixfs}));
4
4
  //# sourceMappingURL=index.min.js.map