@helia/mfs 5.0.2 → 5.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +4 -4
- package/dist/typedoc-urls.json +2 -2
- package/package.json +3 -3
package/dist/index.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaMfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var HeliaMfs=(()=>{var Hc=Object.create;var kr=Object.defineProperty;var Vc=Object.getOwnPropertyDescriptor;var jc=Object.getOwnPropertyNames;var qc=Object.getPrototypeOf,Gc=Object.prototype.hasOwnProperty;var ct=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)kr(r,t,{get:e[t],enumerable:!0})},to=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of jc(e))!Gc.call(r,i)&&i!==t&&kr(r,i,{get:()=>e[i],enumerable:!(n=Vc(e,i))||n.enumerable});return r};var ut=(r,e,t)=>(t=r!=null?Hc(qc(r)):{},to(e||!r||!r.__esModule?kr(t,"default",{value:r,enumerable:!0}):t,r)),Wc=r=>to(kr({},"__esModule",{value:!0}),r);var ss=ct((nr,Pr)=>{(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 y(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,g=d,w=0,b=3432918353,k=461845907,I=0;I<x;I=I+4)w=c[I]|c[I+1]<<8|c[I+2]<<16|c[I+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=c[I+2]<<16;case 2:w^=c[I+1]<<8;case 1:w^=c[I],w=i(w,b),w=o(w,15),w=i(w,k),g^=w}return g^=c.length,g=s(g),g>>>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,g=d,w=d,b=d,k=d,I=0,C=0,E=0,D=0,ye=597399067,xr=2869860233,br=951274213,_r=2716044179,N=0;N<x;N=N+16)I=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,I=i(I,ye),I=o(I,15),I=i(I,xr),g^=I,g=o(g,19),g+=w,g=i(g,5)+1444728091,C=i(C,xr),C=o(C,16),C=i(C,br),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,br),E=o(E,17),E=i(E,_r),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,_r),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=g,k=i(k,5)+850148119;switch(I=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,_r),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,br),E=o(E,17),E=i(E,_r),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,xr),C=o(C,16),C=i(C,br),w^=C;case 4:I^=c[N+3]<<24;case 3:I^=c[N+2]<<16;case 2:I^=c[N+1]<<8;case 1:I^=c[N],I=i(I,ye),I=o(I,15),I=i(I,xr),g^=I}return g^=c.length,w^=c.length,b^=c.length,k^=c.length,g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,g=s(g),w=s(w),b=s(b),k=s(k),g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,g=[0,d],w=[0,d],b=[0,0],k=[0,0],I=[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,I),b=h(b,31),b=u(b,C),g=l(g,b),g=h(g,27),g=a(g,w),g=a(u(g,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,I),w=l(w,k),w=h(w,31),w=a(w,g),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,I),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,I),b=h(b,31),b=u(b,C),g=l(g,b)}return g=l(g,[0,c.length]),w=l(w,[0,c.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof nr<"u"?(typeof Pr<"u"&&Pr.exports&&(nr=Pr.exports=t),nr.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)})(nr)});var cs=ct((E0,as)=>{as.exports=ss()});var Or=ct((T0,fs)=>{"use strict";fs.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(Hf,0),u=~(4294967295<<o+1),h=us(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(Vf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let 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(jf)}};function Hf(r,e){return r+us(e)}function us(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Vf(r,e){return r[0]-e[0]}function jf(r){return r[1]}});var Qa=ct((Jw,Ri)=>{"use strict";var hh=Object.prototype.hasOwnProperty,Y="~";function fr(){}Object.create&&(fr.prototype=Object.create(null),new fr().__proto__||(Y=!1));function dh(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 dh(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 fr:delete r._events[e]}function K(){this._events=new fr,this._eventsCount=0}K.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)hh.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};K.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};K.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};K.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 y=u.length,c;for(l=0;l<y;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};K.prototype.on=function(e,t,n){return Za(this,e,t,n,!1)};K.prototype.once=function(e,t,n){return Za(this,e,t,n,!0)};K.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};K.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&mn(this,t)):(this._events=new fr,this._eventsCount=0),this};K.prototype.off=K.prototype.removeListener;K.prototype.addListener=K.prototype.on;K.prefixed=Y;K.EventEmitter=K;typeof Ri<"u"&&(Ri.exports=K)});var uc=ct((Kx,cc)=>{"use strict";cc.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var mc=ct((dc,pc)=>{"use strict";var gn=uc(),{hasOwnProperty:lc}=Object.prototype,{propertyIsEnumerable:kh}=Object,zt=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),Sh=dc,fc={concatArrays:!1,ignoreUndefined:!1},wn=r=>{let e=[];for(let t in r)lc.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)kh.call(r,n)&&e.push(n)}return e};function Lt(r){return Array.isArray(r)?Eh(r):gn(r)?vh(r):r}function Eh(r){let e=r.slice(0,0);return wn(r).forEach(t=>{zt(e,t,Lt(r[t]))}),e}function vh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return wn(r).forEach(t=>{zt(e,t,Lt(r[t]))}),e}var hc=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?zt(r,i,Gi(r[i],e[i],n)):zt(r,i,Lt(e[i])))}),r),Bh=(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++)lc.call(o,a)&&(s.push(String(a)),o===r?zt(n,i++,o[a]):zt(n,i++,Lt(o[a])));n=hc(n,o,wn(o).filter(a=>!s.includes(a)),t)}),n};function Gi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?Bh(r,e,t):!gn(e)||!gn(r)?Lt(e):hc(r,e,wn(e),t)}pc.exports=function(...r){let e=Gi(Lt(fc),this!==Sh&&this||{},fc),t={_:{}};for(let n of r)if(n!==void 0){if(!gn(n))throw new TypeError("`"+n+"` is not an Option Object");t=Gi(t,{_:n},e)}return t._}});var Pd={};G(Pd,{mfs:()=>Fd});function Kc(r){return r[Symbol.asyncIterator]!=null}function Xc(r){if(Kc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var Sr=Xc;function Jc(r){return r[Symbol.asyncIterator]!=null}function Yc(r,e=1){return e=Number(e),Jc(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 Er=Yc;async function*Rt(r,e=1){for await(let t of Er(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 Ge(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 vr(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 no=Symbol.for("@achingbrain/uint8arraylist");function ro(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function Br(r){return!!r?.[no]}var ft=class r{bufs;length;[no]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(Br(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(Br(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=ro(this.bufs,e);return t.buf[t.index]}set(e,t){let n=ro(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(Br(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return Ge(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:Ge(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(!Br(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let y=h;y>=0;y--){let c=this.get(l+y);if(n[y]!==c){f=Math.max(1,y-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(!vr(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 Zc=262144,$t=(r={})=>{let e=r.chunkSize??Zc;return async function*(n){let i=new ft,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 ft,o=0;else{let u=new ft;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var M={};G(M,{code:()=>j,createLink:()=>Eo,createNode:()=>So,decode:()=>$,encode:()=>T,name:()=>Ju,prepare:()=>P,validate:()=>Yn});var jn={};G(jn,{base32:()=>Oe,base32hex:()=>fu,base32hexpad:()=>hu,base32hexpadupper:()=>du,base32hexupper:()=>lu,base32pad:()=>cu,base32padupper:()=>uu,base32upper:()=>au,base32z:()=>pu});var lt={};G(lt,{coerce:()=>le,empty:()=>io,equals:()=>Un,fromHex:()=>eu,fromString:()=>On,isBinary:()=>tu,toHex:()=>Qc,toString:()=>Rn});var io=new Uint8Array(0);function Qc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function eu(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):io}function Un(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 tu(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function On(r){return new TextEncoder().encode(r)}function Rn(r){return new TextDecoder().decode(r)}function ru(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,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,k=new Uint8Array(b);g!==w;){for(var I=d[g],C=0,E=b-1;(I!==0||C<x)&&E!==-1;E--,C++)I+=256*k[E]>>>0,k[E]=I%a>>>0,I=I/a>>>0;if(I!==0)throw new Error("Non-zero carry");x=C,g++}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 y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===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 I=0,C=w-1;(k!==0||I<g)&&C!==-1;C--,I++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=I,m++}if(d[m]!==" "){for(var E=w-g;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=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:c}}var nu=ru,iu=nu,oo=iu;var $n=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")}},Mn=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 so(this,e)}},Hn=class{decoders;constructor(e){this.decoders=e}or(e){return so(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 so(r,e){return new Hn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Vn=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 $n(e,t,n),this.decoder=new Mn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ht({name:r,prefix:e,encode:t,decode:n}){return new Vn(r,e,t,n)}function Ue({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=oo(t,r);return ht({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function ou(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,u=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);u=u<<t|l,a+=t,a>=8&&(a-=8,s[h++]=255&u>>a)}if(a>=t||(255&u<<8-a)!==0)throw new SyntaxError("Unexpected end of data");return s}function su(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 F({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return ht({prefix:e,name:r,encode(i){return su(i,n,t)},decode(i){return ou(i,n,t,r)}})}var Oe=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),au=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),cu=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),uu=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),fu=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),lu=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),hu=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),du=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),pu=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var qn={};G(qn,{base36:()=>Mt,base36upper:()=>mu});var Mt=Ue({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),mu=Ue({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Gn={};G(Gn,{base58btc:()=>he,base58flickr:()=>yu});var he=Ue({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),yu=Ue({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var gu=uo,ao=128,wu=127,xu=~wu,bu=Math.pow(2,31);function uo(r,e,t){e=e||[],t=t||0;for(var n=t;r>=bu;)e[t++]=r&255|ao,r/=128;for(;r&xu;)e[t++]=r&255|ao,r>>>=7;return e[t]=r|0,uo.bytes=t-n+1,e}var _u=Wn,ku=128,co=127;function Wn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Wn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&co)<<i:(s&co)*Math.pow(2,i),i+=7}while(s>=ku);return Wn.bytes=o-n,t}var Su=Math.pow(2,7),Eu=Math.pow(2,14),vu=Math.pow(2,21),Bu=Math.pow(2,28),Iu=Math.pow(2,35),Au=Math.pow(2,42),Cu=Math.pow(2,49),Nu=Math.pow(2,56),Tu=Math.pow(2,63),Du=function(r){return r<Su?1:r<Eu?2:r<vu?3:r<Bu?4:r<Iu?5:r<Au?6:r<Cu?7:r<Nu?8:r<Tu?9:10},zu={encode:gu,decode:_u,encodingLength:Du},Lu=zu,Ht=Lu;function Vt(r,e=0){return[Ht.decode(r,e),Ht.decode.bytes]}function dt(r,e,t=0){return Ht.encode(r,e,t),e}function pt(r){return Ht.encodingLength(r)}function We(r,e){let t=e.byteLength,n=pt(r),i=n+pt(t),o=new Uint8Array(i+t);return dt(r,o,0),dt(t,o,n),o.set(e,i),new mt(r,t,e,o)}function Ar(r){let e=le(r),[t,n]=Vt(e),[i,o]=Vt(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new mt(t,i,s,e)}function fo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Un(r.bytes,t.bytes)}}var mt=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function lo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Pu(t,Kn(r),e??he.encoder);default:return Uu(t,Kn(r),e??Oe.encoder)}}var ho=new WeakMap;function Kn(r){let e=ho.get(r);if(e==null){let t=new Map;return ho.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!==jt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Ou)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=We(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&&fo(e.multihash,n.multihash)}toString(e){return lo(this,e)}toJSON(){return{"/":lo(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??po(n,i,o.bytes))}else if(t[Ru]===!0){let{version:n,multihash:i,code:o}=t,s=Ar(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!==jt)throw new Error(`Version 0 CID must use dag-pb (code: ${jt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=po(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,jt,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 mt(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Vt(e.subarray(t));return t+=y,l},i=n(),o=jt;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]=Fu(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 Kn(o).set(n,e),o}};function Fu(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 Oe.prefix:{let t=e??Oe;return[Oe.prefix,t.decode(r)]}case Mt.prefix:{let t=e??Mt;return[Mt.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 Pu(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 Uu(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 jt=112,Ou=18;function po(r,e,t){let n=pt(r),i=n+pt(e),o=new Uint8Array(i+t.byteLength);return dt(r,o,0),dt(e,o,n),o.set(t,i),o}var Ru=Symbol.for("@ipld/js-cid/CID");var $u=new TextDecoder;function Xn(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 Cr(r,e){let t;[t,e]=Xn(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 mo(r,e){let t;return[t,e]=Xn(r,e),[t&7,t>>3,e]}function Mu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=mo(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]=Cr(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]=Cr(r,n),e.Name=$u.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]=Xn(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 yo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=mo(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]=Cr(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]=Cr(r,t),n.push(Mu(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 wo=new TextEncoder,go=2**32,Hu=2**31;function Vu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=qt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=wo.encode(r.Name);t-=n.length,e.set(n,t),t=qt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=qt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function xo(r){let e=qu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=qt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Vu(r.Links[i],t.subarray(0,n));n-=o,n=qt(t,n,o)-1,t[n]=18}return t}function ju(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+gt(t)}if(typeof r.Name=="string"){let t=wo.encode(r.Name).length;e+=1+t+gt(t)}return typeof r.Tsize=="number"&&(e+=1+gt(r.Tsize)),e}function qu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+gt(t)}if(r.Links)for(let t of r.Links){let n=ju(t);e+=1+n+gt(n)}return e}function qt(r,e,t){e-=gt(t);let n=e;for(;t>=Hu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function gt(r){return r%2===0&&r++,Math.floor((Gu(r)+6)/7)}function Gu(r){let e=0;return r>=go&&(r=Math.floor(r/go),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Wu[r]}var Wu=[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 Ku=["Data","Links"],Xu=["Hash","Name","Tsize"],Jn=new TextEncoder;function _o(r,e){if(r===e)return 0;let t=r.Name?Jn.encode(r.Name):[],n=e.Name?Jn.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 bo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function ko(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=Jn.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(ko),e.Links.sort(_o);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Yn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!bo(r,Ku))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(!bo(t,Xu))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&&_o(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function So(r,e=[]){return P({Data:r,Links:e})}function Eo(r,e,t){return ko({Hash:t,Name:r,Tsize:e})}function vo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ju="dag-pb",j=112;function T(r){Yn(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),xo(e)}function $(r){let e=vo(r),t=yo(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 Gt=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 Yu=Math.pow(2,7),Zu=Math.pow(2,14),Qu=Math.pow(2,21),Bo=Math.pow(2,28),Io=Math.pow(2,35),Ao=Math.pow(2,42),Co=Math.pow(2,49),J=128,Re=127;function Wt(r){if(r<Yu)return 1;if(r<Zu)return 2;if(r<Qu)return 3;if(r<Bo)return 4;if(r<Io)return 5;if(r<Ao)return 6;if(r<Co)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function No(r,e,t=0){switch(Wt(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 To(r,e){let t=r[e],n=0;if(n+=t&Re,t<J||(t=r[e+1],n+=(t&Re)<<7,t<J)||(t=r[e+2],n+=(t&Re)<<14,t<J)||(t=r[e+3],n+=(t&Re)<<21,t<J)||(t=r[e+4],n+=(t&Re)*Bo,t<J)||(t=r[e+5],n+=(t&Re)*Io,t<J)||(t=r[e+6],n+=(t&Re)*Ao,t<J)||(t=r[e+7],n+=(t&Re)*Co,t<J))return n;throw new RangeError("Could not decode varint")}var Zn=new Float32Array([-0]),$e=new Uint8Array(Zn.buffer);function Do(r,e,t){Zn[0]=r,e[t]=$e[0],e[t+1]=$e[1],e[t+2]=$e[2],e[t+3]=$e[3]}function zo(r,e){return $e[0]=r[e],$e[1]=r[e+1],$e[2]=r[e+2],$e[3]=r[e+3],Zn[0]}var Qn=new Float64Array([-0]),W=new Uint8Array(Qn.buffer);function Lo(r,e,t){Qn[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 Fo(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],Qn[0]}var ef=BigInt(Number.MAX_SAFE_INTEGER),tf=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 Ke;if(e<ef&&e>tf)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>Po&&(i=0n,++n>Po&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ke;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ke}},Ke=new ie(0,0);Ke.toBigInt=function(){return 0n};Ke.zzEncode=Ke.zzDecode=function(){return this};Ke.length=function(){return 1};var Po=4294967296n;function Uo(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 Oo(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 ei(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 Nr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var ti=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 Nr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Nr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=zo(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=Fo(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 Oo(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=Nr(this.buf,this.pos+=4),t=Nr(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=To(this.buf,this.pos);return this.pos+=Wt(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 ri(r){return new ti(r instanceof Uint8Array?r:r.subarray())}function Kt(r,e,t){let n=ri(r);return e.decode(n,void 0,t)}var ni={};G(ni,{base10:()=>rf});var rf=Ue({prefix:"9",name:"base10",alphabet:"0123456789"});var ii={};G(ii,{base16:()=>nf,base16upper:()=>of});var nf=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),of=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var oi={};G(oi,{base2:()=>sf});var sf=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var si={};G(si,{base256emoji:()=>lf});var $o=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}"),af=$o.reduce((r,e,t)=>(r[t]=e,r),[]),cf=$o.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function uf(r){return r.reduce((e,t)=>(e+=af[t],e),"")}function ff(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=cf[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var lf=ht({prefix:"\u{1F680}",name:"base256emoji",encode:uf,decode:ff});var ai={};G(ai,{base64:()=>Xt,base64pad:()=>hf,base64url:()=>df,base64urlpad:()=>pf});var Xt=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),hf=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),df=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),pf=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ci={};G(ci,{base8:()=>mf});var mf=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ui={};G(ui,{identity:()=>yf});var yf=ht({prefix:"\0",name:"identity",encode:r=>Rn(r),decode:r=>On(r)});var jp=new TextEncoder,gf=new TextDecoder;var Mo=512;function Ho(r){return JSON.parse(gf.decode(r))}var Ie={};G(Ie,{code:()=>Q,decode:()=>bf,encode:()=>xf,name:()=>wf});var wf="raw",Q=85;function xf(r){return le(r)}function bf(r){return le(r)}var hi={};G(hi,{identity:()=>li});var Vo=0,_f="identity",jo=le;function kf(r){return We(Vo,jo(r))}var li={code:Vo,name:_f,encode:jo,digest:kf};var pi={};G(pi,{sha256:()=>oe,sha512:()=>Sf});function Xe({name:r,code:e,encode:t}){return new di(r,e,t)}var di=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?We(this.code,t):t.then(n=>We(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Go(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=Xe({name:"sha2-256",code:18,encode:Go("SHA-256")}),Sf=Xe({name:"sha2-512",code:19,encode:Go("SHA-512")});var mi={...ui,...oi,...ci,...ni,...ii,...jn,...qn,...Gn,...ai,...si},nm={...pi,...hi};function Ko(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Wo=Ko("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),yi=Ko("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}),Ef={utf8:Wo,"utf-8":Wo,hex:mi.base16,latin1:yi,ascii:yi,binary:yi,...mi},Tr=Ef;function U(r,e="utf8"){let t=Tr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function gi(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 Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function wi(){}var bi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},vf=gi();function Bf(r){return globalThis.Buffer!=null?ne(r):vf(r)}var Yt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(wi,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Je(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new _i((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(Dr,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(Dr,t.length(),t)}uint64Number(e){return this._push(No,Wt(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(Dr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Dr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(xi,1,e?1:0)}fixed32(e){return this._push(Jt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Jt,4,t.lo)._push(Jt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Jt,4,t.lo)._push(Jt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Do,4,e)}double(e){return this._push(Lo,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(xi,1,0):this.uint32(t)._push(Af,t,e)}string(e){let t=Uo(e);return t!==0?this.uint32(t)._push(ei,t,e):this._push(xi,1,0)}fork(){return this.states=new bi(this),this.head=this.tail=new Je(wi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Je(wi,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=Bf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function xi(r,e,t){e[t]=r&255}function If(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var _i=class extends Je{next;constructor(e,t){super(If,e,t),this.next=void 0}};function Dr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Jt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function Af(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Yt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Cf,e,r),this},Yt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(Nf,e,r),this});function Cf(r,e,t){e.set(r,t)}function Nf(r,e,t){r.length<40?ei(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(U(r),t)}function ki(){return new Yt}function Zt(r,e){let t=ki();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var wt;(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"})(wt||(wt={}));function zr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function Si(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 zr("enum",wt.VARINT,t,n)}function Qt(r,e){return zr("message",wt.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=()=>Si(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Qt((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),Lr.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=Lr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Zt(i,r.codec()),r.decode=i=>Kt(i,r.codec())})(xe||(xe={}));var Lr;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((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=>Zt(t,r.codec()),r.decode=t=>Kt(t,r.codec())})(Lr||(Lr={}));var Xo;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((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=>Zt(t,r.codec()),r.decode=t=>Kt(t,r.codec())})(Xo||(Xo={}));var Jo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},Tf=["directory","hamt-sharded-directory"],Yo=parseInt("0644",8),Zo=parseInt("0755",8),B=class r{static unmarshal(e){let t=xe.decode(e),n=new r({type:Jo[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(Jo).includes(t))throw new Gt("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()?Zo:Yo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return Tf.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 Gt(`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===Yo&&!this.isDirectory()&&(n=void 0),n===Zo&&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 O=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=M);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Qo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:M,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ie,a.cidVersion=1):(s=new B({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 O("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var Fr=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 Me=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 es=async(r,e,t)=>{let n=new B({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*Df(r,e,t){let n=-1,i;for await(let o of Rt(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 ts(r){return r.single===!0}var zf=(r,e,t)=>async function(i){if(i.length===1&&ts(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return ts(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new B({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 O("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 B({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 O("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}},rs=async(r,e,t)=>t.layout(Df(r,e,t),zf(r,e,t));function Lf(r){return Symbol.iterator in r}function Ff(r){return Symbol.asyncIterator in r}function Pf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Lf(r))return async function*(){yield*r}();if(Ff(r))return r}catch{throw new Me("Content was invalid")}throw new Me("Content was invalid")}function ns(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("/")),Uf(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(Pf(i.content)))){let h=BigInt(u.byteLength);a+=h,r.onProgress?.(new O("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield u}}(),originalPath:o};yield async()=>rs(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>es(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Uf(r){return r.content!=null}var is=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Me("Content was invalid");if(typeof t=="string"||t instanceof String)yield U(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Me("Content was invalid")}};var Of=174;function er(r){let e=r?.maxChildrenPerNode??Of;return async function t(n,i){let o=[];for await(let s of Er(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Rf(r){return r[Symbol.asyncIterator]!=null}function $f(r){if(Rf(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 os=$f;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}},tr=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),rr=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=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?rr.bytes.byteLength:tr.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 B({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 Ur=ut(cs(),1);function Mf(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 I0=Xe({name:"murmur3-32",code:35,encode:r=>Mf(Ur.default.x86.hash32(r))}),Ze=Xe({name:"murmur3-128",code:34,encode:r=>lt.fromHex(Ur.default.x64.hash128(r))}),A0=Xe({name:"murmur3-x64-64",code:34,encode:r=>lt.fromHex(Ur.default.x64.hash128(r)).subarray(0,8)});var ls=ut(Or(),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 ls.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 hs(this,e,t)}toJSON(){return this.serialize(Gf,Wf)}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"?U(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(qf);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 qf(r){return!!r}function Gf(r,e){return r.key}function Wf(r){return r}async function hs(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await hs(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Kf=[255,254,252,248,240,224,192,128],Xf=[1,3,7,15,31,63,127,255],Rr=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=Jf(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 Jf(r,e,t){let n=Yf(e,t);return(r&n)>>>e}function Yf(r,e){return Kf[r]&Xf[Math.min(e+r-1,7)]}function ds(r){function e(t){return t instanceof $r?t:new $r(t,r)}return e}var $r=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?Ge([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Rr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function xt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:ds(r.hashFn)};return new se(e)}async function Zf(r){return(await Ze.encode(r)).slice(0,8).reverse()}var ps=BigInt(34),Qf=8,Ei=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=xt({hashFn:Zf,bits:t.shardFanoutBits??Qf})}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=gs(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ys(this._bucket,e,this,this.options))yield{...t,path:this.path}}},ms=Ei;async function*ys(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 g;for await(let w of ys(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(el(m.value)){let g=m.value,w;for await(let k of g.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new B({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:ps,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),y=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:c}}function el(r){return typeof r.flush=="function"}function gs(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 y=gs(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?tr:rr})}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?tr:rr})}else{let y=f.value;if(y.cid==null)continue;let c=l+f.key,d=y.size;o.push({Name:c,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new B({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ps,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function vi(r,e,t,n){let i=e;e instanceof Ye&&e.estimateNodeSize()>t&&(i=await tl(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 vi(i,o,t,n)}return i}async function tl(r,e){let t=new ms({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 ws=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function rl(r,e,t){let n=ws(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 vi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Ye({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*xs(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function bs(r){return async function*(t,n){let i=new Ye({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await rl(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*xs(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*xs(a.child,n))}}async function*Qe(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,y=t.reduceSingleLeafToSelf??!0,c=t.chunker??$t(),d=t.chunkValidator??is(),m=t.dagBuilder??ns({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??er(),bufferImporter:t.bufferImporter??Qo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??bs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Rt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function _s(r,e,t={}){let n=await Sr(Qe([r],e,t));if(n==null)throw new Fr("Nothing imported");return n}async function ks(r,e,t={}){return _s({content:r},e,t)}async function Ss(r,e,t={}){return _s({content:r},e,t)}function nl(r){return r[Symbol.asyncIterator]!=null}function il(r){if(nl(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=il;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")}},He=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},et=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},bt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Mr=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ne=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},L=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var ir={cidVersion:1,rawLeaves:!0,layout:er({maxChildrenPerNode:1024}),chunker:$t({chunkSize:1048576})};async function*Hr(r,e,t={}){yield*Qe(r,e,{...ir,...t})}async function Es(r,e,t={}){let{cid:n}=await ks(r,e,{...ir,...t});return n}async function vs(r,e,t={}){let{cid:n}=await Ss(r,e,{...ir,...t});return n}async function Bs(r,e,t={}){if(r.path==null)throw new L("path is required");if(r.content==null)throw new L("content is required");let n=await _e(Hr([r],e,{...ir,...t,wrapWithDirectory:!0}));if(n==null)throw new L("Nothing imported");return n.cid}async function Is(r,e,t={}){if(r.content!=null)throw new L("Directories cannot have content, use addFile instead");let i=await(r.path==null?Sr:_e)(Hr([{...r,path:r.path??"-"}],e,{...ir,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new L("Nothing imported");return i.cid}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)}},qr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Gr=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)}},tt=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 ol=["string","number","bigint","symbol"],sl=["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(ol.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(al(r))return"Buffer";let t=cl(r);return t||"Object"}function al(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function cl(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(sl.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 _t=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",ul=new TextDecoder,fl=new TextEncoder;function Kr(r){return _t&&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=_t?(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?ul.decode(r.subarray(e,t)):Ns(r,e,t),Jr=_t?r=>r.length>64?globalThis.Buffer.from(r):Cs(r):r=>r.length>64?fl.encode(r):Cs(r);var kt=_t?(r,e,t)=>Kr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),zs=_t?(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=_t?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 Bi(n)}var Ts=4096;function Bi(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 ll=256,Yr=class{constructor(e=ll){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=kt(n,0,this.cursor)}else t=zs(this.chunks,this.cursor);return e&&this.reset(),t}};var v="CBOR decode error:",St="CBOR encode error:",or=[];or[23]=1;or[24]=2;or[25]=3;or[26]=5;or[27]=9;function Fe(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){Fe(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){Fe(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){Fe(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){Fe(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 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 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 $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 Ii=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(`${v} integers outside of the safe integer range are not supported`);return new _(p.negint,Ii-BigInt(i),9)}function Zr(r,e){let t=e.value,n=typeof t=="bigint"?t*Ii-Vs:t*-1-1;q(r,e.type.majorEncoded,n)}Zr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Ii-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 sr(r,e,t,n){Fe(r,e,t+n);let i=kt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function qs(r,e,t,n){return sr(r,e,1,t)}function Gs(r,e,t,n){return sr(r,e,2,ae(r,e+1,n))}function Ws(r,e,t,n){return sr(r,e,3,ce(r,e+1,n))}function Ks(r,e,t,n){return sr(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(`${v} 64-bit integer bytes lengths not supported`);return sr(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 Et(r,e){let t=Qr(e);q(r,e.type.majorEncoded,t.length),r.push(t)}Et.encodedSize=function(e){let t=Qr(e);return q.encodedSize(t.length)+t.length};Et.compareTokens=function(e,t){return dl(Qr(e),Qr(t))};function dl(r,e){return r.length<e.length?-1:r.length>e.length?1:Fs(r,e)}function ar(r,e,t,n,i){let o=t+n;Fe(r,e,o);let s=new _(p.string,Ds(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=kt(r,e+t,e+o)),s}function Js(r,e,t,n){return ar(r,e,1,t,n)}function Ys(r,e,t,n){return ar(r,e,2,ae(r,e+1,n),n)}function Zs(r,e,t,n){return ar(r,e,3,ce(r,e+1,n),n)}function Qs(r,e,t,n){return ar(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(`${v} 64-bit integer string lengths not supported`);return ar(r,e,9,i,n)}var ta=Et;function vt(r,e,t,n){return new _(p.array,n,t)}function ra(r,e,t,n){return vt(r,e,1,t)}function na(r,e,t,n){return vt(r,e,2,ae(r,e+1,n))}function ia(r,e,t,n){return vt(r,e,3,ce(r,e+1,n))}function oa(r,e,t,n){return vt(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(`${v} 64-bit integer array lengths not supported`);return vt(r,e,9,i)}function aa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return vt(r,e,1,1/0)}function en(r,e){q(r,p.array.majorEncoded,e.value)}en.compareTokens=pe.compareTokens;en.encodedSize=function(e){return q.encodedSize(e.value)};function Bt(r,e,t,n){return new _(p.map,n,t)}function ca(r,e,t,n){return Bt(r,e,1,t)}function ua(r,e,t,n){return Bt(r,e,2,ae(r,e+1,n))}function fa(r,e,t,n){return Bt(r,e,3,ce(r,e+1,n))}function la(r,e,t,n){return Bt(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(`${v} 64-bit integer map lengths not supported`);return Bt(r,e,9,i)}function da(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return Bt(r,e,1,1/0)}function tn(r,e){q(r,p.map.majorEncoded,e.value)}tn.compareTokens=pe.compareTokens;tn.encodedSize=function(e){return q.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){q(r,p.tag.majorEncoded,e.value)}rn.compareTokens=pe.compareTokens;rn.encodedSize=function(e){return q.encodedSize(e.value)};var xl=20,bl=21,_l=22,kl=23;function xa(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 ba(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 Ai(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 _a(r,e,t,n){return Ai(Ci(r,e+1),3,n)}function ka(r,e,t,n){return Ai(Ni(r,e+1),5,n)}function Sa(r,e,t,n){return Ai(Ia(r,e+1),9,n)}function nn(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|xl]);else if(n===!0)r.push([p.float.majorEncoded|bl]);else if(n===null)r.push([p.float.majorEncoded|_l]);else if(n===void 0)r.push([p.float.majorEncoded|kl]);else{let i,o=!1;(!t||t.float64!==!0)&&(va(n),i=Ci(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(Ba(n),i=Ni(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(Sl(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){va(n);let i=Ci(Se,1);if(n===i||Number.isNaN(n))return 3;if(Ba(n),i=Ni(Se,1),n===i)return 5}return 9};var Ea=new ArrayBuffer(9),me=new DataView(Ea,1),Se=new Uint8Array(Ea,0);function va(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 Ci(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 Ba(r){me.setFloat32(0,r,!1)}function Ni(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 Sl(r){me.setFloat64(0,r,!1)}function Ia(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)}nn.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${v} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function on(r){return()=>{throw new Error(`${v} ${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]=qs;S[88]=Gs;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 vl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Zr,r[p.bytes.major]=Et,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 gg=vl(),wg=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(`${St} object contains circular references`);return new r(t,e)}},Ve={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)},je={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?Ve.true:Ve.false},null(r,e,t,n){return Ve.null},undefined(r,e,t,n){return Ve.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?[Ve.emptyArray,new _(p.break)]:Ve.emptyArray;n=sn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Ti(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?[Ve.emptyMap,new _(p.break)]:Ve.emptyMap;n=sn.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Ti(h,t,n),Ti(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]}};je.Map=je.Object;je.Buffer=je.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))je[`${r}Array`]=je.DataView;function Ti(r,e={},t){let n=As(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||je[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=je[n];if(!o)throw new Error(`${St} unsupported type: ${n}`);return o(r,n,e,t)}function Bl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Il={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(`${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}},cr=Symbol.for("DONE"),cn=Symbol.for("BREAK");function Al(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=It(e,t);if(o===cn){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed array`)}if(o===cr)throw new Error(`${v} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Cl(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=It(e,t);if(a===cn){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed map`)}if(a===cr)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=It(e,t);if(u===cr)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 It(r,e){if(r.done())return cr;let t=r.next();if(t.type===p.break)return cn;if(t.type.terminal)return t.value;if(t.type===p.array)return Al(t,r,e);if(t.type===p.map)return Cl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=It(r,e);return e.tags[t.value](n)}throw new Error(`${v} tag not supported (${t.value})`)}throw new Error("unsupported")}function Di(r,e){if(!(r instanceof Uint8Array))throw new Error(`${v} data to decode must be a Uint8Array`);e=Object.assign({},Il,e);let t=e.tokenizer||new an(r,e),n=It(t,e);if(n===cr)throw new Error(`${v} did not find any content to decode`);if(n===cn)throw new Error(`${v} got unexpected break`);return[n,r.subarray(t.pos())]}function ur(r,e){let[t,n]=Di(r,e);if(n.length>0)throw new Error(`${v} too many terminals, data makes no sense`);return t}var Ca=42;function Dl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function zl(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 Ll(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Fl(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:zl,undefined:Ll,number:Fl}},Ag={...Aa,typeEncoders:{...Aa.typeEncoders}};function Pl(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]=Pl;var Cg={...un,tags:un.tags.slice()};var Na=113;var Ta=r=>ur(Dl(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(`${St} 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(`${St} 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 At=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,Bi(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 zi(r,e){return e=Object.assign({tokenizer:new At(r,e)},e),ur(r,e)}function Rl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Li=class extends At{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=Xt.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}},Fi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Fi.tags[42]=A.parse;var La=297;var Fa=r=>{let e=Rl(r),t=Object.assign(Fi,{tokenizer:new Li(e,Fi)});return zi(e,t)};var Wg=new TextDecoder;var Kg=new TextEncoder;function Ct(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 $l=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ta(u);return Ct(h,u,r,e,t,n,o)},Ua=$l;var Ml=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Fa(u);return Ct(h,u,r,e,t,n,o)},Oa=Ml;function Hl(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 nt=Hl;var Vl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new tt("Offset must be greater than or equal to 0");if(i>n)throw new tt("Offset must be less than the file size");if(o<0n)throw new tt("Length must be greater than or equal to 0");if(o>n)throw new tt("Length must be less than the file size");return{start:i,end:o}},Nt=Vl;var jl=r=>{async function*e(t={}){let{start:n,end:i}=Nt(r.length,t.offset,t.length),o=nt(r,0n,n,i);t.onProgress?.(new O("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},ql=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=Ar(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:jl(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Ra=ql;var Gl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ho(u);return Ct(h,u,r,e,t,n,o)},$a=Gl;var Wl=r=>{async function*e(t={}){let{start:n,end:i}=Nt(r.length,t.offset,t.length),o=nt(r,0n,n,i);t.onProgress?.(new O("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Kl=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:Wl(u),depth:o,size:BigInt(u.length),node:u}}},Ma=Kl;var Xl=async function(r){return(await Ze.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)}))},Ha=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Yl=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=B.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 y=xt({hashFn:Xl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}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=Ha(s.pos,o),u=Yl(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 y=l.Name.substring(0,o),c=l.Name.substring(o);return!(y!==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=$(f),Va(r,e,t,n,i)},ja=Va;function Zl(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=Zl;function Ql(r){return r[Symbol.asyncIterator]!=null}function eh(r,e){let t=0;if(Ql(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 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 qa=eh;function th(r){return r[Symbol.asyncIterator]!=null}function rh(r,e){let t=0;if(th(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 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 Tt=rh;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*it(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*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*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*y():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}},Dt=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 Pi=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 nh(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 nh(r,e){e=e??{};let t=e.onEnd,n=new Dt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Dt,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Dt,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((k,I)=>{b=()=>{I(new Pi)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}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 Ga(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 Ui=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 Ga(this.readNext.promise,t?.signal,t)}};function Wa(){return new Ui}function ih(r){return r[Symbol.asyncIterator]!=null}async function oh(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*sh(r){let e=new AbortController,t=Wa();oh(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*ah(r){for(let e of r)yield*e}function ch(...r){let e=[];for(let t of r)ih(t)||e.push(t);return e.length===r.length?ah(e):sh(r)}var Ka=ch;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Oi(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&&Oi(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++)Oi(t[n])&&(t[n]=fh(t[n]));return uh(...t)}var uh=(...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,Oi=r=>r==null?!1:r.sink!=null&&r.source!=null,fh=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 lh=(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 O("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,y=>Tt(y,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),y=>it(y,{ordered:!0,concurrency:u.blockReadConcurrency}),y=>qa(y,c=>c!=null))}return a},Ya=lh;var $i=ut(Qa(),1);var lr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Mi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},ec=r=>globalThis.DOMException===void 0?new Mi(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 Hi(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 y=new lr;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):(y.message=i??`Promise timed out after ${t} milliseconds`,l(y))},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 Vi(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 hr=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=Vi(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 dr=class extends $i.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:hr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#b(){return this.#r||this.#n<this.#u}get#_(){return this.#o<this.#l}#k(){this.#o--,this.#h(),this.emit("next")}#S(){this.#w(),this.#g(),this.#f=void 0}get#E(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#S()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#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.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Hi(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 lr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function rc(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=nt(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=B.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=nt(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,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&u.push({link:f,blockStart:n}),n=y,n>o)break}await Te(u,h=>Tt(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>it(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let c;switch(f.Hash.code){case j:c=$(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new dr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new O("unixfs:exporter:walk:file",{cid:f.Hash})),await rc(r,c,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var ph=(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}=Nt(h,u.offset,u.length);if(l===0n)return;let y=0n,c=l-f,d=dn();u.onProgress?.(new O("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(y+=BigInt(m.byteLength),y>c)throw d.end(),new qr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");y===c&&d.end(),u.onProgress?.(new O("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:c,fileSize:h})),yield m}if(y<c)throw new Gr("Traversed entire DAG but did not read enough bytes")}return a},ji=ph;var mh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new O("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=B.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=>Tt(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(u):null;if(y!=null&&y!==""){let c=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=$(c),o.onProgress?.(new O("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:nc(r,e,t,n,i,o)}}}),f=>it(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var ic=mh;var yh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,gh={raw:ji,file:ji,directory:Ya,"hamt-sharded-directory":ic,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},wh=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=$(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=B.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=yh(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 y=gh[f.type](r,h,f,t,i,o,s);if(y==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},oc=wh;var xh={[j]:oc,[Q]:Ma,[Na]:Ua,[La]:Oa,[li.code]:Ra,[Mo]:$a},sc=async(r,e,t,n,i,o,s)=>{let a=xh[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 bh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),_h=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=bh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new Vr(`Unknown path type ${r}`)};async function*qi(r,e,t={}){let{cid:n,toResolve:i}=_h(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(qi(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))}}var yc=ut(mc(),1),X=yc.default;function Ih(r,e){try{if(typeof r=="string"&&r.length>0)return Ah(r);if(typeof r=="number"&&isFinite(r))return e?.long?Nh(r):Ch(r);throw new Error("Value is not a string or number.")}catch(t){let n=Th(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function Ah(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 bn=Ih;function Ch(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 Nh(r){let e=Math.abs(r);return e>=864e5?xn(r,e,864e5,"day"):e>=36e5?xn(r,e,36e5,"hour"):e>=6e4?xn(r,e,6e4,"minute"):e>=1e3?xn(r,e,1e3,"second"):`${r} ms`}function xn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function Th(r){return typeof r=="object"&&r!==null&&"message"in r}function Wi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=bn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,c,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(g,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),c=y.length;for(l=0;l<c;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function 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 _n=Oh(),Dh=["#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 zh(){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 Lh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+bn(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 Fh=console.debug??console.log??(()=>{});function Ph(r){try{r?_n?.setItem("debug",r):_n?.removeItem("debug")}catch{}}function Uh(){let r;try{r=_n?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Oh(){try{return localStorage}catch{}}function Rh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var gc=Wi({formatArgs:Lh,save:Ph,load:Uh,useColors:zh,setupFormatters:Rh,colors:Dh,storage:_n,log:Fh});var re=gc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Oe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":Xt.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":wc(r.stack)??wc(r.message)??r.toString();function $h(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=$h(`${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 wc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Yi=ut(Or(),1);function Sn(r){function e(t){return t instanceof kn?t:new kn(t,r)}return e}var kn=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?Ge([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Ki(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Mh=[255,254,252,248,240,224,192,128],Hh=[1,3,7,15,31,63,127,255],Ki=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=Vh(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 Vh(r,e,t){let n=jh(e,t);return(r&n)>>>e}function jh(r,e){return Mh[r]&Hh[Math.min(e+r-1,7)]}var pr=BigInt(Ze.code),ot=8;async function Ft(r){return(await Ze.encode(r)).subarray(0,8).reverse()}var _c=ut(Or(),1);var ve=async(r,e,t)=>{t.codec==null&&(t.codec=M);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 Xi=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}},En=class extends Xi{_bucket;constructor(e,t){super(e,t),this._bucket=xt({hashFn:Ft,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=bc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of xc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*xc(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 g of xc(d,e,null,n))x=g;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(qh(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new B({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:pr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(P(h)),l=await ve(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:y}}function qh(r){return typeof r.flush=="function"}function bc(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=bc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?vn:Bn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?vn:Bn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,c=l.size;i.push({Name:y,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new B({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:pr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var vn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Bn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ji=R("helia:unixfs:commands:utils:hamt-utils"),In=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),kc=async(r,e,t)=>{let n=new En({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},An=async(r,e,t)=>{let n=B.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,ot));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 B({type:"hamt-sharded-directory",data:f,fanout:i,hashType:pr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(P(s));if(o=await ve(y,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?");Ji("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),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Cn=async(r,e,t,n)=>{let o=Sn(Ft)(U(e)),s=[];for(;;){let a=await t.get(r,n),u=$(a),h=new _c.default,f=await o.take(ot),l=In(f);s.push({prefix:l,children:h,node:u});let y;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)&&(y=d)}if(y==null){Ji("no link found with prefix %s for %s",l,e);break}let c=y.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=y.Hash,Ji("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function Nn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=B.unmarshal(r.Data),o;if(i.type==="directory")o=Gh(r);else if(i.type==="hamt-sharded-directory")o=await Sc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Gh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?Bn.bytes.byteLength:vn.bytes.byteLength;return e}async function Sc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!B.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);e+=await Sc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function Pt(r,e,t,n){if(r.node.Data==null)throw new L("Invalid parent passed to addLink");if(B.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),Xh(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Kh(r,e,t,n);if(await Nn(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Wh(o,t);o.cid=s.cid,o.node=$(await t.get(s.cid,n))}return o}var Wh=async(r,e)=>{if(r.node.Data==null)throw new L("Invalid parent passed to convertToShardedDirectory");let t=B.unmarshal(r.node.Data),n=await kc(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},Kh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new et;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=B.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}},Xh=async(r,e,t,n)=>{let{path:i,hash:o}=await Cn(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 et;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)),y=s.node.Links.splice(l,1)[0],c=(y.Name??"").substring(2),m=Sn(Ft)(U(c));for(let x=0;x<i.length;x++)await m.take(ot);for(;;){let x=await m.take(ot),g=In(x);y.Name=`${g}${c}`;let w=await o.take(ot),b=In(w);if(g===b){let I=new Yi.default;I.set(w,!0),i.push({prefix:b,children:I,node:{Links:[]}});continue}let k=new Yi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else 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 An(i,t,n)};async function qe(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new Ne(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ut(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:Jh(i.node),Hash:r}}function Jh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Yh=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 os(qi(i,t,n));if(o.length===0)throw new Le("Could not find path in directory");return Yh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ot(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([qe(o.cid,t,n),Ut(i.cid,i.name,t,n)]);r=(await Pt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Zh=X.bind({ignoreUndefined:!0}),Qh={};async function*Ec(r,e,t={}){let n=Zh(Qh,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 Mr;if(o.content==null)throw new bt;yield*o.content(n)}var ed=X.bind({ignoreUndefined:!0}),td=R("helia:unixfs:chmod"),rd={recursive:!1,shardSplitThresholdBytes:262144};async function vc(r,e,t,n={}){let i=ed(rd,n),o=await ze(r,i.path,t,n);if(td("chmod %c %d",o.cid,e),i.recursive){let y=await Te(async function*(){for await(let c of yn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new B({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=>Qe(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await ve(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new ee(`${b} had no data`);let k=B.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(y==null)throw new He(`Could not chmod ${o.cid.toString()}`);return Ot(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new B({type:"file",data:s});else{let y=$(s);if(y.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=y.Links,a=B.unmarshal(y.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),Ot(l,o,t,i)}var nd=X.bind({ignoreUndefined:!0}),id=R("helia:unixfs:cp"),od={force:!1,shardSplitThresholdBytes:262144};async function Bc(r,e,t,n,i={}){let o=nd(od,i);if(t.includes("/"))throw new L("Name must not have slashes");let[s,a]=await Promise.all([qe(e,n,o),Ut(r,t,n,o)]);return id('Adding %c as "%s" to %c',r,t,e),(await Pt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var sd=X.bind({ignoreUndefined:!0}),ad={};async function*Ic(r,e,t={}){let n=sd(ad,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 bt;if(o.type!=="directory")throw new Ne;yield*o.content({offset:t.offset,length:t.length})}var cd=X.bind({ignoreUndefined:!0}),Ac=R("helia:unixfs:mkdir"),ud={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function Cc(r,e,t,n={}){let i=cd(ud,n);if(e.includes("/"))throw new L("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new Ne(`${r.toString()} was not a UnixFS directory`);Ac("creating %s",e);let a={Data:new B({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,y]=await Promise.all([qe(r,t,i),Ut(f,e,t,i)]);return Ac("adding empty dir called %s to %c",e,r),(await Pt(l,y,t,{...i,allowOverwriting:i.force})).cid}var Dn=R("helia:unixfs:utils:remove-link");async function Nc(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(B.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Dn(`removing ${e} from sharded directory`);let o=await ld(r,e,t,n);return await Nn(o.node,t,n.shardSplitThresholdBytes,n)?o:(Dn("converting shard to flat directory %c",r.cid),hd(o,t,n))}return Dn(`removing link ${e} regular directory`),fd(r,e,t,n)}var fd=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 Dn(`Updated regular directory ${o}`),{node:r.node,cid:o}},ld=async(r,e,t,n)=>{let{path:i}=await Cn(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(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return An(i,t,n)},hd=async(r,e,t)=>{if(r.node.Data==null)throw new L("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=B.unmarshal(r.node.Data);n.Data=new B({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await ve(s,e,{codec:M,cidVersion:r.cid.version,signal:t.signal}),node:n}};var dd=X.bind({ignoreUndefined:!0}),pd=R("helia:unixfs:rm"),md={shardSplitThresholdBytes:262144};async function Tc(r,e,t,n={}){let i=dd(md,n);if(e.includes("/"))throw new L("Name must not have slashes");let o=await qe(r,t,i);return pd("Removing %s from %c",e,r),(await Nc(o,e,t,{...i,cidVersion:r.version})).cid}function Dc(r,e="utf8"){let t=Tr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Zi={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},zc={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},Lc=new globalThis.TextEncoder;function yd(r,e){let t=Zi[e],n=zc[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function gd(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Zi[e],i=zc[e],o=r;for(;o.length>0;){let s=Lc.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 Qi(r,{size:e=32,utf8Buffer:t}={}){if(!Zi[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 gd(r,e,t);r=Lc.encode(r)}return yd(r,e)}var mr={hash:r=>Number(Qi(r,{size:32})),hashV:(r,e)=>wd(mr.hash(r,e))};function wd(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),U(e,"base16")}var Fc=64,Be=class{fp;h;seed;constructor(e,t,n,i=2){if(i>Fc)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?vr(this.fp,e.fp):!1}};function st(r,e){return Math.floor(Math.random()*(e-r))+r}var at=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=st(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 xd=500,yr=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??mr,this.seed=e.seed??st(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=U(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 at(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new at(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[st(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new at(this.bucketSize));for(let a=0;a<xd;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 at(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=U(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=U(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 gr=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??mr,this.seed=e.seed??st(0,Math.pow(2,10)),this.filterSeries=[new yr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=U(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 yr({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=U(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=U(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 Pc=1877,zn=1604,bd=X.bind({ignoreUndefined:!0}),_d=R("helia:unixfs:stat"),kd={};async function Uc(r,e,t={}){let n=bd(kd,t),i=await ze(r,t.path,e,n);_d("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?Bd(o):vd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?Ed(o,e,t.filter??new gr({filterSize:1024}),t):Sd(o);throw new Ce}function Sd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?Pc:zn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function Ed(r,e,t,n){let i=await Oc(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()?Pc:zn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function vd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:zn,mtime:void 0,size:BigInt(r.node.byteLength)}}function Bd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:zn,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 Oc(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=$(a),h;if(u.Data!=null&&(h=B.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Oc(f.Hash,e,Id(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 He(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function Id(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 Ad=X.bind({ignoreUndefined:!0}),Cd=R("helia:unixfs:touch"),Nd={recursive:!1,shardSplitThresholdBytes:262144};async function Rc(r,e,t={}){let n=Ad(Nd,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(Cd("touch %c %o",i.cid,o),n.recursive){let y=await Te(async function*(){for await(let c of yn(i.cid,e)){let d,m;if(c.type==="raw")d=new B({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=>Qe(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await ve(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new ee(`${b} had no data`);let k=B.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(y==null)throw new He(`Could not chmod ${i.cid.toString()}`);return Ot(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new B({data:s});else{let y=$(s);if(u=y.Links,y.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=B.unmarshal(y.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),Ot(l,i,e,n)}var Ln=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Hr(e,this.components.blockstore,t)}async addBytes(e,t={}){return Es(e,this.components.blockstore,t)}async addByteStream(e,t={}){return vs(e,this.components.blockstore,t)}async addFile(e,t={}){return Bs(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Is(e,this.components.blockstore,t)}async*cat(e,t={}){yield*Ec(e,this.components.blockstore,t)}async chmod(e,t,n={}){return vc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return Bc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*Ic(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return Cc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return Tc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Uc(e,this.components.blockstore,t)}async touch(e,t={}){return Rc(e,this.components.blockstore,t)}};function $c(r){return new Ln(r)}var Pe="/",Mc=new TextEncoder().encode(Pe),Fn=Mc[0],wr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=U(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==Fn)throw new Error("Invalid key")}toString(e="utf8"){return Dc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Pe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Mc),this._buf[0]!==Fn){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Fn,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Fn;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Pe).slice(1)}type(){return Td(this.baseNamespace())}name(){return Dd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Pe)||(e+=Pe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Pe):new r(e.slice(0,-1).join(Pe))}child(e){return this.toString()===Pe?e:e.toString()===Pe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...zd(e.map(t=>t.namespaces()))])}};function Td(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function Dd(r){let e=r.split(":");return e[e.length-1]}function zd(r){return[].concat(...r)}function Pn(r){return r.split("/").pop()??""}var Ld=R("helia:mfs"),eo=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new wr(t.key??"/locals/filesroot"),this.unixfs=$c(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=A.decode(e)}catch(e){if(e.name!=="NotFoundError")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addBytes(e,n);await this.cp(i,t,n),n?.mode!=null&&await this.chmod(t,n.mode,n),n?.mtime!=null&&await this.touch(t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addByteStream(e,n);await this.cp(i,t,n),n?.mode!=null&&await this.chmod(t,n.mode,n),n?.mtime!=null&&await this.touch(t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=Pn(t),a=t.substring(0,t.length-`/${s}`.length),u=[{cid:i,name:""}];a!==""&&(u=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),u.push({cid:e,name:s}),this.root=await this.#n(u,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=Pn(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:Pn(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new L("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Le;return this.unixfs.stat(o.cid,t)}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Le;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new L("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(Ld.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new B({type:"directory"})})}else throw new Le(`${t} does not exist`)}}let u=o[o.length-1];if(n.finalSegmentMustBeDirectory&&u.unixfs?.isDirectory()!==!0)throw new Ne(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new L("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Le}async#s(e,t={}){if(await this.#c(e,t))throw new et}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function Fd(r,e={}){return new eo(r,e)}return Wc(Pd);})();
|
|
2
|
+
"use strict";var HeliaMfs=(()=>{var Fc=Object.create;var kr=Object.defineProperty;var Uc=Object.getOwnPropertyDescriptor;var Oc=Object.getOwnPropertyNames;var Rc=Object.getPrototypeOf,$c=Object.prototype.hasOwnProperty;var Sr=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)kr(r,t,{get:e[t],enumerable:!0})},to=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oc(e))!$c.call(r,i)&&i!==t&&kr(r,i,{get:()=>e[i],enumerable:!(n=Uc(e,i))||n.enumerable});return r};var Ot=(r,e,t)=>(t=r!=null?Fc(Rc(r)):{},to(e||!r||!r.__esModule?kr(t,"default",{value:r,enumerable:!0}):t,r)),Mc=r=>to(kr({},"__esModule",{value:!0}),r);var ss=Sr((nr,Ur)=>{(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 y(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,g=d,w=0,b=3432918353,k=461845907,I=0;I<x;I=I+4)w=c[I]|c[I+1]<<8|c[I+2]<<16|c[I+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=c[I+2]<<16;case 2:w^=c[I+1]<<8;case 1:w^=c[I],w=i(w,b),w=o(w,15),w=i(w,k),g^=w}return g^=c.length,g=s(g),g>>>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,g=d,w=d,b=d,k=d,I=0,C=0,E=0,D=0,ye=597399067,xr=2869860233,br=951274213,_r=2716044179,N=0;N<x;N=N+16)I=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,I=i(I,ye),I=o(I,15),I=i(I,xr),g^=I,g=o(g,19),g+=w,g=i(g,5)+1444728091,C=i(C,xr),C=o(C,16),C=i(C,br),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,br),E=o(E,17),E=i(E,_r),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,_r),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=g,k=i(k,5)+850148119;switch(I=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,_r),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,br),E=o(E,17),E=i(E,_r),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,xr),C=o(C,16),C=i(C,br),w^=C;case 4:I^=c[N+3]<<24;case 3:I^=c[N+2]<<16;case 2:I^=c[N+1]<<8;case 1:I^=c[N],I=i(I,ye),I=o(I,15),I=i(I,xr),g^=I}return g^=c.length,w^=c.length,b^=c.length,k^=c.length,g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,g=s(g),w=s(w),b=s(b),k=s(k),g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,g=[0,d],w=[0,d],b=[0,0],k=[0,0],I=[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,I),b=h(b,31),b=u(b,C),g=l(g,b),g=h(g,27),g=a(g,w),g=a(u(g,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,I),w=l(w,k),w=h(w,31),w=a(w,g),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,I),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,I),b=h(b,31),b=u(b,C),g=l(g,b)}return g=l(g,[0,c.length]),w=l(w,[0,c.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof nr<"u"?(typeof Ur<"u"&&Ur.exports&&(nr=Ur.exports=t),nr.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)})(nr)});var cs=Sr((x0,as)=>{as.exports=ss()});var Rr=Sr((v0,fs)=>{"use strict";fs.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(Uf,0),u=~(4294967295<<o+1),h=us(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(Of),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(Rf)}};function Uf(r,e){return r+us(e)}function us(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Of(r,e){return r[0]-e[0]}function Rf(r){return r[1]}});var rc=Sr((Kw,$i)=>{"use strict";var hh=Object.prototype.hasOwnProperty,Y="~";function fr(){}Object.create&&(fr.prototype=Object.create(null),new fr().__proto__||(Y=!1));function dh(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function tc(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new dh(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 gn(r,e){--r._eventsCount===0?r._events=new fr:delete r._events[e]}function X(){this._events=new fr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)hh.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 y=u.length,c;for(l=0;l<y;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 tc(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return tc(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 gn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&gn(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:gn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&gn(this,t)):(this._events=new fr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof $i<"u"&&($i.exports=X)});var Td={};G(Td,{mfs:()=>Nd});function Hc(r){return r[Symbol.asyncIterator]!=null}function Vc(r){if(Hc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var Er=Vc;function jc(r){return r[Symbol.asyncIterator]!=null}function qc(r,e=1){return e=Number(e),jc(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 Br=qc;async function*Rt(r,e=1){for await(let t of Br(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 Ge(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 vr(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 no=Symbol.for("@achingbrain/uint8arraylist");function ro(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 Ir(r){return!!r?.[no]}var ct=class r{bufs;length;[no]=!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(Ir(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(Ir(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=ro(this.bufs,e);return t.buf[t.index]}set(e,t){let n=ro(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(Ir(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 Ge(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:Ge(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(!Ir(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 y=h;y>=0;y--){let c=this.get(l+y);if(n[y]!==c){f=Math.max(1,y-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(!vr(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 Gc=262144,$t=(r={})=>{let e=r.chunkSize??Gc;return async function*(n){let i=new ct,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 ct,o=0;else{let u=new ct;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var M={};G(M,{code:()=>j,createLink:()=>Eo,createNode:()=>So,decode:()=>$,encode:()=>T,name:()=>qu,prepare:()=>F,validate:()=>Yn});var jn={};G(jn,{base32:()=>Oe,base32hex:()=>ou,base32hexpad:()=>au,base32hexpadupper:()=>cu,base32hexupper:()=>su,base32pad:()=>nu,base32padupper:()=>iu,base32upper:()=>ru,base32z:()=>uu});var ut={};G(ut,{coerce:()=>le,empty:()=>io,equals:()=>Un,fromHex:()=>Kc,fromString:()=>On,isBinary:()=>Xc,toHex:()=>Wc,toString:()=>Rn});var io=new Uint8Array(0);function Wc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function Kc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):io}function Un(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 Xc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function On(r){return new TextEncoder().encode(r)}function Rn(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,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,k=new Uint8Array(b);g!==w;){for(var I=d[g],C=0,E=b-1;(I!==0||C<x)&&E!==-1;E--,C++)I+=256*k[E]>>>0,k[E]=I%a>>>0,I=I/a>>>0;if(I!==0)throw new Error("Non-zero carry");x=C,g++}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 y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===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 I=0,C=w-1;(k!==0||I<g)&&C!==-1;C--,I++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=I,m++}if(d[m]!==" "){for(var E=w-g;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=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:c}}var Yc=Jc,Zc=Yc,oo=Zc;var $n=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")}},Mn=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 so(this,e)}},Hn=class{decoders;constructor(e){this.decoders=e}or(e){return so(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 so(r,e){return new Hn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Vn=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 $n(e,t,n),this.decoder=new Mn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ft({name:r,prefix:e,encode:t,decode:n}){return new Vn(r,e,t,n)}function Ue({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=oo(t,r);return ft({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Qc(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 eu(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 tu(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function P({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=tu(n);return ft({prefix:e,name:r,encode(o){return eu(o,n,t)},decode(o){return Qc(o,i,t,r)}})}var Oe=P({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),ru=P({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),nu=P({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),iu=P({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ou=P({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),su=P({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),au=P({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),cu=P({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),uu=P({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var qn={};G(qn,{base36:()=>Mt,base36upper:()=>fu});var Mt=Ue({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),fu=Ue({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Gn={};G(Gn,{base58btc:()=>he,base58flickr:()=>lu});var he=Ue({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),lu=Ue({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var hu=uo,ao=128,du=127,pu=~du,mu=Math.pow(2,31);function uo(r,e,t){e=e||[],t=t||0;for(var n=t;r>=mu;)e[t++]=r&255|ao,r/=128;for(;r&pu;)e[t++]=r&255|ao,r>>>=7;return e[t]=r|0,uo.bytes=t-n+1,e}var yu=Wn,gu=128,co=127;function Wn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Wn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&co)<<i:(s&co)*Math.pow(2,i),i+=7}while(s>=gu);return Wn.bytes=o-n,t}var wu=Math.pow(2,7),xu=Math.pow(2,14),bu=Math.pow(2,21),_u=Math.pow(2,28),ku=Math.pow(2,35),Su=Math.pow(2,42),Eu=Math.pow(2,49),Bu=Math.pow(2,56),vu=Math.pow(2,63),Iu=function(r){return r<wu?1:r<xu?2:r<bu?3:r<_u?4:r<ku?5:r<Su?6:r<Eu?7:r<Bu?8:r<vu?9:10},Au={encode:hu,decode:yu,encodingLength:Iu},Cu=Au,Ht=Cu;function Vt(r,e=0){return[Ht.decode(r,e),Ht.decode.bytes]}function lt(r,e,t=0){return Ht.encode(r,e,t),e}function ht(r){return Ht.encodingLength(r)}function We(r,e){let t=e.byteLength,n=ht(r),i=n+ht(t),o=new Uint8Array(i+t);return lt(r,o,0),lt(t,o,n),o.set(e,i),new dt(r,t,e,o)}function Cr(r){let e=le(r),[t,n]=Vt(e),[i,o]=Vt(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new dt(t,i,s,e)}function fo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Un(r.bytes,t.bytes)}}var dt=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function lo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Tu(t,Kn(r),e??he.encoder);default:return Du(t,Kn(r),e??Oe.encoder)}}var ho=new WeakMap;function Kn(r){let e=ho.get(r);if(e==null){let t=new Map;return ho.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!==jt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==zu)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=We(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&&fo(e.multihash,n.multihash)}toString(e){return lo(this,e)}toJSON(){return{"/":lo(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??po(n,i,o.bytes))}else if(t[Lu]===!0){let{version:n,multihash:i,code:o}=t,s=Cr(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!==jt)throw new Error(`Version 0 CID must use dag-pb (code: ${jt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=po(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,jt,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 dt(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Vt(e.subarray(t));return t+=y,l},i=n(),o=jt;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]=Nu(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 Kn(o).set(n,e),o}};function Nu(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 Oe.prefix:{let t=e??Oe;return[Oe.prefix,t.decode(r)]}case Mt.prefix:{let t=e??Mt;return[Mt.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 Tu(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 Du(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 jt=112,zu=18;function po(r,e,t){let n=ht(r),i=n+ht(e),o=new Uint8Array(i+t.byteLength);return lt(r,o,0),lt(e,o,n),o.set(t,i),o}var Lu=Symbol.for("@ipld/js-cid/CID");var Pu=new TextDecoder;function Xn(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 Nr(r,e){let t;[t,e]=Xn(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 mo(r,e){let t;return[t,e]=Xn(r,e),[t&7,t>>3,e]}function Fu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=mo(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]=Nr(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]=Nr(r,n),e.Name=Pu.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]=Xn(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 yo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=mo(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]=Nr(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]=Nr(r,t),n.push(Fu(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 wo=new TextEncoder,go=2**32,Uu=2**31;function Ou(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=qt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=wo.encode(r.Name);t-=n.length,e.set(n,t),t=qt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=qt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function xo(r){let e=$u(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=qt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Ou(r.Links[i],t.subarray(0,n));n-=o,n=qt(t,n,o)-1,t[n]=18}return t}function Ru(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+mt(t)}if(typeof r.Name=="string"){let t=wo.encode(r.Name).length;e+=1+t+mt(t)}return typeof r.Tsize=="number"&&(e+=1+mt(r.Tsize)),e}function $u(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+mt(t)}if(r.Links)for(let t of r.Links){let n=Ru(t);e+=1+n+mt(n)}return e}function qt(r,e,t){e-=mt(t);let n=e;for(;t>=Uu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function mt(r){return r%2===0&&r++,Math.floor((Mu(r)+6)/7)}function Mu(r){let e=0;return r>=go&&(r=Math.floor(r/go),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Hu[r]}var Hu=[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 Vu=["Data","Links"],ju=["Hash","Name","Tsize"],Jn=new TextEncoder;function _o(r,e){if(r===e)return 0;let t=r.Name?Jn.encode(r.Name):[],n=e.Name?Jn.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 bo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function ko(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=Jn.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(ko),e.Links.sort(_o);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Yn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!bo(r,Vu))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(!bo(t,ju))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&&_o(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function So(r,e=[]){return F({Data:r,Links:e})}function Eo(r,e,t){return ko({Hash:t,Name:r,Tsize:e})}function Bo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var qu="dag-pb",j=112;function T(r){Yn(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),xo(e)}function $(r){let e=Bo(r),t=yo(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 Gt=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 Gu=Math.pow(2,7),Wu=Math.pow(2,14),Ku=Math.pow(2,21),vo=Math.pow(2,28),Io=Math.pow(2,35),Ao=Math.pow(2,42),Co=Math.pow(2,49),J=128,Re=127;function Wt(r){if(r<Gu)return 1;if(r<Wu)return 2;if(r<Ku)return 3;if(r<vo)return 4;if(r<Io)return 5;if(r<Ao)return 6;if(r<Co)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function No(r,e,t=0){switch(Wt(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 To(r,e){let t=r[e],n=0;if(n+=t&Re,t<J||(t=r[e+1],n+=(t&Re)<<7,t<J)||(t=r[e+2],n+=(t&Re)<<14,t<J)||(t=r[e+3],n+=(t&Re)<<21,t<J)||(t=r[e+4],n+=(t&Re)*vo,t<J)||(t=r[e+5],n+=(t&Re)*Io,t<J)||(t=r[e+6],n+=(t&Re)*Ao,t<J)||(t=r[e+7],n+=(t&Re)*Co,t<J))return n;throw new RangeError("Could not decode varint")}var Zn=new Float32Array([-0]),$e=new Uint8Array(Zn.buffer);function Do(r,e,t){Zn[0]=r,e[t]=$e[0],e[t+1]=$e[1],e[t+2]=$e[2],e[t+3]=$e[3]}function zo(r,e){return $e[0]=r[e],$e[1]=r[e+1],$e[2]=r[e+2],$e[3]=r[e+3],Zn[0]}var Qn=new Float64Array([-0]),W=new Uint8Array(Qn.buffer);function Lo(r,e,t){Qn[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 Po(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],Qn[0]}var Xu=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 Ke;if(e<Xu&&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>Fo&&(i=0n,++n>Fo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ke;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ke}},Ke=new ie(0,0);Ke.toBigInt=function(){return 0n};Ke.zzEncode=Ke.zzDecode=function(){return this};Ke.length=function(){return 1};var Fo=4294967296n;function Uo(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 Oo(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 ei(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 Tr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var ti=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 Tr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Tr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=zo(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=Po(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 Oo(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=Tr(this.buf,this.pos+=4),t=Tr(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=To(this.buf,this.pos);return this.pos+=Wt(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 ri(r){return new ti(r instanceof Uint8Array?r:r.subarray())}function Kt(r,e,t){let n=ri(r);return e.decode(n,void 0,t)}var ni={};G(ni,{base10:()=>Yu});var Yu=Ue({prefix:"9",name:"base10",alphabet:"0123456789"});var ii={};G(ii,{base16:()=>Zu,base16upper:()=>Qu});var Zu=P({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Qu=P({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var oi={};G(oi,{base2:()=>ef});var ef=P({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var si={};G(si,{base256emoji:()=>sf});var $o=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}"),tf=$o.reduce((r,e,t)=>(r[t]=e,r),[]),rf=$o.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function nf(r){return r.reduce((e,t)=>(e+=tf[t],e),"")}function of(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=rf[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var sf=ft({prefix:"\u{1F680}",name:"base256emoji",encode:nf,decode:of});var ai={};G(ai,{base64:()=>Xt,base64pad:()=>af,base64url:()=>cf,base64urlpad:()=>uf});var Xt=P({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),af=P({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),cf=P({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),uf=P({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ci={};G(ci,{base8:()=>ff});var ff=P({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ui={};G(ui,{identity:()=>lf});var lf=ft({prefix:"\0",name:"identity",encode:r=>Rn(r),decode:r=>On(r)});var Rp=new TextEncoder,hf=new TextDecoder;var Mo=512;function Ho(r){return JSON.parse(hf.decode(r))}var Ie={};G(Ie,{code:()=>Q,decode:()=>mf,encode:()=>pf,name:()=>df});var df="raw",Q=85;function pf(r){return le(r)}function mf(r){return le(r)}var hi={};G(hi,{identity:()=>li});var Vo=0,yf="identity",jo=le;function gf(r){return We(Vo,jo(r))}var li={code:Vo,name:yf,encode:jo,digest:gf};var pi={};G(pi,{sha256:()=>oe,sha512:()=>wf});function Xe({name:r,code:e,encode:t}){return new di(r,e,t)}var di=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?We(this.code,t):t.then(n=>We(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Go(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=Xe({name:"sha2-256",code:18,encode:Go("SHA-256")}),wf=Xe({name:"sha2-512",code:19,encode:Go("SHA-512")});var mi={...ui,...oi,...ci,...ni,...ii,...jn,...qn,...Gn,...ai,...si},Zp={...pi,...hi};function Ko(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Wo=Ko("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),yi=Ko("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}),xf={utf8:Wo,"utf-8":Wo,hex:mi.base16,latin1:yi,ascii:yi,binary:yi,...mi},Dr=xf;function U(r,e="utf8"){let t=Dr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function gi(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 Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function wi(){}var bi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},bf=gi();function _f(r){return globalThis.Buffer!=null?ne(r):bf(r)}var Yt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(wi,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Je(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new _i((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(zr,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(zr,t.length(),t)}uint64Number(e){return this._push(No,Wt(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(zr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(zr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(xi,1,e?1:0)}fixed32(e){return this._push(Jt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Jt,4,t.lo)._push(Jt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Jt,4,t.lo)._push(Jt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Do,4,e)}double(e){return this._push(Lo,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(xi,1,0):this.uint32(t)._push(Sf,t,e)}string(e){let t=Uo(e);return t!==0?this.uint32(t)._push(ei,t,e):this._push(xi,1,0)}fork(){return this.states=new bi(this),this.head=this.tail=new Je(wi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Je(wi,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=_f(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function xi(r,e,t){e[t]=r&255}function kf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var _i=class extends Je{next;constructor(e,t){super(kf,e,t),this.next=void 0}};function zr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Jt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function Sf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Yt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Ef,e,r),this},Yt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(Bf,e,r),this});function Ef(r,e,t){e.set(r,t)}function Bf(r,e,t){r.length<40?ei(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(U(r),t)}function ki(){return new Yt}function Zt(r,e){let t=ki();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var yt;(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"})(yt||(yt={}));function Lr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function Si(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 Lr("enum",yt.VARINT,t,n)}function Qt(r,e){return Lr("message",yt.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=()=>Si(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Qt((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),Pr.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=Pr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Zt(i,r.codec()),r.decode=i=>Kt(i,r.codec())})(xe||(xe={}));var Pr;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((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=>Zt(t,r.codec()),r.decode=t=>Kt(t,r.codec())})(Pr||(Pr={}));var Xo;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((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=>Zt(t,r.codec()),r.decode=t=>Kt(t,r.codec())})(Xo||(Xo={}));var Jo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},vf=["directory","hamt-sharded-directory"],Yo=parseInt("0644",8),Zo=parseInt("0755",8),v=class r{static unmarshal(e){let t=xe.decode(e),n=new r({type:Jo[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(Jo).includes(t))throw new Gt("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()?Zo:Yo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return vf.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 Gt(`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===Yo&&!this.isDirectory()&&(n=void 0),n===Zo&&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 O=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=M);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Qo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:M,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ie,a.cidVersion=1):(s=new v({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 O("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var Fr=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 Me=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 es=async(r,e,t)=>{let n=new v({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*If(r,e,t){let n=-1,i;for await(let o of Rt(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 ts(r){return r.single===!0}var Af=(r,e,t)=>async function(i){if(i.length===1&&ts(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return ts(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new v({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new O("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new v({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===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 O("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}},rs=async(r,e,t)=>t.layout(If(r,e,t),Af(r,e,t));function Cf(r){return Symbol.iterator in r}function Nf(r){return Symbol.asyncIterator in r}function Tf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Cf(r))return async function*(){yield*r}();if(Nf(r))return r}catch{throw new Me("Content was invalid")}throw new Me("Content was invalid")}function ns(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("/")),Df(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(Tf(i.content)))){let h=BigInt(u.byteLength);a+=h,r.onProgress?.(new O("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield u}}(),originalPath:o};yield async()=>rs(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>es(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Df(r){return r.content!=null}var is=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Me("Content was invalid");if(typeof t=="string"||t instanceof String)yield U(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Me("Content was invalid")}};var zf=174;function er(r){let e=r?.maxChildrenPerNode??zf;return async function t(n,i){let o=[];for await(let s of Br(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Lf(r){return r[Symbol.asyncIterator]!=null}function Pf(r){if(Lf(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 os=Pf;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}},tr=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),rr=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=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?rr.bytes.byteLength:tr.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 v({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 Or=Ot(cs(),1);function Ff(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 k0=Xe({name:"murmur3-32",code:35,encode:r=>Ff(Or.default.x86.hash32(r))}),Ze=Xe({name:"murmur3-128",code:34,encode:r=>ut.fromHex(Or.default.x64.hash128(r))}),S0=Xe({name:"murmur3-x64-64",code:34,encode:r=>ut.fromHex(Or.default.x64.hash128(r)).subarray(0,8)});var ls=Ot(Rr(),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 ls.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 hs(this,e,t)}toJSON(){return this.serialize(Mf,Hf)}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"?U(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($f);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 $f(r){return!!r}function Mf(r,e){return r.key}function Hf(r){return r}async function hs(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await hs(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Vf=[255,254,252,248,240,224,192,128],jf=[1,3,7,15,31,63,127,255],$r=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=qf(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 qf(r,e,t){let n=Gf(e,t);return(r&n)>>>e}function Gf(r,e){return Vf[r]&jf[Math.min(e+r-1,7)]}function ds(r){function e(t){return t instanceof Mr?t:new Mr(t,r)}return e}var Mr=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?Ge([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new $r(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function gt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:ds(r.hashFn)};return new se(e)}async function Wf(r){return(await Ze.encode(r)).slice(0,8).reverse()}var ps=BigInt(34),Kf=8,Ei=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=gt({hashFn:Wf,bits:t.shardFanoutBits??Kf})}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=gs(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ys(this._bucket,e,this,this.options))yield{...t,path:this.path}}},ms=Ei;async function*ys(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 g;for await(let w of ys(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(Xf(m.value)){let g=m.value,w;for await(let k of g.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:ps,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),y=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:c}}function Xf(r){return typeof r.flush=="function"}function gs(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 y=gs(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?tr:rr})}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?tr:rr})}else{let y=f.value;if(y.cid==null)continue;let c=l+f.key,d=y.size;o.push({Name:c,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ps,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function Bi(r,e,t,n){let i=e;e instanceof Ye&&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 ms({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 ws=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Yf(r,e,t){let n=ws(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 Ye({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*xs(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function bs(r){return async function*(t,n){let i=new Ye({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await Yf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*xs(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*xs(a.child,n))}}async function*Qe(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,y=t.reduceSingleLeafToSelf??!0,c=t.chunker??$t(),d=t.chunkValidator??is(),m=t.dagBuilder??ns({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??er(),bufferImporter:t.bufferImporter??Qo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??bs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Rt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function _s(r,e,t={}){let n=await Er(Qe([r],e,t));if(n==null)throw new Fr("Nothing imported");return n}async function ks(r,e,t={}){return _s({content:r},e,t)}async function Ss(r,e,t={}){return _s({content:r},e,t)}function Zf(r){return r[Symbol.asyncIterator]!=null}function Qf(r){if(Zf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var _e=Qf;var 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")}},He=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},et=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},wt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Hr=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ne=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},L=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var ir={cidVersion:1,rawLeaves:!0,layout:er({maxChildrenPerNode:1024}),chunker:$t({chunkSize:1048576})};async function*Vr(r,e,t={}){yield*Qe(r,e,{...ir,...t})}async function Es(r,e,t={}){let{cid:n}=await ks(r,e,{...ir,...t});return n}async function Bs(r,e,t={}){let{cid:n}=await Ss(r,e,{...ir,...t});return n}async function vs(r,e,t={}){if(r.path==null)throw new L("path is required");if(r.content==null)throw new L("content is required");let n=await _e(Vr([r],e,{...ir,...t,wrapWithDirectory:!0}));if(n==null)throw new L("Nothing imported");return n.cid}async function Is(r,e,t={}){if(r.content!=null)throw new L("Directories cannot have content, use addFile instead");let i=await(r.path==null?Er:_e)(Vr([{...r,path:r.path??"-"}],e,{...ir,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new L("Nothing imported");return i.cid}function xt(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:Cs}=Object.prototype,{propertyIsEnumerable:el}=Object,bt=(r,e,t)=>{Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})},tl=void 0,As={concatArrays:!1,ignoreUndefined:!1},jr=r=>{let e=[];for(let t in r)Cs.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)el.call(r,n)&&e.push(n)}return e};function _t(r){return Array.isArray(r)?rl(r):xt(r)?nl(r):r}function rl(r){let e=r.slice(0,0);return jr(r).forEach(t=>{bt(e,t,_t(r[t]))}),e}function nl(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return jr(r).forEach(t=>{bt(e,t,_t(r[t]))}),e}var Ns=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?bt(r,i,vi(r[i],e[i],n)):bt(r,i,_t(e[i])))}),r),il=(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++)Cs.call(o,a)&&(s.push(String(a)),o===r?bt(n,i++,o[a]):bt(n,i++,_t(o[a])));n=Ns(n,o,jr(o).filter(a=>!s.includes(a)),t)}),n};function vi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?il(r,e,t):!xt(e)||!xt(r)?_t(e):Ns(r,e,jr(e),t)}function K(...r){let e=vi(_t(As),this!==tl&&this||{},As),t={_:{}};for(let n of r)if(n!==void 0){if(!xt(n))throw new TypeError("`"+n+"` is not an Option Object");t=vi(t,{_:n},e)}return t._}var qr=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)}},Gr=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)}},Wr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Kr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},Xr=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)}},tt=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 ol=["string","number","bigint","symbol"],sl=["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 Ts(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(ol.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(al(r))return"Buffer";let t=cl(r);return t||"Object"}function al(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function cl(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(sl.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 kt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",ul=new TextDecoder,fl=new TextEncoder;function Jr(r){return kt&&globalThis.Buffer.isBuffer(r)}function Yr(r){return r instanceof Uint8Array?Jr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Ps=kt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):zs(r,e,t):(r,e,t)=>t-e>64?ul.decode(r.subarray(e,t)):zs(r,e,t),Zr=kt?r=>r.length>64?globalThis.Buffer.from(r):Ds(r):r=>r.length>64?fl.encode(r):Ds(r);var St=kt?(r,e,t)=>Jr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Fs=kt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Yr(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},Us=kt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Os(r,e){if(Jr(r)&&Jr(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 Ds(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 zs(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 Ii(n)}var Ls=4096;function Ii(r){let e=r.length;if(e<=Ls)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ls));return t}var ll=256,Qr=class{constructor(e=ll){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=Us(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=St(n,0,this.cursor)}else t=Fs(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",Et="CBOR encode error:",or=[];or[23]=1;or[24]=2;or[25]=3;or[26]=5;or[27]=9;function Pe(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){Pe(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){Pe(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){Pe(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){Pe(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 Rs(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function $s(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function Ms(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function Hs(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(`${B} 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 Vs(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function js(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function qs(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var Ai=BigInt(-1),Gs=BigInt(1);function Ws(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,Ai-BigInt(i),9)}function en(r,e){let t=e.value,n=typeof t=="bigint"?t*Ai-Gs:t*-1-1;q(r,e.type.majorEncoded,n)}en.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Ai-Gs:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};en.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function sr(r,e,t,n){Pe(r,e,t+n);let i=St(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Ks(r,e,t,n){return sr(r,e,1,t)}function Xs(r,e,t,n){return sr(r,e,2,ae(r,e+1,n))}function Js(r,e,t,n){return sr(r,e,3,ce(r,e+1,n))}function Ys(r,e,t,n){return sr(r,e,5,ue(r,e+1,n))}function Zs(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 sr(r,e,9,i)}function tn(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Zr(r.value):r.value),r.encodedBytes}function Bt(r,e){let t=tn(e);q(r,e.type.majorEncoded,t.length),r.push(t)}Bt.encodedSize=function(e){let t=tn(e);return q.encodedSize(t.length)+t.length};Bt.compareTokens=function(e,t){return dl(tn(e),tn(t))};function dl(r,e){return r.length<e.length?-1:r.length>e.length?1:Os(r,e)}function ar(r,e,t,n,i){let o=t+n;Pe(r,e,o);let s=new _(p.string,Ps(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=St(r,e+t,e+o)),s}function Qs(r,e,t,n){return ar(r,e,1,t,n)}function ea(r,e,t,n){return ar(r,e,2,ae(r,e+1,n),n)}function ta(r,e,t,n){return ar(r,e,3,ce(r,e+1,n),n)}function ra(r,e,t,n){return ar(r,e,5,ue(r,e+1,n),n)}function na(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 ar(r,e,9,i,n)}var ia=Bt;function vt(r,e,t,n){return new _(p.array,n,t)}function oa(r,e,t,n){return vt(r,e,1,t)}function sa(r,e,t,n){return vt(r,e,2,ae(r,e+1,n))}function aa(r,e,t,n){return vt(r,e,3,ce(r,e+1,n))}function ca(r,e,t,n){return vt(r,e,5,ue(r,e+1,n))}function ua(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 vt(r,e,9,i)}function fa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return vt(r,e,1,1/0)}function rn(r,e){q(r,p.array.majorEncoded,e.value)}rn.compareTokens=pe.compareTokens;rn.encodedSize=function(e){return q.encodedSize(e.value)};function It(r,e,t,n){return new _(p.map,n,t)}function la(r,e,t,n){return It(r,e,1,t)}function ha(r,e,t,n){return It(r,e,2,ae(r,e+1,n))}function da(r,e,t,n){return It(r,e,3,ce(r,e+1,n))}function pa(r,e,t,n){return It(r,e,5,ue(r,e+1,n))}function ma(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 It(r,e,9,i)}function ya(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return It(r,e,1,1/0)}function nn(r,e){q(r,p.map.majorEncoded,e.value)}nn.compareTokens=pe.compareTokens;nn.encodedSize=function(e){return q.encodedSize(e.value)};function ga(r,e,t,n){return new _(p.tag,t,1)}function wa(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function xa(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function ba(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function _a(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function on(r,e){q(r,p.tag.majorEncoded,e.value)}on.compareTokens=pe.compareTokens;on.encodedSize=function(e){return q.encodedSize(e.value)};var xl=20,bl=21,_l=22,kl=23;function ka(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 Sa(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 Ci(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 Ea(r,e,t,n){return Ci(Ni(r,e+1),3,n)}function Ba(r,e,t,n){return Ci(Ti(r,e+1),5,n)}function va(r,e,t,n){return Ci(Na(r,e+1),9,n)}function sn(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|xl]);else if(n===!0)r.push([p.float.majorEncoded|bl]);else if(n===null)r.push([p.float.majorEncoded|_l]);else if(n===void 0)r.push([p.float.majorEncoded|kl]);else{let i,o=!1;(!t||t.float64!==!0)&&(Aa(n),i=Ni(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(Ca(n),i=Ti(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(Sl(n),i=Na(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}sn.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){Aa(n);let i=Ni(Se,1);if(n===i||Number.isNaN(n))return 3;if(Ca(n),i=Ti(Se,1),n===i)return 5}return 9};var Ia=new ArrayBuffer(9),me=new DataView(Ia,1),Se=new Uint8Array(Ia,0);function Aa(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 Ni(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 Ca(r){me.setFloat32(0,r,!1)}function Ti(r,e){if(r.length-e<4)throw new Error(`${B} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function Sl(r){me.setFloat64(0,r,!1)}function Na(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)}sn.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function an(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Rs;S[25]=$s;S[26]=Ms;S[27]=Hs;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=Vs;S[57]=js;S[58]=qs;S[59]=Ws;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=Ks;S[88]=Xs;S[89]=Js;S[90]=Ys;S[91]=Zs;S[92]=z;S[93]=z;S[94]=z;S[95]=an("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Qs;S[120]=ea;S[121]=ta;S[122]=ra;S[123]=na;S[124]=z;S[125]=z;S[126]=z;S[127]=an("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=oa;S[152]=sa;S[153]=aa;S[154]=ca;S[155]=ua;S[156]=z;S[157]=z;S[158]=z;S[159]=fa;for(let r=160;r<=183;r++)S[r]=la;S[184]=ha;S[185]=da;S[186]=pa;S[187]=ma;S[188]=z;S[189]=z;S[190]=z;S[191]=ya;for(let r=192;r<=215;r++)S[r]=ga;S[216]=wa;S[217]=xa;S[218]=ba;S[219]=_a;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=an("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=ka;S[248]=an("simple values are not supported");S[249]=Ea;S[250]=Ba;S[251]=va;S[252]=z;S[253]=z;S[254]=z;S[255]=Sa;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 Bl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=en,r[p.bytes.major]=Bt,r[p.string.major]=ia,r[p.array.major]=rn,r[p.map.major]=nn,r[p.tag.major]=on,r[p.float.major]=sn,r}var mg=Bl(),yg=new Qr,cn=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(`${Et} object contains circular references`);return new r(t,e)}},Ve={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)},je={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?Ve.true:Ve.false},null(r,e,t,n){return Ve.null},undefined(r,e,t,n){return Ve.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?[Ve.emptyArray,new _(p.break)]:Ve.emptyArray;n=cn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Di(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?[Ve.emptyMap,new _(p.break)]:Ve.emptyMap;n=cn.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Di(h,t,n),Di(i?r.get(h):r[h],t,n)];return vl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};je.Map=je.Object;je.Buffer=je.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))je[`${r}Array`]=je.DataView;function Di(r,e={},t){let n=Ts(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||je[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=je[n];if(!o)throw new Error(`${Et} unsupported type: ${n}`);return o(r,n,e,t)}function vl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Il={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},un=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}},cr=Symbol.for("DONE"),fn=Symbol.for("BREAK");function Al(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=At(e,t);if(o===fn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===cr)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Cl(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=At(e,t);if(a===fn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===cr)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=At(e,t);if(u===cr)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 At(r,e){if(r.done())return cr;let t=r.next();if(t.type===p.break)return fn;if(t.type.terminal)return t.value;if(t.type===p.array)return Al(t,r,e);if(t.type===p.map)return Cl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=At(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function zi(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},Il,e);let t=e.tokenizer||new un(r,e),n=At(t,e);if(n===cr)throw new Error(`${B} did not find any content to decode`);if(n===fn)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function ur(r,e){let[t,n]=zi(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Da=42;function Dl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function zl(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,Da),new _(p.bytes,t)]}function Ll(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Pl(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 Ta={float64:!0,typeEncoders:{Object:zl,undefined:Ll,number:Pl}},vg={...Ta,typeEncoders:{...Ta.typeEncoders}};function Fl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var ln={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};ln.tags[Da]=Fl;var Ig={...ln,tags:ln.tags.slice()};var za=113;var La=r=>ur(Dl(r),ln);var Fa=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(`${Et} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Zr(JSON.stringify(t.value));e.push(n.length>32?Yr(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(`${Et} 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 Ct=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,Ii(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 Li(r,e){return e=Object.assign({tokenizer:new Ct(r,e)},e),ur(r,e)}function Rl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Pi=class extends Ct{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=Xt.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}},Fi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Fi.tags[42]=A.parse;var Ua=297;var Oa=r=>{let e=Rl(r),t=Object.assign(Fi,{tokenizer:new Pi(e,Fi)});return Li(e,t)};var qg=new TextDecoder;var Gg=new TextEncoder;function Nt(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 Xr(`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 $l=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=La(u);return Nt(h,u,r,e,t,n,o)},$a=$l;var Ml=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Oa(u);return Nt(h,u,r,e,t,n,o)},Ma=Ml;function Hl(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 nt=Hl;var Vl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new tt("Offset must be greater than or equal to 0");if(i>n)throw new tt("Offset must be less than the file size");if(o<0n)throw new tt("Length must be greater than or equal to 0");if(o>n)throw new tt("Length must be less than the file size");return{start:i,end:o}},Tt=Vl;var jl=r=>{async function*e(t={}){let{start:n,end:i}=Tt(r.length,t.offset,t.length),o=nt(r,0n,n,i);t.onProgress?.(new O("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},ql=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=Cr(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:jl(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Ha=ql;var Gl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ho(u);return Nt(h,u,r,e,t,n,o)},Va=Gl;var Wl=r=>{async function*e(t={}){let{start:n,end:i}=Tt(r.length,t.offset,t.length),o=nt(r,0n,n,i);t.onProgress?.(new O("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Kl=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:Wl(u),depth:o,size:BigInt(u.length),node:u}}},ja=Kl;var Xl=async function(r){return(await Ze.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)}))},qa=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Yl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Ga=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=v.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 y=gt({hashFn:Xl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}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=qa(s.pos,o),u=Yl(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=qa(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let y=l.Name.substring(0,o),c=l.Name.substring(o);return!(y!==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=$(f),Ga(r,e,t,n,i)},Wa=Ga;function Zl(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 hn=Zl;function Ql(r){return r[Symbol.asyncIterator]!=null}function eh(r,e){let t=0;if(Ql(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=hn(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 Ka=eh;function th(r){return r[Symbol.asyncIterator]!=null}function rh(r,e){let t=0;if(th(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=hn(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 Dt=rh;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var dn=globalThis.CustomEvent??Event;async function*it(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 dn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new dn("task-complete"))})}u=!0,i.dispatchEvent(new dn("task-complete"))}catch(d){h=d,i.dispatchEvent(new dn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*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*y():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var pn=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}},zt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new pn(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 pn(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 Ui=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function mn(r={}){return nh(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 nh(r,e){e=e??{};let t=e.onEnd,n=new zt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new zt,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new zt,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((k,I)=>{b=()=>{I(new Ui)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}var yn=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 Xa(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new yn(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new yn(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 Oi=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 Xa(this.readNext.promise,t?.signal,t)}};function Ja(){return new Oi}function ih(r){return r[Symbol.asyncIterator]!=null}async function oh(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*sh(r){let e=new AbortController,t=Ja();oh(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*ah(r){for(let e of r)yield*e}function ch(...r){let e=[];for(let t of r)ih(t)||e.push(t);return e.length===r.length?ah(e):sh(r)}var Ya=ch;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ri(r)){let n=r;r=()=>n.source}else if(Qa(r)||Za(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ri(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++)Ri(t[n])&&(t[n]=fh(t[n]));return uh(...t)}var uh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Za=r=>r?.[Symbol.asyncIterator]!=null,Qa=r=>r?.[Symbol.iterator]!=null,Ri=r=>r==null?!1:r.sink!=null&&r.source!=null,fh=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=mn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Za(o))i=async function*(){yield*o,n.end()};else if(Qa(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ya(n,i())}return r.source};var lh=(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 O("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,y=>Dt(y,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),y=>it(y,{ordered:!0,concurrency:u.blockReadConcurrency}),y=>Ka(y,c=>c!=null))}return a},ec=lh;var Mi=Ot(rc(),1);var lr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Hi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},nc=r=>globalThis.DOMException===void 0?new Hi(r):new DOMException(r),ic=r=>{let e=r.reason===void 0?nc("This operation was aborted."):r.reason;return e instanceof Error?e:nc(e)};function Vi(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(ic(c)),a=()=>{l(ic(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let y=new lr;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):(y.message=i??`Promise timed out after ${t} milliseconds`,l(y))},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 ji(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 hr=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=ji(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 dr=class extends Mi.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:hr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#b(){return this.#r||this.#n<this.#u}get#_(){return this.#o<this.#l}#k(){this.#o--,this.#h(),this.emit("next")}#S(){this.#w(),this.#g(),this.#f=void 0}get#E(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#S()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#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.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Vi(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 lr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function oc(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=nt(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=v.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=nt(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,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&u.push({link:f,blockStart:n}),n=y,n>o)break}await Te(u,h=>Dt(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>it(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let c;switch(f.Hash.code){case j:c=$(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new dr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new O("unixfs:exporter:walk:file",{cid:f.Hash})),await oc(r,c,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var ph=(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}=Tt(h,u.offset,u.length);if(l===0n)return;let y=0n,c=l-f,d=mn();u.onProgress?.(new O("unixfs:exporter:walk:file",{cid:r})),oc(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>c)throw d.end(),new Wr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");y===c&&d.end(),u.onProgress?.(new O("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:c,fileSize:h})),yield m}if(y<c)throw new Kr("Traversed entire DAG but did not read enough bytes")}return a},qi=ph;var mh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new O("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),sc(e,n,i,o,s,u)}return a};async function*sc(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=v.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=>Dt(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(u):null;if(y!=null&&y!==""){let c=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=$(c),o.onProgress?.(new O("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:sc(r,e,t,n,i,o)}}}),f=>it(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var ac=mh;var yh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,gh={raw:qi,file:qi,directory:ec,"hamt-sharded-directory":ac,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},wh=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=$(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=v.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 Wa(h,n[0],s):c=yh(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 y=gh[f.type](r,h,f,t,i,o,s);if(y==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},cc=wh;var xh={[j]:cc,[Q]:ja,[za]:$a,[Ua]:Ma,[li.code]:Ha,[Mo]:Va},uc=async(r,e,t,n,i,o,s)=>{let a=xh[r.code];if(a==null)throw new Gr(`No resolver for code ${r.code}`);return a(r,e,t,n,uc,i,o,s)},fc=uc;var bh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),_h=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=bh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new qr(`Unknown path type ${r}`)};async function*Gi(r,e,t={}){let{cid:n,toResolve:i}=_h(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await fc(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(Gi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*wn(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 kh(r,e){try{if(typeof r=="string"&&r.length>0)return Sh(r);if(typeof r=="number"&&isFinite(r))return e?.long?Bh(r):Eh(r);throw new Error("Value is not a string or number.")}catch(t){let n=vh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function Sh(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 bn=kh;function Eh(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 Bh(r){let e=Math.abs(r);return e>=864e5?xn(r,e,864e5,"day"):e>=36e5?xn(r,e,36e5,"hour"):e>=6e4?xn(r,e,6e4,"minute"):e>=1e3?xn(r,e,1e3,"second"):`${r} ms`}function xn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function vh(r){return typeof r=="object"&&r!==null&&"message"in r}function Wi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=bn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,c,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(g,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),c=y.length;for(l=0;l<c;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function 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 _n=zh(),Ih=["#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 Ah(){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 Ch(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+bn(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 Nh=console.debug??console.log??(()=>{});function Th(r){try{r?_n?.setItem("debug",r):_n?.removeItem("debug")}catch{}}function Dh(){let r;try{r=_n?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function zh(){try{return localStorage}catch{}}function Lh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var lc=Wi({formatArgs:Ch,save:Th,load:Dh,useColors:Ah,setupFormatters:Lh,colors:Ih,storage:_n,log:Nh});var re=lc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Oe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":Xt.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":hc(r.stack)??hc(r.message)??r.toString();function Ph(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=Ph(`${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 hc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Yi=Ot(Rr(),1);function Sn(r){function e(t){return t instanceof kn?t:new kn(t,r)}return e}var kn=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?Ge([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Ki(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Fh=[255,254,252,248,240,224,192,128],Uh=[1,3,7,15,31,63,127,255],Ki=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=Oh(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 Oh(r,e,t){let n=Rh(e,t);return(r&n)>>>e}function Rh(r,e){return Fh[r]&Uh[Math.min(e+r-1,7)]}var pr=BigInt(Ze.code),ot=8;async function Lt(r){return(await Ze.encode(r)).subarray(0,8).reverse()}var mc=Ot(Rr(),1);var Be=async(r,e,t)=>{t.codec==null&&(t.codec=M);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 Xi=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}},En=class extends Xi{_bucket;constructor(e,t){super(e,t),this._bucket=gt({hashFn:Lt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=pc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of dc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*dc(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 g of dc(d,e,null,n))x=g;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($h(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:pr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(F(h)),l=await Be(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:y}}function $h(r){return typeof r.flush=="function"}function pc(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=pc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?Bn:vn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?Bn:vn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,c=l.size;i.push({Name:y,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:pr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var Bn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),vn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ji=R("helia:unixfs:commands:utils:hamt-utils"),In=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),yc=async(r,e,t)=>{let n=new En({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},An=async(r,e,t)=>{let n=v.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,ot));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 v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:pr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(F(s));if(o=await Be(y,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?");Ji("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),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Cn=async(r,e,t,n)=>{let o=Sn(Lt)(U(e)),s=[];for(;;){let a=await t.get(r,n),u=$(a),h=new mc.default,f=await o.take(ot),l=In(f);s.push({prefix:l,children:h,node:u});let y;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)&&(y=d)}if(y==null){Ji("no link found with prefix %s for %s",l,e);break}let c=y.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=y.Hash,Ji("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function Nn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=v.unmarshal(r.Data),o;if(i.type==="directory")o=Mh(r);else if(i.type==="hamt-sharded-directory")o=await gc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Mh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?vn.bytes.byteLength:Bn.bytes.byteLength;return e}async function gc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!v.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===j){let u=await n.get(s.Hash,i),h=$(u);e+=await gc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function Pt(r,e,t,n){if(r.node.Data==null)throw new L("Invalid parent passed to addLink");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),jh(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Vh(r,e,t,n);if(await Nn(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Hh(o,t);o.cid=s.cid,o.node=$(await t.get(s.cid,n))}return o}var Hh=async(r,e)=>{if(r.node.Data==null)throw new L("Invalid parent passed to convertToShardedDirectory");let t=v.unmarshal(r.node.Data),n=await yc(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},Vh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new et;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=v.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},jh=async(r,e,t,n)=>{let{path:i,hash:o}=await Cn(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 et;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)),y=s.node.Links.splice(l,1)[0],c=(y.Name??"").substring(2),m=Sn(Lt)(U(c));for(let x=0;x<i.length;x++)await m.take(ot);for(;;){let x=await m.take(ot),g=In(x);y.Name=`${g}${c}`;let w=await o.take(ot),b=In(w);if(g===b){let I=new Yi.default;I.set(w,!0),i.push({prefix:b,children:I,node:{Links:[]}});continue}let k=new Yi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else 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 An(i,t,n)};async function qe(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new Ne(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ft(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:qh(i.node),Hash:r}}function qh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Gh=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 os(Gi(i,t,n));if(o.length===0)throw new Le("Could not find path in directory");return Gh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ut(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([qe(o.cid,t,n),Ft(i.cid,i.name,t,n)]);r=(await Pt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Wh=K.bind({ignoreUndefined:!0}),Kh={};async function*wc(r,e,t={}){let n=Wh(Kh,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 Hr;if(o.content==null)throw new wt;yield*o.content(n)}var Xh=K.bind({ignoreUndefined:!0}),Jh=R("helia:unixfs:chmod"),Yh={recursive:!1,shardSplitThresholdBytes:262144};async function xc(r,e,t,n={}){let i=Xh(Yh,n),o=await ze(r,i.path,t,n);if(Jh("chmod %c %d",o.cid,e),i.recursive){let y=await Te(async function*(){for await(let c of wn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new v({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=>Qe(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Be(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new ee(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(y==null)throw new He(`Could not chmod ${o.cid.toString()}`);return Ut(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new v({type:"file",data:s});else{let y=$(s);if(y.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=y.Links,a=v.unmarshal(y.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),Ut(l,o,t,i)}var Zh=K.bind({ignoreUndefined:!0}),Qh=R("helia:unixfs:cp"),ed={force:!1,shardSplitThresholdBytes:262144};async function bc(r,e,t,n,i={}){let o=Zh(ed,i);if(t.includes("/"))throw new L("Name must not have slashes");let[s,a]=await Promise.all([qe(e,n,o),Ft(r,t,n,o)]);return Qh('Adding %c as "%s" to %c',r,t,e),(await Pt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var td=K.bind({ignoreUndefined:!0}),rd={};async function*_c(r,e,t={}){let n=td(rd,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 wt;if(o.type!=="directory")throw new Ne;yield*o.content({offset:t.offset,length:t.length})}var nd=K.bind({ignoreUndefined:!0}),kc=R("helia:unixfs:mkdir"),id={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function Sc(r,e,t,n={}){let i=nd(id,n);if(e.includes("/"))throw new L("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new Ne(`${r.toString()} was not a UnixFS directory`);kc("creating %s",e);let a={Data:new v({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,y]=await Promise.all([qe(r,t,i),Ft(f,e,t,i)]);return kc("adding empty dir called %s to %c",e,r),(await Pt(l,y,t,{...i,allowOverwriting:i.force})).cid}var Dn=R("helia:unixfs:utils:remove-link");async function Ec(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Dn(`removing ${e} from sharded directory`);let o=await sd(r,e,t,n);return await Nn(o.node,t,n.shardSplitThresholdBytes,n)?o:(Dn("converting shard to flat directory %c",r.cid),ad(o,t,n))}return Dn(`removing link ${e} regular directory`),od(r,e,t,n)}var od=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 Dn(`Updated regular directory ${o}`),{node:r.node,cid:o}},sd=async(r,e,t,n)=>{let{path:i}=await Cn(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(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return An(i,t,n)},ad=async(r,e,t)=>{if(r.node.Data==null)throw new L("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=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await Be(s,e,{codec:M,cidVersion:r.cid.version,signal:t.signal}),node:n}};var cd=K.bind({ignoreUndefined:!0}),ud=R("helia:unixfs:rm"),fd={shardSplitThresholdBytes:262144};async function Bc(r,e,t,n={}){let i=cd(fd,n);if(e.includes("/"))throw new L("Name must not have slashes");let o=await qe(r,t,i);return ud("Removing %s from %c",e,r),(await Ec(o,e,t,{...i,cidVersion:r.version})).cid}function vc(r,e="utf8"){let t=Dr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Zi={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},Ic={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},Ac=new globalThis.TextEncoder;function ld(r,e){let t=Zi[e],n=Ic[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function hd(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Zi[e],i=Ic[e],o=r;for(;o.length>0;){let s=Ac.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 Qi(r,{size:e=32,utf8Buffer:t}={}){if(!Zi[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 hd(r,e,t);r=Ac.encode(r)}return ld(r,e)}var mr={hash:r=>Number(Qi(r,{size:32})),hashV:(r,e)=>dd(mr.hash(r,e))};function dd(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),U(e,"base16")}var Cc=64,ve=class{fp;h;seed;constructor(e,t,n,i=2){if(i>Cc)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?vr(this.fp,e.fp):!1}};function st(r,e){return Math.floor(Math.random()*(e-r))+r}var at=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=st(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 pd=500,yr=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??mr,this.seed=e.seed??st(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=U(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 at(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new at(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[st(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new at(this.bucketSize));for(let a=0;a<pd;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 at(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=U(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=U(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 gr=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??mr,this.seed=e.seed??st(0,Math.pow(2,10)),this.filterSeries=[new yr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=U(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 yr({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=U(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=U(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 Nc=1877,zn=1604,md=K.bind({ignoreUndefined:!0}),yd=R("helia:unixfs:stat"),gd={};async function Tc(r,e,t={}){let n=md(gd,t),i=await ze(r,t.path,e,n);yd("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?_d(o):bd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?xd(o,e,t.filter??new gr({filterSize:1024}),t):wd(o);throw new Ce}function wd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?Nc:zn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function xd(r,e,t,n){let i=await Dc(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()?Nc:zn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function bd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:zn,mtime:void 0,size:BigInt(r.node.byteLength)}}function _d(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:zn,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 Dc(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=$(a),h;if(u.Data!=null&&(h=v.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Dc(f.Hash,e,kd(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 He(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function kd(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 Sd=K.bind({ignoreUndefined:!0}),Ed=R("helia:unixfs:touch"),Bd={recursive:!1,shardSplitThresholdBytes:262144};async function zc(r,e,t={}){let n=Sd(Bd,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(Ed("touch %c %o",i.cid,o),n.recursive){let y=await Te(async function*(){for await(let c of wn(i.cid,e)){let d,m;if(c.type==="raw")d=new v({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=>Qe(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Be(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new ee(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(y==null)throw new He(`Could not chmod ${i.cid.toString()}`);return Ut(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new v({data:s});else{let y=$(s);if(u=y.Links,y.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=v.unmarshal(y.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),Ut(l,i,e,n)}var Ln=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Vr(e,this.components.blockstore,t)}async addBytes(e,t={}){return Es(e,this.components.blockstore,t)}async addByteStream(e,t={}){return Bs(e,this.components.blockstore,t)}async addFile(e,t={}){return vs(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Is(e,this.components.blockstore,t)}async*cat(e,t={}){yield*wc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return xc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return bc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*_c(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return Sc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return Bc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Tc(e,this.components.blockstore,t)}async touch(e,t={}){return zc(e,this.components.blockstore,t)}};function Lc(r){return new Ln(r)}var Fe="/",Pc=new TextEncoder().encode(Fe),Pn=Pc[0],wr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=U(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==Pn)throw new Error("Invalid key")}toString(e="utf8"){return vc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Fe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Pc),this._buf[0]!==Pn){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Pn,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Pn;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Fe).slice(1)}type(){return vd(this.baseNamespace())}name(){return Id(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Fe)||(e+=Fe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Fe):new r(e.slice(0,-1).join(Fe))}child(e){return this.toString()===Fe?e:e.toString()===Fe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...Ad(e.map(t=>t.namespaces()))])}};function vd(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function Id(r){let e=r.split(":");return e[e.length-1]}function Ad(r){return[].concat(...r)}function Fn(r){return r.split("/").pop()??""}var Cd=R("helia:mfs"),eo=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new wr(t.key??"/locals/filesroot"),this.unixfs=Lc(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=A.decode(e)}catch(e){if(e.name!=="NotFoundError")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addBytes(e,n);await this.cp(i,t,n),n?.mode!=null&&await this.chmod(t,n.mode,n),n?.mtime!=null&&await this.touch(t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addByteStream(e,n);await this.cp(i,t,n),n?.mode!=null&&await this.chmod(t,n.mode,n),n?.mtime!=null&&await this.touch(t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=Fn(t),a=t.substring(0,t.length-`/${s}`.length),u=[{cid:i,name:""}];a!==""&&(u=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),u.push({cid:e,name:s}),this.root=await this.#n(u,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=Fn(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:Fn(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new L("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Le;return this.unixfs.stat(o.cid,t)}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Le;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new L("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(Cd.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new v({type:"directory"})})}else throw new Le(`${t} does not exist`)}}let u=o[o.length-1];if(n.finalSegmentMustBeDirectory&&u.unixfs?.isDirectory()!==!0)throw new Ne(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new L("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Le}async#s(e,t={}){if(await this.#c(e,t))throw new et}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function Nd(r,e={}){return new eo(r,e)}return Mc(Td);})();
|
|
3
3
|
return HeliaMfs}));
|
|
4
4
|
//# sourceMappingURL=index.min.js.map
|