@helia/unixfs 5.0.2 → 5.0.3-1e9745c0
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/README.md +30 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +4 -4
- package/dist/src/commands/cat.js +1 -1
- package/dist/src/commands/cat.js.map +1 -1
- package/dist/src/commands/chmod.js +1 -1
- package/dist/src/commands/chmod.js.map +1 -1
- package/dist/src/commands/cp.js +1 -1
- package/dist/src/commands/cp.js.map +1 -1
- package/dist/src/commands/ls.js +1 -1
- package/dist/src/commands/ls.js.map +1 -1
- package/dist/src/commands/mkdir.js +1 -1
- package/dist/src/commands/mkdir.js.map +1 -1
- package/dist/src/commands/rm.js +1 -1
- package/dist/src/commands/rm.js.map +1 -1
- package/dist/src/commands/stat.js +1 -1
- package/dist/src/commands/stat.js.map +1 -1
- package/dist/src/commands/touch.js +1 -1
- package/dist/src/commands/touch.js.map +1 -1
- package/dist/src/commands/utils/add-link.d.ts +1 -1
- package/dist/src/commands/utils/add-link.d.ts.map +1 -1
- package/dist/src/commands/utils/dir-sharded.js +1 -1
- package/dist/src/commands/utils/dir-sharded.js.map +1 -1
- package/dist/src/commands/utils/hamt-utils.d.ts +1 -1
- package/dist/src/commands/utils/hamt-utils.d.ts.map +1 -1
- package/dist/src/commands/utils/persist.d.ts.map +1 -1
- package/dist/src/index.d.ts +29 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +29 -0
- package/dist/src/index.js.map +1 -1
- package/package.json +3 -4
- package/src/commands/cat.ts +1 -1
- package/src/commands/chmod.ts +1 -1
- package/src/commands/cp.ts +1 -1
- package/src/commands/ls.ts +1 -1
- package/src/commands/mkdir.ts +1 -1
- package/src/commands/rm.ts +1 -1
- package/src/commands/stat.ts +1 -1
- package/src/commands/touch.ts +1 -1
- package/src/commands/utils/add-link.ts +1 -1
- package/src/commands/utils/dir-sharded.ts +1 -1
- package/src/index.ts +29 -0
- package/dist/typedoc-urls.json +0 -76
package/dist/index.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaUnixfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var HeliaUnixfs=(()=>{var Pc=Object.create;var xr=Object.defineProperty;var Uc=Object.getOwnPropertyDescriptor;var Oc=Object.getOwnPropertyNames;var Rc=Object.getPrototypeOf,$c=Object.prototype.hasOwnProperty;var ot=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)xr(r,t,{get:e[t],enumerable:!0})},Xi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oc(e))!$c.call(r,i)&&i!==t&&xr(r,i,{get:()=>e[i],enumerable:!(n=Uc(e,i))||n.enumerable});return r};var st=(r,e,t)=>(t=r!=null?Pc(Rc(r)):{},Xi(e||!r||!r.__esModule?xr(t,"default",{value:r,enumerable:!0}):t,r)),Mc=r=>Xi(xr({},"__esModule",{value:!0}),r);var ts=ot((er,Dr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(c){if(!Array.isArray(c)&&!ArrayBuffer.isView(c))return!1;for(var d=0;d<c.length;d++)if(!Number.isInteger(c[d])||c[d]<0||c[d]>255)return!1;return!0}function i(c,d){return(c&65535)*d+(((c>>>16)*d&65535)<<16)}function o(c,d){return c<<d|c>>>32-d}function s(c){return c^=c>>>16,c=i(c,2246822507),c^=c>>>13,c=i(c,3266489909),c^=c>>>16,c}function a(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=c[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]*d[3]+c[1]*d[2]+c[2]*d[1]+c[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(c,d){return d%=64,d===32?[c[1],c[0]]:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d|c[0]>>>32-d]:(d-=32,[c[1]<<d|c[0]>>>32-d,c[0]<<d|c[1]>>>32-d])}function f(c,d){return d%=64,d===0?c:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d]:[c[1]<<d-32,0]}function l(c,d){return[c[0]^d[0],c[1]^d[1]]}function g(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,y=d,w=0,b=3432918353,k=461845907,B=0;B<x;B=B+4)w=c[B]|c[B+1]<<8|c[B+2]<<16|c[B+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),y^=w,y=o(y,13),y=i(y,5)+3864292196;switch(w=0,m){case 3:w^=c[B+2]<<16;case 2:w^=c[B+1]<<8;case 1:w^=c[B],w=i(w,b),w=o(w,15),w=i(w,k),y^=w}return y^=c.length,y=s(y),y>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=d,w=d,b=d,k=d,B=0,C=0,E=0,D=0,ye=597399067,yr=2869860233,gr=951274213,wr=2716044179,N=0;N<x;N=N+16)B=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,C=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,E=c[N+8]|c[N+9]<<8|c[N+10]<<16|c[N+11]<<24,D=c[N+12]|c[N+13]<<8|c[N+14]<<16|c[N+15]<<24,B=i(B,ye),B=o(B,15),B=i(B,yr),y^=B,y=o(y,19),y+=w,y=i(y,5)+1444728091,C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=y,k=i(k,5)+850148119;switch(B=0,C=0,E=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=c[N+11]<<24;case 11:E^=c[N+10]<<16;case 10:E^=c[N+9]<<8;case 9:E^=c[N+8],E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E;case 8:C^=c[N+7]<<24;case 7:C^=c[N+6]<<16;case 6:C^=c[N+5]<<8;case 5:C^=c[N+4],C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C;case 4:B^=c[N+3]<<24;case 3:B^=c[N+2]<<16;case 2:B^=c[N+1]<<8;case 1:B^=c[N],B=i(B,ye),B=o(B,15),B=i(B,yr),y^=B}return y^=c.length,w^=c.length,b^=c.length,k^=c.length,y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,y=s(y),w=s(w),b=s(b),k=s(k),y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,("00000000"+(y>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=[0,d],w=[0,d],b=[0,0],k=[0,0],B=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[c[E+4]|c[E+5]<<8|c[E+6]<<16|c[E+7]<<24,c[E]|c[E+1]<<8|c[E+2]<<16|c[E+3]<<24],k=[c[E+12]|c[E+13]<<8|c[E+14]<<16|c[E+15]<<24,c[E+8]|c[E+9]<<8|c[E+10]<<16|c[E+11]<<24],b=u(b,B),b=h(b,31),b=u(b,C),y=l(y,b),y=h(y,27),y=a(y,w),y=a(u(y,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,B),w=l(w,k),w=h(w,31),w=a(w,y),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[E+14]],48));case 14:k=l(k,f([0,c[E+13]],40));case 13:k=l(k,f([0,c[E+12]],32));case 12:k=l(k,f([0,c[E+11]],24));case 11:k=l(k,f([0,c[E+10]],16));case 10:k=l(k,f([0,c[E+9]],8));case 9:k=l(k,[0,c[E+8]]),k=u(k,C),k=h(k,33),k=u(k,B),w=l(w,k);case 8:b=l(b,f([0,c[E+7]],56));case 7:b=l(b,f([0,c[E+6]],48));case 6:b=l(b,f([0,c[E+5]],40));case 5:b=l(b,f([0,c[E+4]],32));case 4:b=l(b,f([0,c[E+3]],24));case 3:b=l(b,f([0,c[E+2]],16));case 2:b=l(b,f([0,c[E+1]],8));case 1:b=l(b,[0,c[E]]),b=u(b,B),b=h(b,31),b=u(b,C),y=l(y,b)}return y=l(y,[0,c.length]),w=l(w,[0,c.length]),y=a(y,w),w=a(w,y),y=g(y),w=g(w),y=a(y,w),w=a(w,y),("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof er<"u"?(typeof Dr<"u"&&Dr.exports&&(er=Dr.exports=t),er.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(er)});var ns=ot((m0,rs)=>{rs.exports=ts()});var Lr=ot((k0,os)=>{"use strict";os.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(Pf,0),u=~(4294967295<<o+1),h=is(i&u);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(Uf),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(Of)}};function Pf(r,e){return r+is(e)}function is(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Uf(r,e){return r[0]-e[0]}function Of(r){return r[1]}});var Ka=ot((Mw,Li)=>{"use strict";var sh=Object.prototype.hasOwnProperty,Y="~";function cr(){}Object.create&&(cr.prototype=Object.create(null),new cr().__proto__||(Y=!1));function ah(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Wa(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new ah(t,n||r,i),s=Y?Y+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function hn(r,e){--r._eventsCount===0?r._events=new cr:delete r._events[e]}function K(){this._events=new cr,this._eventsCount=0}K.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)sh.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};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 g=u.length,c;for(l=0;l<g;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[l].context,f)}}return!0};K.prototype.on=function(e,t,n){return Wa(this,e,t,n,!1)};K.prototype.once=function(e,t,n){return Wa(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 hn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&hn(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:hn(this,o)}return this};K.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&hn(this,t)):(this._events=new cr,this._eventsCount=0),this};K.prototype.off=K.prototype.removeListener;K.prototype.addListener=K.prototype.on;K.prefixed=Y;K.EventEmitter=K;typeof Li<"u"&&(Li.exports=K)});var ic=ot((Rx,nc)=>{"use strict";nc.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var fc=ot((cc,uc)=>{"use strict";var pn=ic(),{hasOwnProperty:sc}=Object.prototype,{propertyIsEnumerable:yh}=Object,Nt=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),gh=cc,oc={concatArrays:!1,ignoreUndefined:!1},mn=r=>{let e=[];for(let t in r)sc.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)yh.call(r,n)&&e.push(n)}return e};function Tt(r){return Array.isArray(r)?wh(r):pn(r)?xh(r):r}function wh(r){let e=r.slice(0,0);return mn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}function xh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return mn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}var ac=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Nt(r,i,Mi(r[i],e[i],n)):Nt(r,i,Tt(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++)sc.call(o,a)&&(s.push(String(a)),o===r?Nt(n,i++,o[a]):Nt(n,i++,Tt(o[a])));n=ac(n,o,mn(o).filter(a=>!s.includes(a)),t)}),n};function Mi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?bh(r,e,t):!pn(e)||!pn(r)?Tt(e):ac(r,e,mn(e),t)}uc.exports=function(...r){let e=Mi(Tt(oc),this!==gh&&this||{},oc),t={_:{}};for(let n of r)if(n!==void 0){if(!pn(n))throw new TypeError("`"+n+"` is not an Option Object");t=Mi(t,{_:n},e)}return t._}});var Id={};G(Id,{globSource:()=>Lc,unixfs:()=>Bd,urlSource:()=>Fc});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 br=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 _r=qc;async function*Pt(r,e=1){for await(let t of _r(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function je(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function kr(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Yi=Symbol.for("@achingbrain/uint8arraylist");function Ji(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function Sr(r){return!!r?.[Yi]}var at=class r{bufs;length;[Yi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(Sr(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(Sr(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Ji(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Ji(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(Sr(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return je(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:je(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,u=a+s.byteLength;if(i=u,e>=u)continue;let h=e>=a&&e<u,f=t>a&&t<=u;if(h&&f){if(e===a&&t===u){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===u){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!Sr(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let g=h;g>=0;g--){let c=this.get(l+g);if(n[g]!==c){f=Math.max(1,g-a[c]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!kr(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,Ut=(r={})=>{let e=r.chunkSize??Gc;return async function*(n){let i=new at,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new at,o=0;else{let u=new at;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>j,createLink:()=>wo,createNode:()=>go,decode:()=>U,encode:()=>T,name:()=>ju,prepare:()=>F,validate:()=>Gn});var Rn={};G(Rn,{base32:()=>Pe,base32hex:()=>iu,base32hexpad:()=>su,base32hexpadupper:()=>au,base32hexupper:()=>ou,base32pad:()=>ru,base32padupper:()=>nu,base32upper:()=>tu,base32z:()=>cu});var ct={};G(ct,{coerce:()=>le,empty:()=>Zi,equals:()=>Dn,fromHex:()=>Kc,fromString:()=>zn,isBinary:()=>Xc,toHex:()=>Wc,toString:()=>Ln});var Zi=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))):Zi}function Dn(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function le(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Xc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function zn(r){return new TextEncoder().encode(r)}function Ln(r){return new TextDecoder().decode(r)}function Jc(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,u=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,y=0,w=d.length;y!==w&&d[y]===0;)y++,m++;for(var b=(w-y)*f+1>>>0,k=new Uint8Array(b);y!==w;){for(var B=d[y],C=0,E=b-1;(B!==0||C<x)&&E!==-1;E--,C++)B+=256*k[E]>>>0,k[E]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=C,y++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function g(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,y=0;d[m]===u;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var B=0,C=w-1;(k!==0||B<y)&&C!==-1;C--,B++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");y=B,m++}if(d[m]!==" "){for(var E=w-y;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function c(d){var m=g(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:g,decode:c}}var Yc=Jc,Zc=Yc,Qi=Zc;var Fn=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")}},Pn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return eo(this,e)}},Un=class{decoders;constructor(e){this.decoders=e}or(e){return eo(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function eo(r,e){return new Un({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var On=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Fn(e,t,n),this.decoder=new Pn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ut({name:r,prefix:e,encode:t,decode:n}){return new On(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Qi(t,r);return ut({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Qc(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,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 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 L({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return ut({prefix:e,name:r,encode(i){return eu(i,n,t)},decode(i){return Qc(i,n,t,r)}})}var Pe=L({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),tu=L({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ru=L({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),nu=L({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),iu=L({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),ou=L({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),su=L({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),au=L({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),cu=L({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var $n={};G($n,{base36:()=>Ot,base36upper:()=>uu});var Ot=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),uu=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Mn={};G(Mn,{base58btc:()=>he,base58flickr:()=>fu});var he=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),fu=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var lu=no,to=128,hu=127,du=~hu,pu=Math.pow(2,31);function no(r,e,t){e=e||[],t=t||0;for(var n=t;r>=pu;)e[t++]=r&255|to,r/=128;for(;r&du;)e[t++]=r&255|to,r>>>=7;return e[t]=r|0,no.bytes=t-n+1,e}var mu=Hn,yu=128,ro=127;function Hn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Hn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&ro)<<i:(s&ro)*Math.pow(2,i),i+=7}while(s>=yu);return Hn.bytes=o-n,t}var gu=Math.pow(2,7),wu=Math.pow(2,14),xu=Math.pow(2,21),bu=Math.pow(2,28),_u=Math.pow(2,35),ku=Math.pow(2,42),Su=Math.pow(2,49),Eu=Math.pow(2,56),vu=Math.pow(2,63),Bu=function(r){return r<gu?1:r<wu?2:r<xu?3:r<bu?4:r<_u?5:r<ku?6:r<Su?7:r<Eu?8:r<vu?9:10},Iu={encode:lu,decode:mu,encodingLength:Bu},Au=Iu,Rt=Au;function $t(r,e=0){return[Rt.decode(r,e),Rt.decode.bytes]}function ft(r,e,t=0){return Rt.encode(r,e,t),e}function lt(r){return Rt.encodingLength(r)}function qe(r,e){let t=e.byteLength,n=lt(r),i=n+lt(t),o=new Uint8Array(i+t);return ft(r,o,0),ft(t,o,n),o.set(e,i),new ht(r,t,e,o)}function vr(r){let e=le(r),[t,n]=$t(e),[i,o]=$t(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ht(t,i,s,e)}function io(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Dn(r.bytes,t.bytes)}}var ht=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function oo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Nu(t,Vn(r),e??he.encoder);default:return Tu(t,Vn(r),e??Pe.encoder)}}var so=new WeakMap;function Vn(r){let e=so.get(r);if(e==null){let t=new Map;return so.set(r,t),t}return e}var A=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Mt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Du)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=qe(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&io(e.multihash,n.multihash)}toString(e){return oo(this,e)}toJSON(){return{"/":oo(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??ao(n,i,o.bytes))}else if(t[zu]===!0){let{version:n,multihash:i,code:o}=t,s=vr(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Mt)throw new Error(`Version 0 CID must use dag-pb (code: ${Mt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=ao(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Mt,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=le(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ht(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,g]=$t(e.subarray(t));return t+=g,l},i=n(),o=Mt;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,multihashSize:f,size:h}}static parse(e,t){let[n,i]=Cu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Vn(o).set(n,e),o}};function Cu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Pe.prefix:{let t=e??Pe;return[Pe.prefix,t.decode(r)]}case Ot.prefix:{let t=e??Ot;return[Ot.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Nu(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 Tu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Mt=112,Du=18;function ao(r,e,t){let n=lt(r),i=n+lt(e),o=new Uint8Array(i+t.byteLength);return ft(r,o,0),ft(e,o,n),o.set(t,i),o}var zu=Symbol.for("@ipld/js-cid/CID");var Lu=new TextDecoder;function jn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function Br(r,e){let t;[t,e]=jn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function co(r,e){let t;return[t,e]=jn(r,e),[t&7,t>>3,e]}function Fu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=co(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=Br(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]=Br(r,n),e.Name=Lu.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=jn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function uo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=co(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(u===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Br(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]=Br(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 lo=new TextEncoder,fo=2**32,Pu=2**31;function Uu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Ht(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=lo.encode(r.Name);t-=n.length,e.set(n,t),t=Ht(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ht(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function ho(r){let e=Ru(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ht(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Uu(r.Links[i],t.subarray(0,n));n-=o,n=Ht(t,n,o)-1,t[n]=18}return t}function Ou(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+pt(t)}if(typeof r.Name=="string"){let t=lo.encode(r.Name).length;e+=1+t+pt(t)}return typeof r.Tsize=="number"&&(e+=1+pt(r.Tsize)),e}function Ru(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+pt(t)}if(r.Links)for(let t of r.Links){let n=Ou(t);e+=1+n+pt(n)}return e}function Ht(r,e,t){e-=pt(t);let n=e;for(;t>=Pu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function pt(r){return r%2===0&&r++,Math.floor(($u(r)+6)/7)}function $u(r){let e=0;return r>=fo&&(r=Math.floor(r/fo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Mu[r]}var Mu=[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 Hu=["Data","Links"],Vu=["Hash","Name","Tsize"],qn=new TextEncoder;function mo(r,e){if(r===e)return 0;let t=r.Name?qn.encode(r.Name):[],n=e.Name?qn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function po(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function yo(r){if(typeof r.asCID=="object"){let t=A.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function F(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=qn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(yo),e.Links.sort(mo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Gn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!po(r,Hu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!po(t,Vu))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&mo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function go(r,e=[]){return F({Data:r,Links:e})}function wo(r,e,t){return yo({Hash:t,Name:r,Tsize:e})}function xo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var ju="dag-pb",j=112;function T(r){Gn(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),ho(e)}function U(r){let e=xo(r),t=uo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var Vt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}};var qu=Math.pow(2,7),Gu=Math.pow(2,14),Wu=Math.pow(2,21),bo=Math.pow(2,28),_o=Math.pow(2,35),ko=Math.pow(2,42),So=Math.pow(2,49),J=128,Ue=127;function jt(r){if(r<qu)return 1;if(r<Gu)return 2;if(r<Wu)return 3;if(r<bo)return 4;if(r<_o)return 5;if(r<ko)return 6;if(r<So)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Eo(r,e,t=0){switch(jt(r)){case 8:e[t++]=r&255|J,r/=128;case 7:e[t++]=r&255|J,r/=128;case 6:e[t++]=r&255|J,r/=128;case 5:e[t++]=r&255|J,r/=128;case 4:e[t++]=r&255|J,r>>>=7;case 3:e[t++]=r&255|J,r>>>=7;case 2:e[t++]=r&255|J,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function vo(r,e){let t=r[e],n=0;if(n+=t&Ue,t<J||(t=r[e+1],n+=(t&Ue)<<7,t<J)||(t=r[e+2],n+=(t&Ue)<<14,t<J)||(t=r[e+3],n+=(t&Ue)<<21,t<J)||(t=r[e+4],n+=(t&Ue)*bo,t<J)||(t=r[e+5],n+=(t&Ue)*_o,t<J)||(t=r[e+6],n+=(t&Ue)*ko,t<J)||(t=r[e+7],n+=(t&Ue)*So,t<J))return n;throw new RangeError("Could not decode varint")}var Wn=new Float32Array([-0]),Oe=new Uint8Array(Wn.buffer);function Bo(r,e,t){Wn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Io(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Wn[0]}var Kn=new Float64Array([-0]),W=new Uint8Array(Kn.buffer);function Ao(r,e,t){Kn[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function Co(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],Kn[0]}var Ku=BigInt(Number.MAX_SAFE_INTEGER),Xu=BigInt(Number.MIN_SAFE_INTEGER),ie=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return Ge;if(e<Ku&&e>Xu)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>No&&(i=0n,++n>No&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ge;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ge}},Ge=new ie(0,0);Ge.toBigInt=function(){return 0n};Ge.zzEncode=Ge.zzDecode=function(){return this};Ge.length=function(){return 1};var No=4294967296n;function To(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Do(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Xn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Ir(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Jn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,we(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw we(this,4);return Ir(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Ir(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=Io(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=Co(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Do(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new ie(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw we(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw we(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw we(this,8);let e=Ir(this.buf,this.pos+=4),t=Ir(this.buf,this.pos+=4);return new ie(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=vo(this.buf,this.pos);return this.pos+=jt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Yn(r){return new Jn(r instanceof Uint8Array?r:r.subarray())}function qt(r,e,t){let n=Yn(r);return e.decode(n,void 0,t)}var Zn={};G(Zn,{base10:()=>Ju});var Ju=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var Qn={};G(Qn,{base16:()=>Yu,base16upper:()=>Zu});var Yu=L({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Zu=L({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ei={};G(ei,{base2:()=>Qu});var Qu=L({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ti={};G(ti,{base256emoji:()=>of});var Lo=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),ef=Lo.reduce((r,e,t)=>(r[t]=e,r),[]),tf=Lo.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function rf(r){return r.reduce((e,t)=>(e+=ef[t],e),"")}function nf(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=tf[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var of=ut({prefix:"\u{1F680}",name:"base256emoji",encode:rf,decode:nf});var ri={};G(ri,{base64:()=>Gt,base64pad:()=>sf,base64url:()=>af,base64urlpad:()=>cf});var Gt=L({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),sf=L({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),af=L({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),cf=L({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ni={};G(ni,{base8:()=>uf});var uf=L({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ii={};G(ii,{identity:()=>ff});var ff=ut({prefix:"\0",name:"identity",encode:r=>Ln(r),decode:r=>zn(r)});var Fp=new TextEncoder,lf=new TextDecoder;var Fo=512;function Po(r){return JSON.parse(lf.decode(r))}var Ie={};G(Ie,{code:()=>Q,decode:()=>pf,encode:()=>df,name:()=>hf});var hf="raw",Q=85;function df(r){return le(r)}function pf(r){return le(r)}var ai={};G(ai,{identity:()=>si});var Uo=0,mf="identity",Oo=le;function yf(r){return qe(Uo,Oo(r))}var si={code:Uo,name:mf,encode:Oo,digest:yf};var ui={};G(ui,{sha256:()=>oe,sha512:()=>gf});function We({name:r,code:e,encode:t}){return new ci(r,e,t)}var ci=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?qe(this.code,t):t.then(n=>qe(this.code,n))}else throw Error("Unknown type, must be binary type")}};function $o(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=We({name:"sha2-256",code:18,encode:$o("SHA-256")}),gf=We({name:"sha2-512",code:19,encode:$o("SHA-512")});var fi={...ii,...ei,...ni,...Zn,...Qn,...Rn,...$n,...Mn,...ri,...ti},Kp={...ui,...ai};function Ho(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Mo=Ho("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),li=Ho("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),wf={utf8:Mo,"utf-8":Mo,hex:fi.base16,latin1:li,ascii:li,binary:li,...fi},Vo=wf;function O(r,e="utf8"){let t=Vo[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function hi(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var Ke=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function di(){}var mi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},xf=hi();function bf(r){return globalThis.Buffer!=null?ne(r):xf(r)}var Kt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ke(di,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ke(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new yi((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Ar,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(Ar,t.length(),t)}uint64Number(e){return this._push(Eo,jt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=ie.fromBigInt(e).zzEncode();return this._push(Ar,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Ar,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(pi,1,e?1:0)}fixed32(e){return this._push(Wt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Bo,4,e)}double(e){return this._push(Ao,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(pi,1,0):this.uint32(t)._push(kf,t,e)}string(e){let t=To(e);return t!==0?this.uint32(t)._push(Xn,t,e):this._push(pi,1,0)}fork(){return this.states=new mi(this),this.head=this.tail=new Ke(di,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ke(di,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=bf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function pi(r,e,t){e[t]=r&255}function _f(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var yi=class extends Ke{next;constructor(e,t){super(_f,e,t),this.next=void 0}};function Ar(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Wt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function kf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Kt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Sf,e,r),this},Kt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(Ef,e,r),this});function Sf(r,e,t){e.set(r,t)}function Ef(r,e,t){r.length<40?Xn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(O(r),t)}function gi(){return new Kt}function Xt(r,e){let t=gi();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var mt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(mt||(mt={}));function Cr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function wi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Cr("enum",mt.VARINT,t,n)}function Jt(r,e){return Cr("message",mt.LENGTH_DELIMITED,r,e)}var xe;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>wi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Jt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Nr.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=Nr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Xt(i,r.codec()),r.decode=i=>qt(i,r.codec())})(xe||(xe={}));var Nr;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Xt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(Nr||(Nr={}));var jo;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Xt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(jo||(jo={}));var qo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},vf=["directory","hamt-sharded-directory"],Go=parseInt("0644",8),Wo=parseInt("0755",8),I=class r{static unmarshal(e){let t=xe.decode(e),n=new r({type:qo[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:u}=e;if(t!=null&&!Object.values(qo).includes(t))throw new Vt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Wo:Go:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return 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 Vt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Go&&!this.isDirectory()&&(n=void 0),n===Wo&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var P=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Ko(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ie,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await be(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var Tr=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Re=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Xo=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(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*Bf(r,e,t){let n=-1,i;for await(let o of Pt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function Jo(r){return r.single===!0}var If=(r,e,t)=>async function(i){if(i.length===1&&Jo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Jo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new I({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},u=T(F(a)),h=await be(u,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},Yo=async(r,e,t)=>t.layout(Bf(r,e,t),If(r,e,t));function Af(r){return Symbol.iterator in r}function Cf(r){return Symbol.asyncIterator in r}function Nf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Af(r))return async function*(){yield*r}();if(Cf(r))return r}catch{throw new Re("Content was invalid")}throw new Re("Content was invalid")}function Zo(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),Tf(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(Nf(i.content)))){let h=BigInt(u.byteLength);a+=h,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield u}}(),originalPath:o};yield async()=>Yo(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>Xo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Tf(r){return r.content!=null}var Qo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Re("Content was invalid");if(typeof t=="string"||t instanceof String)yield O(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Re("Content was invalid")}};var Df=174;function Yt(r){let e=r?.maxChildrenPerNode??Df;return async function t(n,i){let o=[];for await(let s of _r(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function zf(r){return r[Symbol.asyncIterator]!=null}function Lf(r){if(zf(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var es=Lf;var Ae=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Zt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Qt=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xe=class extends Ae{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Qt.bytes.byteLength:Zt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof Ae)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(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 zr=st(ns(),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 w0=We({name:"murmur3-32",code:35,encode:r=>Ff(zr.default.x86.hash32(r))}),Je=We({name:"murmur3-128",code:34,encode:r=>ct.fromHex(zr.default.x64.hash128(r))}),x0=We({name:"murmur3-x64-64",code:34,encode:r=>ct.fromHex(zr.default.x64.hash128(r)).subarray(0,8)});var ss=st(Lr(),1);var se=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new ss.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return as(this,e,t)}toJSON(){return this.serialize($f,Mf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?O(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(Rf);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 Rf(r){return!!r}function $f(r,e){return r.key}function Mf(r){return r}async function as(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await as(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Hf=[255,254,252,248,240,224,192,128],Vf=[1,3,7,15,31,63,127,255],Fr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=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=qf(e,t);return(r&n)>>>e}function qf(r,e){return Hf[r]&Vf[Math.min(e+r-1,7)]}function cs(r){function e(t){return t instanceof Pr?t:new Pr(t,r)}return e}var Pr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Fr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function yt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:cs(r.hashFn)};return new se(e)}async function Gf(r){return(await Je.encode(r)).slice(0,8).reverse()}var us=BigInt(34),Wf=8,xi=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Gf,bits:t.shardFanoutBits??Wf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=hs(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ls(this._bucket,e,this,this.options))yield{...t,path:this.path}}},fs=xi;async function*ls(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof se){let y;for await(let w of ls(m,e,null,n))y=w;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else if(Kf(m.value)){let y=m.value,w;for await(let k of y.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let y=m.value;if(y.cid==null)continue;let w=x+m.key,b=y.size;s.push({Name:w,Tsize:Number(b),Hash:y.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:us,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),g=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:g,unixfs:h,size:c}}function Kf(r){return typeof r.flush=="function"}function hs(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof se){let g=hs(f,null,t);o.push({Name:l,Tsize:Number(g),Hash:t.cidVersion===0?Zt:Qt})}else if(typeof f.value.flush=="function"){let c=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(c),Hash:t.cidVersion===0?Zt:Qt})}else{let g=f.value;if(g.cid==null)continue;let c=l+f.key,d=g.size;o.push({Name:c,Tsize:Number(d),Hash:g.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:us,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function bi(r,e,t,n){let i=e;e instanceof Xe&&e.estimateNodeSize()>t&&(i=await Xf(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 Xf(r,e){let t=new fs({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var ds=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Jf(r,e,t){let n=ds(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let u=n[a];s+=`${s!==""?"/":""}${u}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(u,r),e=await bi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Xe({root:!1,dir:!0,parent:o,parentKey:u,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(u,f),o=f}}return e}async function*ps(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function ms(r){return async function*(t,n){let i=new Xe({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await Jf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*ps(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*ps(a.child,n))}}async function*Ye(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,g=t.reduceSingleLeafToSelf??!0,c=t.chunker??Ut(),d=t.chunkValidator??Qo(),m=t.dagBuilder??Zo({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Yt(),bufferImporter:t.bufferImporter??Ko({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:g,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??ms({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let y of x(Pt(m(n,e),f),e))yield{cid:y.cid,path:y.path,unixfs:y.unixfs,size:y.size}}async function ys(r,e,t={}){let n=await br(Ye([r],e,t));if(n==null)throw new Tr("Nothing imported");return n}async function gs(r,e,t={}){return ys({content:r},e,t)}async function ws(r,e,t={}){return ys({content:r},e,t)}function Yf(r){return r[Symbol.asyncIterator]!=null}function Zf(r){if(Yf(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=Zf;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ce=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Ne=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},tr=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Ur=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},gt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Or=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},$e=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},M=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var rr={cidVersion:1,rawLeaves:!0,layout:Yt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*Rr(r,e,t={}){yield*Ye(r,e,{...rr,...t})}async function xs(r,e,t={}){let{cid:n}=await gs(r,e,{...rr,...t});return n}async function bs(r,e,t={}){let{cid:n}=await ws(r,e,{...rr,...t});return n}async function _s(r,e,t={}){if(r.path==null)throw new M("path is required");if(r.content==null)throw new M("content is required");let n=await _e(Rr([r],e,{...rr,...t,wrapWithDirectory:!0}));if(n==null)throw new M("Nothing imported");return n.cid}async function ks(r,e,t={}){if(r.content!=null)throw new M("Directories cannot have content, use addFile instead");let i=await(r.path==null?br:_e)(Rr([{...r,path:r.path??"-"}],e,{...rr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new M("Nothing imported");return i.cid}var $r=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)}},Mr=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)}},Hr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Vr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},jr=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Qf=["string","number","bigint","symbol"],el=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Ss(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Qf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(tl(r))return"Buffer";let t=rl(r);return t||"Object"}function tl(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function rl(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(el.includes(e))return e}var p=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var _=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var wt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",nl=new TextDecoder,il=new TextEncoder;function qr(r){return wt&&globalThis.Buffer.isBuffer(r)}function Gr(r){return r instanceof Uint8Array?qr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Is=wt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):vs(r,e,t):(r,e,t)=>t-e>64?nl.decode(r.subarray(e,t)):vs(r,e,t),Wr=wt?r=>r.length>64?globalThis.Buffer.from(r):Es(r):r=>r.length>64?il.encode(r):Es(r);var xt=wt?(r,e,t)=>qr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),As=wt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Gr(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},Cs=wt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Ns(r,e){if(qr(r)&&qr(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 Es(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 vs(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 _i(n)}var Bs=4096;function _i(r){let e=r.length;if(e<=Bs)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Bs));return t}var ol=256,Kr=class{constructor(e=ol){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Cs(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=xt(n,0,this.cursor)}else t=As(this.chunks,this.cursor);return e&&this.reset(),t}};var v="CBOR decode error:",bt="CBOR encode error:",nr=[];nr[23]=1;nr[24]=2;nr[25]=3;nr[26]=5;nr[27]=9;function Le(r,e,t){if(r.length-e<t)throw new Error(`${v} not enough data for type`)}var V=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<V[0])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<V[1])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Le(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<V[2])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Le(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<V[3])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${v} integers outside of the safe integer range are not supported`)}function Ts(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function Ds(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function zs(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function Ls(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 Fs(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function Ps(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function Us(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var ki=BigInt(-1),Os=BigInt(1);function Rs(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,ki-BigInt(i),9)}function Xr(r,e){let t=e.value,n=typeof t=="bigint"?t*ki-Os:t*-1-1;q(r,e.type.majorEncoded,n)}Xr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*ki-Os:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};Xr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function ir(r,e,t,n){Le(r,e,t+n);let i=xt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function $s(r,e,t,n){return ir(r,e,1,t)}function Ms(r,e,t,n){return ir(r,e,2,ae(r,e+1,n))}function Hs(r,e,t,n){return ir(r,e,3,ce(r,e+1,n))}function Vs(r,e,t,n){return ir(r,e,5,ue(r,e+1,n))}function js(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer bytes lengths not supported`);return ir(r,e,9,i)}function Jr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Wr(r.value):r.value),r.encodedBytes}function _t(r,e){let t=Jr(e);q(r,e.type.majorEncoded,t.length),r.push(t)}_t.encodedSize=function(e){let t=Jr(e);return q.encodedSize(t.length)+t.length};_t.compareTokens=function(e,t){return al(Jr(e),Jr(t))};function al(r,e){return r.length<e.length?-1:r.length>e.length?1:Ns(r,e)}function or(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,Is(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=xt(r,e+t,e+o)),s}function qs(r,e,t,n){return or(r,e,1,t,n)}function Gs(r,e,t,n){return or(r,e,2,ae(r,e+1,n),n)}function Ws(r,e,t,n){return or(r,e,3,ce(r,e+1,n),n)}function Ks(r,e,t,n){return or(r,e,5,ue(r,e+1,n),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 string lengths not supported`);return or(r,e,9,i,n)}var Js=_t;function kt(r,e,t,n){return new _(p.array,n,t)}function Ys(r,e,t,n){return kt(r,e,1,t)}function Zs(r,e,t,n){return kt(r,e,2,ae(r,e+1,n))}function Qs(r,e,t,n){return kt(r,e,3,ce(r,e+1,n))}function ea(r,e,t,n){return kt(r,e,5,ue(r,e+1,n))}function ta(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 kt(r,e,9,i)}function ra(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return kt(r,e,1,1/0)}function Yr(r,e){q(r,p.array.majorEncoded,e.value)}Yr.compareTokens=pe.compareTokens;Yr.encodedSize=function(e){return q.encodedSize(e.value)};function St(r,e,t,n){return new _(p.map,n,t)}function na(r,e,t,n){return St(r,e,1,t)}function ia(r,e,t,n){return St(r,e,2,ae(r,e+1,n))}function oa(r,e,t,n){return St(r,e,3,ce(r,e+1,n))}function sa(r,e,t,n){return St(r,e,5,ue(r,e+1,n))}function aa(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 St(r,e,9,i)}function ca(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return St(r,e,1,1/0)}function Zr(r,e){q(r,p.map.majorEncoded,e.value)}Zr.compareTokens=pe.compareTokens;Zr.encodedSize=function(e){return q.encodedSize(e.value)};function ua(r,e,t,n){return new _(p.tag,t,1)}function fa(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function la(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function ha(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function da(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function Qr(r,e){q(r,p.tag.majorEncoded,e.value)}Qr.compareTokens=pe.compareTokens;Qr.encodedSize=function(e){return q.encodedSize(e.value)};var dl=20,pl=21,ml=22,yl=23;function pa(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 ma(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 Si(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 ya(r,e,t,n){return Si(Ei(r,e+1),3,n)}function ga(r,e,t,n){return Si(vi(r,e+1),5,n)}function wa(r,e,t,n){return Si(ka(r,e+1),9,n)}function en(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|dl]);else if(n===!0)r.push([p.float.majorEncoded|pl]);else if(n===null)r.push([p.float.majorEncoded|ml]);else if(n===void 0)r.push([p.float.majorEncoded|yl]);else{let i,o=!1;(!t||t.float64!==!0)&&(ba(n),i=Ei(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(_a(n),i=vi(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(gl(n),i=ka(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}en.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){ba(n);let i=Ei(Se,1);if(n===i||Number.isNaN(n))return 3;if(_a(n),i=vi(Se,1),n===i)return 5}return 9};var xa=new ArrayBuffer(9),me=new DataView(xa,1),Se=new Uint8Array(xa,0);function ba(r){if(r===1/0)me.setUint16(0,31744,!1);else if(r===-1/0)me.setUint16(0,64512,!1);else if(Number.isNaN(r))me.setUint16(0,32256,!1);else{me.setFloat32(0,r);let e=me.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)me.setUint16(0,31744,!1);else if(t===0)me.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?me.setUint16(0,0):i<-14?me.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):me.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function Ei(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 _a(r){me.setFloat32(0,r,!1)}function vi(r,e){if(r.length-e<4)throw new Error(`${v} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function gl(r){me.setFloat64(0,r,!1)}function ka(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)}en.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${v} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function tn(r){return()=>{throw new Error(`${v} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Ts;S[25]=Ds;S[26]=zs;S[27]=Ls;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=Fs;S[57]=Ps;S[58]=Us;S[59]=Rs;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=$s;S[88]=Ms;S[89]=Hs;S[90]=Vs;S[91]=js;S[92]=z;S[93]=z;S[94]=z;S[95]=tn("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=qs;S[120]=Gs;S[121]=Ws;S[122]=Ks;S[123]=Xs;S[124]=z;S[125]=z;S[126]=z;S[127]=tn("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=Ys;S[152]=Zs;S[153]=Qs;S[154]=ea;S[155]=ta;S[156]=z;S[157]=z;S[158]=z;S[159]=ra;for(let r=160;r<=183;r++)S[r]=na;S[184]=ia;S[185]=oa;S[186]=sa;S[187]=aa;S[188]=z;S[189]=z;S[190]=z;S[191]=ca;for(let r=192;r<=215;r++)S[r]=ua;S[216]=fa;S[217]=la;S[218]=ha;S[219]=da;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=tn("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=pa;S[248]=tn("simple values are not supported");S[249]=ya;S[250]=ga;S[251]=wa;S[252]=z;S[253]=z;S[254]=z;S[255]=ma;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new _(p.negint,r,1);Ee[64]=new _(p.bytes,new Uint8Array(0),1);Ee[96]=new _(p.string,"",1);Ee[128]=new _(p.array,0,1);Ee[160]=new _(p.map,0,1);Ee[244]=new _(p.false,!1,1);Ee[245]=new _(p.true,!0,1);Ee[246]=new _(p.null,null,1);function xl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Xr,r[p.bytes.major]=_t,r[p.string.major]=Js,r[p.array.major]=Yr,r[p.map.major]=Zr,r[p.tag.major]=Qr,r[p.float.major]=en,r}var cg=xl(),ug=new Kr,rn=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(`${bt} object contains circular references`);return new r(t,e)}},Me={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},He={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?Me.true:Me.false},null(r,e,t,n){return Me.null},undefined(r,e,t,n){return Me.undefined},ArrayBuffer(r,e,t,n){return new _(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new _(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Me.emptyArray,new _(p.break)]:Me.emptyArray;n=rn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Bi(s,t,n);return t.addBreakTokens?[new _(p.array,r.length),i,new _(p.break)]:[new _(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Me.emptyMap,new _(p.break)]:Me.emptyMap;n=rn.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Bi(h,t,n),Bi(i?r.get(h):r[h],t,n)];return bl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function Bi(r,e={},t){let n=Ss(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${bt} unsupported type: ${n}`);return o(r,n,e,t)}function bl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var _l={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},nn=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=Ee[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${v} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},sr=Symbol.for("DONE"),on=Symbol.for("BREAK");function kl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Et(e,t);if(o===on){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed array`)}if(o===sr)throw new Error(`${v} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Sl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=Et(e,t);if(a===on){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed map`)}if(a===sr)throw new Error(`${v} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${v} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${v} found repeat map key "${a}"`);let u=Et(e,t);if(u===sr)throw new Error(`${v} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,u):i[a]=u}return n?o:i}function Et(r,e){if(r.done())return sr;let t=r.next();if(t.type===p.break)return on;if(t.type.terminal)return t.value;if(t.type===p.array)return kl(t,r,e);if(t.type===p.map)return Sl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=Et(r,e);return e.tags[t.value](n)}throw new Error(`${v} tag not supported (${t.value})`)}throw new Error("unsupported")}function Ii(r,e){if(!(r instanceof Uint8Array))throw new Error(`${v} data to decode must be a Uint8Array`);e=Object.assign({},_l,e);let t=e.tokenizer||new nn(r,e),n=Et(t,e);if(n===sr)throw new Error(`${v} did not find any content to decode`);if(n===on)throw new Error(`${v} got unexpected break`);return[n,r.subarray(t.pos())]}function ar(r,e){let[t,n]=Ii(r,e);if(n.length>0)throw new Error(`${v} too many terminals, data makes no sense`);return t}var Ea=42;function Bl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function Il(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Ea),new _(p.bytes,t)]}function Al(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Cl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var Sa={float64:!0,typeEncoders:{Object:Il,undefined:Al,number:Cl}},xg={...Sa,typeEncoders:{...Sa.typeEncoders}};function Nl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var sn={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};sn.tags[Ea]=Nl;var bg={...sn,tags:sn.tags.slice()};var va=113;var Ba=r=>ar(Bl(r),sn);var Aa=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(`${bt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Wr(JSON.stringify(t.value));e.push(n.length>32?Gr(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(`${bt} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var vt=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${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,_i(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 Ai(r,e){return e=Object.assign({tokenizer:new vt(r,e)},e),ar(r,e)}function zl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ci=class extends vt{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=Gt.decode(`m${o.value}`);return new _(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},Ni={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Ni.tags[42]=A.parse;var Ca=297;var Na=r=>{let e=zl(r),t=Object.assign(Ni,{tokenizer:new Ci(e,Ni)});return Ai(e,t)};var Og=new TextDecoder;var Rg=new TextEncoder;function Bt(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 jr(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Ll=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ba(u);return Bt(h,u,r,e,t,n,o)},Da=Ll;var Fl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Na(u);return Bt(h,u,r,e,t,n,o)},za=Fl;function Pl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var et=Pl;var Ul=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},It=Ul;var Ol=r=>{async function*e(t={}){let{start:n,end:i}=It(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Rl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=vr(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Ol(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},La=Rl;var $l=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Po(u);return Bt(h,u,r,e,t,n,o)},Fa=$l;var Ml=r=>{async function*e(t={}){let{start:n,end:i}=It(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Hl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Ml(u),depth:o,size:BigInt(u.length),node:u}}},Pa=Hl;var Vl=async function(r){return(await Je.encode(r)).slice(0,8).reverse()},jl=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Ua=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),ql=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Oa=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(c){throw new H(c.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let g=yt({hashFn:Vl,bits:Math.log2(Number(l.fanout))});n={rootBucket:g,hamtDepth:1,lastBucket:g}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await jl(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Ua(s.pos,o),u=ql(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=Ua(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let g=l.Name.substring(0,o),c=l.Name.substring(o);return!(g!==a||c!==""&&c!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=U(f),Oa(r,e,t,n,i)},Ra=Oa;function Gl(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var an=Gl;function Wl(r){return r[Symbol.asyncIterator]!=null}function Kl(r,e){let t=0;if(Wl(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=an(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 $a=Kl;function Xl(r){return r[Symbol.asyncIterator]!=null}function Jl(r,e){let t=0;if(Xl(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=an(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 At=Jl;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var cn=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),u=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=te(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new cn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new cn("task-complete"))})}u=!0,i.dispatchEvent(new cn("task-complete"))}catch(d){h=d,i.dispatchEvent(new cn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*g(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*c(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=te(),await a.promise),h!=null||(n?yield*g():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var un=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}},Ct=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new un(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 un(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 Ti=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function fn(r={}){return Yl(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Yl(r,e){e=e??{};let t=e.onEnd,n=new Ct,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,y)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Ct,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},g=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Ct,g(),{done:!0}),d=x=>(g(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:g,get readableLength(){return n.size},onEmpty:async x=>{let y=x?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let w,b;y!=null&&(w=new Promise((k,B)=>{b=()=>{B(new Ti)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&y!=null&&y?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}var ln=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 Ma(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new ln(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new ln(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 Di=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 Ma(this.readNext.promise,t?.signal,t)}};function Ha(){return new Di}function Zl(r){return r[Symbol.asyncIterator]!=null}async function Ql(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*eh(r){let e=new AbortController,t=Ha();Ql(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*th(r){for(let e of r)yield*e}function rh(...r){let e=[];for(let t of r)Zl(t)||e.push(t);return e.length===r.length?th(e):eh(r)}var Va=rh;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(zi(r)){let n=r;r=()=>n.source}else if(qa(r)||ja(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&zi(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++)zi(t[n])&&(t[n]=ih(t[n]));return nh(...t)}var nh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},ja=r=>r?.[Symbol.asyncIterator]!=null,qa=r=>r?.[Symbol.iterator]!=null,zi=r=>r==null?!1:r.sink!=null&&r.source!=null,ih=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=fn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(ja(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 Va(n,i())}return r.source};var oh=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=u.offset??0,f=u.length??e.Links.length,l=e.Links.slice(h,f);u.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,g=>At(g,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),g=>tt(g,{ordered:!0,concurrency:u.blockReadConcurrency}),g=>$a(g,c=>c!=null))}return a},Ga=oh;var Fi=st(Ka(),1);var ur=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Pi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Xa=r=>globalThis.DOMException===void 0?new Pi(r):new DOMException(r),Ja=r=>{let e=r.reason===void 0?Xa("This operation was aborted."):r.reason;return e instanceof Error?e:Xa(e)};function Ui(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(Ja(c)),a=()=>{l(Ja(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let g=new ur;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(c){l(c)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?f():i instanceof Error?l(i):(g.message=i??`Promise timed out after ${t} milliseconds`,l(g))},t),(async()=>{try{f(await r)}catch(c){l(c)}})()}).finally(()=>{h.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return h.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},h}function Oi(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var fr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,id:t.id,run:e};if(this.size===0||this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Oi(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}setPriority(e,t){let n=this.#e.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#e.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var lr=class extends Fi.default{#e;#s;#o=0;#d;#a;#p=0;#r;#c;#t;#m;#n=0;#u;#i;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:fr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#s=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#a=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#i=e.autoStart===!1}get#b(){return this.#s||this.#o<this.#d}get#_(){return this.#n<this.#u}#k(){this.#n--,this.#f(),this.emit("next")}#S(){this.#w(),this.#g(),this.#c=void 0}get#E(){let e=Date.now();if(this.#r===void 0){let t=this.#p-e;if(t<0)this.#o=this.#e?this.#n:0;else return this.#c===void 0&&(this.#c=setTimeout(()=>{this.#S()},t)),!0}return!1}#f(){if(this.#t.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#s||this.#r!==void 0||(this.#r=setInterval(()=>{this.#w()},this.#a),this.#p=Date.now()+this.#a)}#w(){this.#o===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#o=this.#e?this.#n:0,this.#l()}#l(){for(;this.#f(););}get concurrency(){return this.#u}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#l()}async#v(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#t.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#x++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#n++,this.#o++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ui(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#v(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ur&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#i?(this.#i=!1,this.#l(),this):this}pause(){this.#i=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#h("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#h("next",()=>this.#t.size<e)}async onIdle(){this.#n===0&&this.#t.size===0||await this.#h("idle")}async#h(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#n}get isPaused(){return this.#i}};async function Ya(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=et(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,g=l+a.blockSizes[h];if((i>=l&&i<g||o>=l&&o<=g||i<l&&o>g)&&u.push({link:f,blockStart:n}),n=g,n>o)break}await Te(u,h=>At(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>tt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:g}of h){let c;switch(f.Hash.code){case j:c=U(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new lr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:f.Hash})),await Ya(r,c,t,g,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var ch=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=It(h,u.offset,u.length);if(l===0n)return;let g=0n,c=l-f,d=fn();u.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),Ya(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(g+=BigInt(m.byteLength),g>c)throw d.end(),new Hr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");g===c&&d.end(),u.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:g,totalBytes:c,fileSize:h})),yield m}if(g<c)throw new Vr("Traversed entire DAG but did not read enough bytes")}return a},Ri=ch;var uh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Za(e,n,i,o,s,u)}return a};async function*Za(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let u=(a.fanout-1n).toString(16).length,h=Te(s,f=>At(f,l=>async()=>{let g=l.Name!=null?l.Name.substring(u):null;if(g!=null&&g!==""){let c=await t(l.Hash,g,`${e}/${g}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=U(c),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Za(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Qa=uh;var fh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,lh={raw:Ri,file:Ri,directory:Ga,"hamt-sharded-directory":Qa,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},hh=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=U(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(c){throw new H(c.message)}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await Ra(h,n[0],s):c=fh(h,n[0]),c==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let g=lh[f.type](r,h,f,t,i,o,s);if(g==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},ec=hh;var dh={[j]:ec,[Q]:Pa,[va]:Da,[Ca]:za,[si.code]:La,[Fo]:Fa},tc=async(r,e,t,n,i,o,s)=>{let a=dh[r.code];if(a==null)throw new Mr(`No resolver for code ${r.code}`);return a(r,e,t,n,tc,i,o,s)},rc=tc;var ph=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),mh=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=ph(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new $r(`Unknown path type ${r}`)};async function*$i(r,e,t={}){let{cid:n,toResolve:i}=mh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await rc(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($i(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*dn(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 lc=st(fc(),1),X=lc.default;function _h(r,e){try{if(typeof r=="string"&&r.length>0)return kh(r);if(typeof r=="number"&&isFinite(r))return e?.long?Eh(r):Sh(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 kh(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var gn=_h;function Sh(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 Eh(r){let e=Math.abs(r);return e>=864e5?yn(r,e,864e5,"day"):e>=36e5?yn(r,e,36e5,"hour"):e>=6e4?yn(r,e,6e4,"minute"):e>=1e3?yn(r,e,1e3,"second"):`${r} ms`}function yn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function vh(r){return typeof r=="object"&&r!==null&&"message"in r}function Hi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=gn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let g=0;g<f.length;g++)l=(l<<5)-l+f.charCodeAt(g),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,g=null,c,d;function m(...x){if(!m.enabled)return;let y=m,w=Number(new Date),b=w-(l||w);y.diff=b,y.prev=l,y.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(y,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(y,x),(y.log||t.log).apply(y,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{g=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let g=t(this.namespace+(typeof l>"u"?":":l)+f);return g.log=this.log,g}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,g=(typeof f=="string"?f:"").split(/[\s,]+/),c=g.length;for(l=0;l<c;l++)g[l]&&(f=g[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,g;for(l=0,g=t.skips.length;l<g;l++)if(t.skips[l].test(f))return!1;for(l=0,g=t.names.length;l<g;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function u(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var wn=Dh(),Bh=["#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 Ih(){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 Ah(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+gn(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}var Ch=console.debug??console.log??(()=>{});function Nh(r){try{r?wn?.setItem("debug",r):wn?.removeItem("debug")}catch{}}function Th(){let r;try{r=wn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Dh(){try{return localStorage}catch{}}function zh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var hc=Hi({formatArgs:Ah,save:Nh,load:Th,useColors:Ih,setupFormatters:zh,colors:Bh,storage:wn,log:Ch});var re=hc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Pe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":Gt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>r==null?"undefined":dc(r.stack)??dc(r.message)??r.toString();function Lh(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=Lh(`${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 dc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Gi=st(Lr(),1);function bn(r){function e(t){return t instanceof xn?t:new xn(t,r)}return e}var xn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Vi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Fh=[255,254,252,248,240,224,192,128],Ph=[1,3,7,15,31,63,127,255],Vi=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Uh(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 Uh(r,e,t){let n=Oh(e,t);return(r&n)>>>e}function Oh(r,e){return Fh[r]&Ph[Math.min(e+r-1,7)]}var hr=BigInt(Je.code),rt=8;async function Dt(r){return(await Je.encode(r)).subarray(0,8).reverse()}var yc=st(Lr(),1);var ve=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var ji=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},_n=class extends ji{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Dt,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=mc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of pc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*pc(r,e,t,n){let i=r._children,o=[],s=0n;for(let c=0;c<i.length;c++){let d=i.get(c);if(d==null)continue;let m=c.toString(16).toUpperCase().padStart(2,"0");if(d instanceof se){let x;for await(let y of pc(d,e,null,n))x=y;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Rh(d.value)){let x=d.value,y;for await(let b of x.flush(e))y=b,yield y;if(y==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else{let x=d.value;if(x.cid==null)continue;let y=m+d.key,w=x.size;o.push({Name:y,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:hr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(F(h)),l=await ve(f,e,n),g=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:g}}function Rh(r){return typeof r.flush=="function"}function mc(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=mc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?kn:Sn})}else if(typeof h.value.flush=="function"){let g=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(g),Hash:t.cidVersion===0?kn:Sn})}else{let l=h.value;if(l.cid==null)continue;let g=f+h.key,c=l.size;i.push({Name:g,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:hr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var kn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Sn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var qi=R("helia:unixfs:commands:utils:hamt-utils"),En=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),gc=async(r,e,t)=>{let n=new _n({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await _e(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},vn=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:hr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let g=T(F(s));if(o=await ve(g,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");qi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),g.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Bn=async(r,e,t,n)=>{let o=bn(Dt)(O(e)),s=[];for(;;){let a=await t.get(r,n),u=U(a),h=new yc.default,f=await o.take(rt),l=En(f);s.push({prefix:l,children:h,node:u});let g;for(let d of u.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(g=d)}if(g==null){qi("no link found with prefix %s for %s",l,e);break}let c=g.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=g.Hash,qi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function In(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=$h(r);else if(i.type==="hamt-sharded-directory")o=await wc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function $h(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?Sn.bytes.byteLength:kn.bytes.byteLength;return e}async function wc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===j){let u=await n.get(s.Hash,i),h=U(u);e+=await wc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function zt(r,e,t,n){if(r.node.Data==null)throw new M("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),Vh(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Hh(r,e,t,n);if(await In(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Mh(o,t);o.cid=s.cid,o.node=U(await t.get(s.cid,n))}return o}var Mh=async(r,e)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await gc(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},Hh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new tr;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},Vh=async(r,e,t,n)=>{let{path:i,hash:o}=await Bn(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,u=parseInt(a,16);De("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(De("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new tr;De("overwriting %s in sub-shard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was sub-shard?!");{De("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),g=s.node.Links.splice(l,1)[0],c=(g.Name??"").substring(2),m=bn(Dt)(O(c));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),y=En(x);g.Name=`${y}${c}`;let w=await o.take(rt),b=En(w);if(y===b){let B=new Gi.default;B.set(w,!0),i.push({prefix:b,children:B,node:{Links:[]}});continue}let k=new Gi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[g,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else De("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),De("adding %s to existing sub-shard",h);return vn(i,t,n)};async function Ve(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Lt(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 qh=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await es($i(i,t,n));if(o.length===0)throw new Ur("Could not find path in directory");return qh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ft(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Ve(o.cid,t,n),Lt(i.cid,i.name,t,n)]);r=(await zt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Gh=X.bind({ignoreUndefined:!0}),Wh={};async function*xc(r,e,t={}){let n=Gh(Wh,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 Or;if(o.content==null)throw new gt;yield*o.content(n)}var Kh=X.bind({ignoreUndefined:!0}),Xh=R("helia:unixfs:chmod"),Jh={recursive:!1,shardSplitThresholdBytes:262144};async function bc(r,e,t,n={}){let i=Kh(Jh,n),o=await ze(r,i.path,t,n);if(Xh("chmod %c %d",o.cid,e),i.recursive){let g=await Te(async function*(){for await(let c of dn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new I({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await ve(w,m,{...i,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${o.cid.toString()}`);return Ft(g.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new I({type:"file",data:s});else{let g=U(s);if(g.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=g.Links,a=I.unmarshal(g.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(o.cid.version,j,f);return await t.put(l,h),Ft(l,o,t,i)}var Yh=X.bind({ignoreUndefined:!0}),Zh=R("helia:unixfs:cp"),Qh={force:!1,shardSplitThresholdBytes:262144};async function _c(r,e,t,n,i={}){let o=Yh(Qh,i);if(t.includes("/"))throw new M("Name must not have slashes");let[s,a]=await Promise.all([Ve(e,n,o),Lt(r,t,n,o)]);return Zh('Adding %c as "%s" to %c',r,t,e),(await zt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var ed=X.bind({ignoreUndefined:!0}),td={};async function*kc(r,e,t={}){let n=ed(td,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 gt;if(o.type!=="directory")throw new $e;yield*o.content({offset:t.offset,length:t.length})}var rd=X.bind({ignoreUndefined:!0}),Sc=R("helia:unixfs:mkdir"),nd={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function Ec(r,e,t,n={}){let i=rd(nd,n);if(e.includes("/"))throw new M("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);Sc("creating %s",e);let a={Data:new I({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await oe.digest(u),f=A.create(i.cidVersion,j,h);await t.put(f,u);let[l,g]=await Promise.all([Ve(r,t,i),Lt(f,e,t,i)]);return Sc("adding empty dir called %s to %c",e,r),(await zt(l,g,t,{...i,allowOverwriting:i.force})).cid}var Cn=R("helia:unixfs:utils:remove-link");async function vc(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Cn(`removing ${e} from sharded directory`);let o=await od(r,e,t,n);return await In(o.node,t,n.shardSplitThresholdBytes,n)?o:(Cn("converting shard to flat directory %c",r.cid),sd(o,t,n))}return Cn(`removing link ${e} regular directory`),id(r,e,t,n)}var id=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await ve(i,t,{...n,cidVersion:r.cid.version});return Cn(`Updated regular directory ${o}`),{node:r.node,cid:o}},od=async(r,e,t,n)=>{let{path:i}=await Bn(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(g=>!(g.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return vn(i,t,n)},sd=async(r,e,t)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Z(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await ve(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var ad=X.bind({ignoreUndefined:!0}),cd=R("helia:unixfs:rm"),ud={shardSplitThresholdBytes:262144};async function Bc(r,e,t,n={}){let i=ad(ud,n);if(e.includes("/"))throw new M("Name must not have slashes");let o=await Ve(r,t,i);return cd("Removing %s from %c",e,r),(await vc(o,e,t,{...i,cidVersion:r.version})).cid}var Wi={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 fd(r,e){let t=Wi[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 ld(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Wi[e],i=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 Ki(r,{size:e=32,utf8Buffer:t}={}){if(!Wi[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return ld(r,e,t);r=Ac.encode(r)}return fd(r,e)}var dr={hash:r=>Number(Ki(r,{size:32})),hashV:(r,e)=>hd(dr.hash(r,e))};function hd(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),O(e,"base16")}var Cc=64,Be=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?kr(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var dd=500,pr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<dd;a++){let u=this.buckets[s].swap(t);if(u!=null&&(s=(s^u.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=O(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var mr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new pr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=O(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new pr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var Nc=1877,Nn=1604,pd=X.bind({ignoreUndefined:!0}),md=R("helia:unixfs:stat"),yd={};async function Tc(r,e,t={}){let n=pd(yd,t),i=await ze(r,t.path,e,n);md("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?bd(o):xd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?wd(o,e,t.filter??new mr({filterSize:1024}),t):gd(o);throw new Ce}function gd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?Nc:Nn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function wd(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:Nn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function xd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Nn,mtime:void 0,size:BigInt(r.node.byteLength)}}function bd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Nn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function 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=U(a),h;if(u.Data!=null&&(h=I.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Dc(f.Hash,e,_d(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Ne(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function _d(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 kd=X.bind({ignoreUndefined:!0}),Sd=R("helia:unixfs:touch"),Ed={recursive:!1,shardSplitThresholdBytes:262144};async function zc(r,e,t={}){let n=kd(Ed,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(Sd("touch %c %o",i.cid,o),n.recursive){let g=await Te(async function*(){for await(let c of dn(i.cid,e)){let d,m;if(c.type==="raw")d=new I({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await ve(w,m,{...n,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${i.cid.toString()}`);return Ft(g.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new I({data:s});else{let g=U(s);if(u=g.Links,g.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=I.unmarshal(g.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(i.cid.version,j,f);return await e.put(l,h),Ft(l,i,e,n)}var Tn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Rr(e,this.components.blockstore,t)}async addBytes(e,t={}){return xs(e,this.components.blockstore,t)}async addByteStream(e,t={}){return bs(e,this.components.blockstore,t)}async addFile(e,t={}){return _s(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return ks(e,this.components.blockstore,t)}async*cat(e,t={}){yield*xc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return bc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return _c(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*kc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return Ec(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)}};async function*Lc(){throw new Error("Not supported in browsers")}function Fc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:vd(r,e)}}async function*vd(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Ne("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function Bd(r){return new Tn(r)}return Mc(Id);})();
|
|
2
|
+
"use strict";var HeliaUnixfs=(()=>{var Dc=Object.create;var xr=Object.defineProperty;var zc=Object.getOwnPropertyDescriptor;var Lc=Object.getOwnPropertyNames;var Fc=Object.getPrototypeOf,Pc=Object.prototype.hasOwnProperty;var br=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),q=(r,e)=>{for(var t in e)xr(r,t,{get:e[t],enumerable:!0})},Ji=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Lc(e))!Pc.call(r,i)&&i!==t&&xr(r,i,{get:()=>e[i],enumerable:!(n=zc(e,i))||n.enumerable});return r};var Ft=(r,e,t)=>(t=r!=null?Dc(Fc(r)):{},Ji(e||!r||!r.__esModule?xr(t,"default",{value:r,enumerable:!0}):t,r)),Uc=r=>Ji(xr({},"__esModule",{value:!0}),r);var ns=br((er,Lr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(c){if(!Array.isArray(c)&&!ArrayBuffer.isView(c))return!1;for(var d=0;d<c.length;d++)if(!Number.isInteger(c[d])||c[d]<0||c[d]>255)return!1;return!0}function i(c,d){return(c&65535)*d+(((c>>>16)*d&65535)<<16)}function o(c,d){return c<<d|c>>>32-d}function s(c){return c^=c>>>16,c=i(c,2246822507),c^=c>>>13,c=i(c,3266489909),c^=c>>>16,c}function a(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=c[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]*d[3]+c[1]*d[2]+c[2]*d[1]+c[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(c,d){return d%=64,d===32?[c[1],c[0]]:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d|c[0]>>>32-d]:(d-=32,[c[1]<<d|c[0]>>>32-d,c[0]<<d|c[1]>>>32-d])}function f(c,d){return d%=64,d===0?c:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d]:[c[1]<<d-32,0]}function l(c,d){return[c[0]^d[0],c[1]^d[1]]}function g(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,y=d,w=0,b=3432918353,k=461845907,v=0;v<x;v=v+4)w=c[v]|c[v+1]<<8|c[v+2]<<16|c[v+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),y^=w,y=o(y,13),y=i(y,5)+3864292196;switch(w=0,m){case 3:w^=c[v+2]<<16;case 2:w^=c[v+1]<<8;case 1:w^=c[v],w=i(w,b),w=o(w,15),w=i(w,k),y^=w}return y^=c.length,y=s(y),y>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=d,w=d,b=d,k=d,v=0,C=0,E=0,D=0,ye=597399067,yr=2869860233,gr=951274213,wr=2716044179,N=0;N<x;N=N+16)v=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,C=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,E=c[N+8]|c[N+9]<<8|c[N+10]<<16|c[N+11]<<24,D=c[N+12]|c[N+13]<<8|c[N+14]<<16|c[N+15]<<24,v=i(v,ye),v=o(v,15),v=i(v,yr),y^=v,y=o(y,19),y+=w,y=i(y,5)+1444728091,C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=y,k=i(k,5)+850148119;switch(v=0,C=0,E=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,wr),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=c[N+11]<<24;case 11:E^=c[N+10]<<16;case 10:E^=c[N+9]<<8;case 9:E^=c[N+8],E=i(E,gr),E=o(E,17),E=i(E,wr),b^=E;case 8:C^=c[N+7]<<24;case 7:C^=c[N+6]<<16;case 6:C^=c[N+5]<<8;case 5:C^=c[N+4],C=i(C,yr),C=o(C,16),C=i(C,gr),w^=C;case 4:v^=c[N+3]<<24;case 3:v^=c[N+2]<<16;case 2:v^=c[N+1]<<8;case 1:v^=c[N],v=i(v,ye),v=o(v,15),v=i(v,yr),y^=v}return y^=c.length,w^=c.length,b^=c.length,k^=c.length,y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,y=s(y),w=s(w),b=s(b),k=s(k),y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,("00000000"+(y>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=[0,d],w=[0,d],b=[0,0],k=[0,0],v=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[c[E+4]|c[E+5]<<8|c[E+6]<<16|c[E+7]<<24,c[E]|c[E+1]<<8|c[E+2]<<16|c[E+3]<<24],k=[c[E+12]|c[E+13]<<8|c[E+14]<<16|c[E+15]<<24,c[E+8]|c[E+9]<<8|c[E+10]<<16|c[E+11]<<24],b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b),y=h(y,27),y=a(y,w),y=a(u(y,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k),w=h(w,31),w=a(w,y),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[E+14]],48));case 14:k=l(k,f([0,c[E+13]],40));case 13:k=l(k,f([0,c[E+12]],32));case 12:k=l(k,f([0,c[E+11]],24));case 11:k=l(k,f([0,c[E+10]],16));case 10:k=l(k,f([0,c[E+9]],8));case 9:k=l(k,[0,c[E+8]]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k);case 8:b=l(b,f([0,c[E+7]],56));case 7:b=l(b,f([0,c[E+6]],48));case 6:b=l(b,f([0,c[E+5]],40));case 5:b=l(b,f([0,c[E+4]],32));case 4:b=l(b,f([0,c[E+3]],24));case 3:b=l(b,f([0,c[E+2]],16));case 2:b=l(b,f([0,c[E+1]],8));case 1:b=l(b,[0,c[E]]),b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b)}return y=l(y,[0,c.length]),w=l(w,[0,c.length]),y=a(y,w),w=a(w,y),y=g(y),w=g(w),y=a(y,w),w=a(w,y),("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof er<"u"?(typeof Lr<"u"&&Lr.exports&&(er=Lr.exports=t),er.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(er)});var os=br((h0,is)=>{is.exports=ns()});var Pr=br((x0,as)=>{"use strict";as.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(zf,0),u=~(4294967295<<o+1),h=ss(i&u);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(Lf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let u=Math.min(n,t),h=~(255<<u),f=o&h;i|=f<<8-t,o=o>>>u,n-=u,t-=u,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(Ff)}};function zf(r,e){return r+ss(e)}function ss(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Lf(r,e){return r[0]-e[0]}function Ff(r){return r[1]}});var Qa=br((Mw,Pi)=>{"use strict";var ch=Object.prototype.hasOwnProperty,Y="~";function cr(){}Object.create&&(cr.prototype=Object.create(null),new cr().__proto__||(Y=!1));function uh(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Za(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new uh(t,n||r,i),s=Y?Y+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function mn(r,e){--r._eventsCount===0?r._events=new cr:delete r._events[e]}function X(){this._events=new cr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)ch.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};X.prototype.listeners=function(e){var t=Y?Y+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};X.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};X.prototype.emit=function(e,t,n,i,o,s){var a=Y?Y+e:e;if(!this._events[a])return!1;var u=this._events[a],h=arguments.length,f,l;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,i),!0;case 5:return u.fn.call(u.context,t,n,i,o),!0;case 6:return u.fn.call(u.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];u.fn.apply(u.context,f)}else{var g=u.length,c;for(l=0;l<g;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[l].context,f)}}return!0};X.prototype.on=function(e,t,n){return Za(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return Za(this,e,t,n,!0)};X.prototype.removeListener=function(e,t,n,i){var o=Y?Y+e:e;if(!this._events[o])return this;if(!t)return mn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&mn(this,o);else{for(var a=0,u=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&u.push(s[a]);u.length?this._events[o]=u.length===1?u[0]:u:mn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&mn(this,t)):(this._events=new cr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Pi<"u"&&(Pi.exports=X)});var Ed={};q(Ed,{globSource:()=>Nc,unixfs:()=>Sd,urlSource:()=>Tc});function Oc(r){return r[Symbol.asyncIterator]!=null}function Rc(r){if(Oc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var _r=Rc;function $c(r){return r[Symbol.asyncIterator]!=null}function Mc(r,e=1){return e=Number(e),$c(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var kr=Mc;async function*Pt(r,e=1){for await(let t of kr(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function je(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Sr(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Zi=Symbol.for("@achingbrain/uint8arraylist");function Yi(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function Er(r){return!!r?.[Zi]}var ot=class r{bufs;length;[Zi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(Er(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(Er(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Yi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Yi(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(Er(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return je(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:je(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,u=a+s.byteLength;if(i=u,e>=u)continue;let h=e>=a&&e<u,f=t>a&&t<=u;if(h&&f){if(e===a&&t===u){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===u){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!Er(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let g=h;g>=0;g--){let c=this.get(l+g);if(n[g]!==c){f=Math.max(1,g-a[c]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!Sr(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};var Hc=262144,Ut=(r={})=>{let e=r.chunkSize??Hc;return async function*(n){let i=new ot,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new ot,o=0;else{let u=new ot;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};q($,{code:()=>j,createLink:()=>xo,createNode:()=>wo,decode:()=>U,encode:()=>T,name:()=>Mu,prepare:()=>F,validate:()=>Wn});var $n={};q($n,{base32:()=>Pe,base32hex:()=>tu,base32hexpad:()=>nu,base32hexpadupper:()=>iu,base32hexupper:()=>ru,base32pad:()=>Qc,base32padupper:()=>eu,base32upper:()=>Zc,base32z:()=>ou});var st={};q(st,{coerce:()=>le,empty:()=>Qi,equals:()=>zn,fromHex:()=>jc,fromString:()=>Ln,isBinary:()=>Gc,toHex:()=>Vc,toString:()=>Fn});var Qi=new Uint8Array(0);function Vc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function jc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):Qi}function zn(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function le(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Gc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Ln(r){return new TextEncoder().encode(r)}function Fn(r){return new TextDecoder().decode(r)}function qc(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,u=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,y=0,w=d.length;y!==w&&d[y]===0;)y++,m++;for(var b=(w-y)*f+1>>>0,k=new Uint8Array(b);y!==w;){for(var v=d[y],C=0,E=b-1;(v!==0||C<x)&&E!==-1;E--,C++)v+=256*k[E]>>>0,k[E]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");x=C,y++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function g(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,y=0;d[m]===u;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var v=0,C=w-1;(k!==0||v<y)&&C!==-1;C--,v++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");y=v,m++}if(d[m]!==" "){for(var E=w-y;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function c(d){var m=g(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:g,decode:c}}var Wc=qc,Kc=Wc,eo=Kc;var Pn=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Un=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return to(this,e)}},On=class{decoders;constructor(e){this.decoders=e}or(e){return to(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function to(r,e){return new On({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Rn=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Pn(e,t,n),this.decoder=new Un(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function at({name:r,prefix:e,encode:t,decode:n}){return new Rn(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=eo(t,r);return at({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Xc(r,e,t,n){let i=r.length;for(;r[i-1]==="=";)--i;let o=new Uint8Array(i*t/8|0),s=0,a=0,u=0;for(let h=0;h<i;++h){let f=e[r[h]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|f,s+=t,s>=8&&(s-=8,o[u++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return o}function Jc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;(o.length*t&7)!==0;)o+="=";return o}function Yc(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function L({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=Yc(n);return at({prefix:e,name:r,encode(o){return Jc(o,n,t)},decode(o){return Xc(o,i,t,r)}})}var Pe=L({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Zc=L({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Qc=L({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),eu=L({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),tu=L({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),ru=L({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),nu=L({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),iu=L({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ou=L({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Mn={};q(Mn,{base36:()=>Ot,base36upper:()=>su});var Ot=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),su=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Hn={};q(Hn,{base58btc:()=>he,base58flickr:()=>au});var he=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),au=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var cu=io,ro=128,uu=127,fu=~uu,lu=Math.pow(2,31);function io(r,e,t){e=e||[],t=t||0;for(var n=t;r>=lu;)e[t++]=r&255|ro,r/=128;for(;r&fu;)e[t++]=r&255|ro,r>>>=7;return e[t]=r|0,io.bytes=t-n+1,e}var hu=Vn,du=128,no=127;function Vn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Vn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&no)<<i:(s&no)*Math.pow(2,i),i+=7}while(s>=du);return Vn.bytes=o-n,t}var pu=Math.pow(2,7),mu=Math.pow(2,14),yu=Math.pow(2,21),gu=Math.pow(2,28),wu=Math.pow(2,35),xu=Math.pow(2,42),bu=Math.pow(2,49),_u=Math.pow(2,56),ku=Math.pow(2,63),Su=function(r){return r<pu?1:r<mu?2:r<yu?3:r<gu?4:r<wu?5:r<xu?6:r<bu?7:r<_u?8:r<ku?9:10},Eu={encode:cu,decode:hu,encodingLength:Su},Bu=Eu,Rt=Bu;function $t(r,e=0){return[Rt.decode(r,e),Rt.decode.bytes]}function ct(r,e,t=0){return Rt.encode(r,e,t),e}function ut(r){return Rt.encodingLength(r)}function Ge(r,e){let t=e.byteLength,n=ut(r),i=n+ut(t),o=new Uint8Array(i+t);return ct(r,o,0),ct(t,o,n),o.set(e,i),new ft(r,t,e,o)}function vr(r){let e=le(r),[t,n]=$t(e),[i,o]=$t(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ft(t,i,s,e)}function oo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&zn(r.bytes,t.bytes)}}var ft=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function so(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Iu(t,jn(r),e??he.encoder);default:return Au(t,jn(r),e??Pe.encoder)}}var ao=new WeakMap;function jn(r){let e=ao.get(r);if(e==null){let t=new Map;return ao.set(r,t),t}return e}var A=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Mt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Cu)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=Ge(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&oo(e.multihash,n.multihash)}toString(e){return so(this,e)}toJSON(){return{"/":so(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??co(n,i,o.bytes))}else if(t[Nu]===!0){let{version:n,multihash:i,code:o}=t,s=vr(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Mt)throw new Error(`Version 0 CID must use dag-pb (code: ${Mt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=co(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Mt,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=le(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ft(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,g]=$t(e.subarray(t));return t+=g,l},i=n(),o=Mt;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,multihashSize:f,size:h}}static parse(e,t){let[n,i]=vu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return jn(o).set(n,e),o}};function vu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Pe.prefix:{let t=e??Pe;return[Pe.prefix,t.decode(r)]}case Ot.prefix:{let t=e??Ot;return[Ot.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Iu(r,e,t){let{prefix:n}=t;if(n!==he.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function Au(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Mt=112,Cu=18;function co(r,e,t){let n=ut(r),i=n+ut(e),o=new Uint8Array(i+t.byteLength);return ct(r,o,0),ct(e,o,n),o.set(t,i),o}var Nu=Symbol.for("@ipld/js-cid/CID");var Tu=new TextDecoder;function Gn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function Ir(r,e){let t;[t,e]=Gn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function uo(r,e){let t;return[t,e]=Gn(r,e),[t&7,t>>3,e]}function Du(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=uo(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=Ir(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=Ir(r,n),e.Name=Tu.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Gn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function fo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=uo(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(u===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Ir(r,t),n&&(i=!0)}else if(u===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Ir(r,t),n.push(Du(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${u}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var ho=new TextEncoder,lo=2**32,zu=2**31;function Lu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Ht(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=ho.encode(r.Name);t-=n.length,e.set(n,t),t=Ht(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ht(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function po(r){let e=Pu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ht(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Lu(r.Links[i],t.subarray(0,n));n-=o,n=Ht(t,n,o)-1,t[n]=18}return t}function Fu(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=ho.encode(r.Name).length;e+=1+t+ht(t)}return typeof r.Tsize=="number"&&(e+=1+ht(r.Tsize)),e}function Pu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+ht(t)}if(r.Links)for(let t of r.Links){let n=Fu(t);e+=1+n+ht(n)}return e}function Ht(r,e,t){e-=ht(t);let n=e;for(;t>=zu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function ht(r){return r%2===0&&r++,Math.floor((Uu(r)+6)/7)}function Uu(r){let e=0;return r>=lo&&(r=Math.floor(r/lo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Ou[r]}var Ou=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var Ru=["Data","Links"],$u=["Hash","Name","Tsize"],qn=new TextEncoder;function yo(r,e){if(r===e)return 0;let t=r.Name?qn.encode(r.Name):[],n=e.Name?qn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function mo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function go(r){if(typeof r.asCID=="object"){let t=A.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function F(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=qn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(go),e.Links.sort(yo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Wn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!mo(r,Ru))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!mo(t,$u))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&yo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function wo(r,e=[]){return F({Data:r,Links:e})}function xo(r,e,t){return go({Hash:t,Name:r,Tsize:e})}function bo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Mu="dag-pb",j=112;function T(r){Wn(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),po(e)}function U(r){let e=bo(r),t=fo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var Vt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}},Ar=class r extends Error{static name="InvalidUnixFSMessageError";static code="ERR_INVALID_MESSAGE";name=r.name;code=r.code;constructor(e="Invalid message"){super(e)}};var Hu=Math.pow(2,7),Vu=Math.pow(2,14),ju=Math.pow(2,21),_o=Math.pow(2,28),ko=Math.pow(2,35),So=Math.pow(2,42),Eo=Math.pow(2,49),J=128,Ue=127;function jt(r){if(r<Hu)return 1;if(r<Vu)return 2;if(r<ju)return 3;if(r<_o)return 4;if(r<ko)return 5;if(r<So)return 6;if(r<Eo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Bo(r,e,t=0){switch(jt(r)){case 8:e[t++]=r&255|J,r/=128;case 7:e[t++]=r&255|J,r/=128;case 6:e[t++]=r&255|J,r/=128;case 5:e[t++]=r&255|J,r/=128;case 4:e[t++]=r&255|J,r>>>=7;case 3:e[t++]=r&255|J,r>>>=7;case 2:e[t++]=r&255|J,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function vo(r,e){let t=r[e],n=0;if(n+=t&Ue,t<J||(t=r[e+1],n+=(t&Ue)<<7,t<J)||(t=r[e+2],n+=(t&Ue)<<14,t<J)||(t=r[e+3],n+=(t&Ue)<<21,t<J)||(t=r[e+4],n+=(t&Ue)*_o,t<J)||(t=r[e+5],n+=(t&Ue)*ko,t<J)||(t=r[e+6],n+=(t&Ue)*So,t<J)||(t=r[e+7],n+=(t&Ue)*Eo,t<J))return n;throw new RangeError("Could not decode varint")}var Kn=new Float32Array([-0]),Oe=new Uint8Array(Kn.buffer);function Io(r,e,t){Kn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Ao(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Kn[0]}var Xn=new Float64Array([-0]),W=new Uint8Array(Xn.buffer);function Co(r,e,t){Xn[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function No(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],Xn[0]}var Gu=BigInt(Number.MAX_SAFE_INTEGER),qu=BigInt(Number.MIN_SAFE_INTEGER),ie=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return qe;if(e<Gu&&e>qu)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>To&&(i=0n,++n>To&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return qe;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):qe}},qe=new ie(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var To=4294967296n;function Do(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function zo(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Jn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Cr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Yn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,we(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw we(this,4);return Cr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Cr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=Ao(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=No(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return zo(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new ie(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw we(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw we(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw we(this,8);let e=Cr(this.buf,this.pos+=4),t=Cr(this.buf,this.pos+=4);return new ie(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=vo(this.buf,this.pos);return this.pos+=jt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Zn(r){return new Yn(r instanceof Uint8Array?r:r.subarray())}function Gt(r,e,t){let n=Zn(r);return e.decode(n,void 0,t)}var Qn={};q(Qn,{base10:()=>Wu});var Wu=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var ei={};q(ei,{base16:()=>Ku,base16upper:()=>Xu});var Ku=L({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Xu=L({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ti={};q(ti,{base2:()=>Ju});var Ju=L({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ri={};q(ri,{base256emoji:()=>tf});var Fo=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Yu=Fo.reduce((r,e,t)=>(r[t]=e,r),[]),Zu=Fo.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function Qu(r){return r.reduce((e,t)=>(e+=Yu[t],e),"")}function ef(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=Zu[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var tf=at({prefix:"\u{1F680}",name:"base256emoji",encode:Qu,decode:ef});var ni={};q(ni,{base64:()=>qt,base64pad:()=>rf,base64url:()=>nf,base64urlpad:()=>of});var qt=L({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),rf=L({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),nf=L({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),of=L({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ii={};q(ii,{base8:()=>sf});var sf=L({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var oi={};q(oi,{identity:()=>af});var af=at({prefix:"\0",name:"identity",encode:r=>Fn(r),decode:r=>Ln(r)});var Dp=new TextEncoder,cf=new TextDecoder;var Po=512;function Uo(r){return JSON.parse(cf.decode(r))}var Ie={};q(Ie,{code:()=>Q,decode:()=>lf,encode:()=>ff,name:()=>uf});var uf="raw",Q=85;function ff(r){return le(r)}function lf(r){return le(r)}var ci={};q(ci,{identity:()=>ai});var Oo=0,hf="identity",Ro=le;function df(r){return Ge(Oo,Ro(r))}var ai={code:Oo,name:hf,encode:Ro,digest:df};var fi={};q(fi,{sha256:()=>oe,sha512:()=>pf});function We({name:r,code:e,encode:t}){return new ui(r,e,t)}var ui=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Ge(this.code,t):t.then(n=>Ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Mo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=We({name:"sha2-256",code:18,encode:Mo("SHA-256")}),pf=We({name:"sha2-512",code:19,encode:Mo("SHA-512")});var li={...oi,...ti,...ii,...Qn,...ei,...$n,...Mn,...Hn,...ni,...ri},Gp={...fi,...ci};function Vo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Ho=Vo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),hi=Vo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),mf={utf8:Ho,"utf-8":Ho,hex:li.base16,latin1:hi,ascii:hi,binary:hi,...li},jo=mf;function O(r,e="utf8"){let t=jo[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function di(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var Ke=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function pi(){}var yi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},yf=di();function gf(r){return globalThis.Buffer!=null?ne(r):yf(r)}var Kt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ke(pi,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ke(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new gi((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Nr,10,ie.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=ie.fromBigInt(e);return this._push(Nr,t.length(),t)}uint64Number(e){return this._push(Bo,jt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=ie.fromBigInt(e).zzEncode();return this._push(Nr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Nr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(mi,1,e?1:0)}fixed32(e){return this._push(Wt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Wt,4,t.lo)._push(Wt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Io,4,e)}double(e){return this._push(Co,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(mi,1,0):this.uint32(t)._push(xf,t,e)}string(e){let t=Do(e);return t!==0?this.uint32(t)._push(Jn,t,e):this._push(mi,1,0)}fork(){return this.states=new yi(this),this.head=this.tail=new Ke(pi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ke(pi,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=gf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function mi(r,e,t){e[t]=r&255}function wf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var gi=class extends Ke{next;constructor(e,t){super(wf,e,t),this.next=void 0}};function Nr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Wt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function xf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Kt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(bf,e,r),this},Kt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(_f,e,r),this});function bf(r,e,t){e.set(r,t)}function _f(r,e,t){r.length<40?Jn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(O(r),t)}function wi(){return new Kt}function Xt(r,e){let t=wi();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var dt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(dt||(dt={}));function Tr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function xi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Tr("enum",dt.VARINT,t,n)}function Jt(r,e){return Tr("message",dt.LENGTH_DELIMITED,r,e)}var xe;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>xi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Jt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Dr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let u=i.uint32();switch(u>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Dr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Xt(i,r.codec()),r.decode=i=>Gt(i,r.codec())})(xe||(xe={}));var Dr;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Xt(t,r.codec()),r.decode=t=>Gt(t,r.codec())})(Dr||(Dr={}));var Go;(function(r){let e;r.codec=()=>(e==null&&(e=Jt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Xt(t,r.codec()),r.decode=t=>Gt(t,r.codec())})(Go||(Go={}));var qo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},kf=["directory","hamt-sharded-directory"],Wo=parseInt("0644",8),Ko=parseInt("0755",8),Xo=BigInt(1024),I=class r{static unmarshal(e){let t=xe.decode(e);if(t.fanout!=null&&t.fanout>Xo)throw new Ar(`Fanout size was too large - ${t.fanout} > ${Xo}`);let n=new r({type:qo[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:u}=e;if(t!=null&&!Object.values(qo).includes(t))throw new Vt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Ko:Wo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return kf.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=xe.DataType.Raw;break;case"directory":e=xe.DataType.Directory;break;case"file":e=xe.DataType.File;break;case"metadata":e=xe.DataType.Metadata;break;case"symlink":e=xe.DataType.Symlink;break;case"hamt-sharded-directory":e=xe.DataType.HAMTShard;break;default:throw new Vt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Wo&&!this.isDirectory()&&(n=void 0),n===Ko&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var P=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Jo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ie,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await be(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var zr=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Re=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Yo=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(F({Data:n.marshal()})),o=await be(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*Sf(r,e,t){let n=-1,i;for await(let o of Pt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function Zo(r){return r.single===!0}var Ef=(r,e,t)=>async function(i){if(i.length===1&&Zo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Zo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new I({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},u=T(F(a)),h=await be(u,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},Qo=async(r,e,t)=>t.layout(Sf(r,e,t),Ef(r,e,t));function Bf(r){return Symbol.iterator in r}function vf(r){return Symbol.asyncIterator in r}function If(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Bf(r))return async function*(){yield*r}();if(vf(r))return r}catch{throw new Re("Content was invalid")}throw new Re("Content was invalid")}function es(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),Af(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let u=0n;for await(let h of r.chunker(r.chunkValidator(If(i.content)))){let f=BigInt(h.byteLength);u+=f,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:u,chunkSize:f,path:i.path})),yield h}}(),originalPath:o},a=r.fileBuilder??Qo;yield async()=>a(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o},a=r.dirBuilder??Yo;yield async()=>a(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Af(r){return r.content!=null}var ts=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Re("Content was invalid");if(typeof t=="string"||t instanceof String)yield O(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Re("Content was invalid")}};var Cf=174;function Yt(r){let e=r?.maxChildrenPerNode??Cf;return async function t(n,i){let o=[];for await(let s of kr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Nf(r){return r[Symbol.asyncIterator]!=null}function Tf(r){if(Nf(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var rs=Tf;var Ae=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Zt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Qt=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xe=class extends Ae{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Qt.bytes.byteLength:Zt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof Ae)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(F(i)),s=await be(o,e,this.options),a=o.length+i.Links.reduce((u,h)=>u+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Fr=Ft(os(),1);function Df(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var m0=We({name:"murmur3-32",code:35,encode:r=>Df(Fr.default.x86.hash32(r))}),Je=We({name:"murmur3-128",code:34,encode:r=>st.fromHex(Fr.default.x64.hash128(r))}),y0=We({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Fr.default.x64.hash128(r)).subarray(0,8)});var cs=Ft(Pr(),1);var se=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new cs.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return us(this,e,t)}toJSON(){return this.serialize(Uf,Of)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?O(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(Pf);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function Pf(r){return!!r}function Uf(r,e){return r.key}function Of(r){return r}async function us(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await us(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Rf=[255,254,252,248,240,224,192,128],$f=[1,3,7,15,31,63,127,255],Ur=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Mf(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Mf(r,e,t){let n=Hf(e,t);return(r&n)>>>e}function Hf(r,e){return Rf[r]&$f[Math.min(e+r-1,7)]}function fs(r){function e(t){return t instanceof Or?t:new Or(t,r)}return e}var Or=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Ur(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function pt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:fs(r.hashFn)};return new se(e)}async function Vf(r){return(await Je.encode(r)).slice(0,8).reverse()}var ls=BigInt(34),jf=8,bi=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Vf,bits:t.shardFanoutBits??jf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ps(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ds(this._bucket,e,this,this.options))yield{...t,path:this.path}}},hs=bi;async function*ds(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof se){let y;for await(let w of ds(m,e,null,n))y=w;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else if(Gf(m.value)){let y=m.value,w;for await(let k of y.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let y=m.value;if(y.cid==null)continue;let w=x+m.key,b=y.size;s.push({Name:w,Tsize:Number(b),Hash:y.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:ls,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),g=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:g,unixfs:h,size:c}}function Gf(r){return typeof r.flush=="function"}function ps(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof se){let g=ps(f,null,t);o.push({Name:l,Tsize:Number(g),Hash:t.cidVersion===0?Zt:Qt})}else if(typeof f.value.flush=="function"){let c=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(c),Hash:t.cidVersion===0?Zt:Qt})}else{let g=f.value;if(g.cid==null)continue;let c=l+f.key,d=g.size;o.push({Name:c,Tsize:Number(d),Hash:g.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ls,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function _i(r,e,t,n){let i=e;e instanceof Xe&&e.estimateNodeSize()>t&&(i=await qf(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return _i(i,o,t,n)}return i}async function qf(r,e){let t=new hs({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var ms=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Wf(r,e,t){let n=ms(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let u=n[a];s+=`${s!==""?"/":""}${u}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(u,r),e=await _i(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Xe({root:!1,dir:!0,parent:o,parentKey:u,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(u,f),o=f}}return e}async function*ys(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function gs(r){return async function*(t,n){let i=new Xe({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await Wf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*ys(i,n);else for(let a of i.eachChildSeries())a!=null&&(yield*ys(a.child,n))}}async function*Ye(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,g=t.reduceSingleLeafToSelf??!0,c=t.chunker??Ut(),d=t.chunkValidator??ts(),m=t.dagBuilder??es({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Yt(),bufferImporter:t.bufferImporter??Jo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:g,cidVersion:a,onProgress:t.onProgress,dirBuilder:t.dirBuilder,fileBuilder:t.fileBuilder}),x=t.treeBuilder??gs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let y of x(Pt(m(n,e),f),e))yield{cid:y.cid,path:y.path,unixfs:y.unixfs,size:y.size}}async function ws(r,e,t={}){let n=await _r(Ye([r],e,t));if(n==null)throw new zr("Nothing imported");return n}async function xs(r,e,t={}){return ws({content:r},e,t)}async function bs(r,e,t={}){return ws({content:r},e,t)}function Kf(r){return r[Symbol.asyncIterator]!=null}function Xf(r){if(Kf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var _e=Xf;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ce=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Ne=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},tr=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Rr=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},mt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},$r=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},$e=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},M=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var rr={cidVersion:1,rawLeaves:!0,layout:Yt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*Mr(r,e,t={}){yield*Ye(r,e,{...rr,...t})}async function _s(r,e,t={}){let{cid:n}=await xs(r,e,{...rr,...t});return n}async function ks(r,e,t={}){let{cid:n}=await bs(r,e,{...rr,...t});return n}async function Ss(r,e,t={}){if(r.path==null)throw new M("path is required");if(r.content==null)throw new M("content is required");let n=await _e(Mr([r],e,{...rr,...t,wrapWithDirectory:!0}));if(n==null)throw new M("Nothing imported");return n.cid}async function Es(r,e,t={}){if(r.content!=null)throw new M("Directories cannot have content, use addFile instead");let i=await(r.path==null?_r:_e)(Mr([{...r,path:r.path??"-"}],e,{...rr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new M("Nothing imported");return i.cid}function yt(r){if(typeof r!="object"||r===null)return!1;let e=Object.getPrototypeOf(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)}var{hasOwnProperty:vs}=Object.prototype,{propertyIsEnumerable:Jf}=Object,gt=(r,e,t)=>{Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})},Yf=void 0,Bs={concatArrays:!1,ignoreUndefined:!1},Hr=r=>{let e=[];for(let t in r)vs.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)Jf.call(r,n)&&e.push(n)}return e};function wt(r){return Array.isArray(r)?Zf(r):yt(r)?Qf(r):r}function Zf(r){let e=r.slice(0,0);return Hr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}function Qf(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Hr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}var Is=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?gt(r,i,ki(r[i],e[i],n)):gt(r,i,wt(e[i])))}),r),el=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)vs.call(o,a)&&(s.push(String(a)),o===r?gt(n,i++,o[a]):gt(n,i++,wt(o[a])));n=Is(n,o,Hr(o).filter(a=>!s.includes(a)),t)}),n};function ki(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?el(r,e,t):!yt(e)||!yt(r)?wt(e):Is(r,e,Hr(e),t)}function K(...r){let e=ki(wt(Bs),this!==Yf&&this||{},Bs),t={_:{}};for(let n of r)if(n!==void 0){if(!yt(n))throw new TypeError("`"+n+"` is not an Option Object");t=ki(t,{_:n},e)}return t._}var Vr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},de=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},jr=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},H=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},Gr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},qr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},Wr=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var tl=["string","number","bigint","symbol"],rl=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function As(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(tl.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(nl(r))return"Buffer";let t=il(r);return t||"Object"}function nl(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function il(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(rl.includes(e))return e}var p=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var _=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var xt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",ol=new TextDecoder,sl=new TextEncoder;function Kr(r){return xt&&globalThis.Buffer.isBuffer(r)}function Xr(r){return r instanceof Uint8Array?Kr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Ds=xt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Ns(r,e,t):(r,e,t)=>t-e>64?ol.decode(r.subarray(e,t)):Ns(r,e,t),Jr=xt?r=>r.length>64?globalThis.Buffer.from(r):Cs(r):r=>r.length>64?sl.encode(r):Cs(r);var bt=xt?(r,e,t)=>Kr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),zs=xt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Xr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Ls=xt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Fs(r,e){if(Kr(r)&&Kr(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function Cs(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function Ns(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,u,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],u=r[e+2],(a&192)===128&&(u&192)===128&&(f=(i&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],u=r[e+2],h=r[e+3],(a&192)===128&&(u&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(u&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return Si(n)}var Ts=4096;function Si(r){let e=r.length;if(e<=Ts)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ts));return t}var al=256,Yr=class{constructor(e=al){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Ls(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=bt(n,0,this.cursor)}else t=zs(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",_t="CBOR encode error:",nr=[];nr[23]=1;nr[24]=2;nr[25]=3;nr[26]=5;nr[27]=9;function Le(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var V=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<V[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<V[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Le(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<V[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Le(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<V[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function Ps(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function Us(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function Os(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function Rs(r,e,t,n){return new _(p.uint,fe(r,e+1,n),9)}function pe(r,e){return G(r,0,e.value)}function G(r,e,t){if(t<V[0]){let n=Number(t);r.push([e|n])}else if(t<V[1]){let n=Number(t);r.push([e|24,n])}else if(t<V[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<V[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<V[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}pe.encodedSize=function(e){return G.encodedSize(e.value)};G.encodedSize=function(e){return e<V[0]?1:e<V[1]?2:e<V[2]?3:e<V[3]?5:9};pe.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function $s(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function Ms(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function Hs(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var Ei=BigInt(-1),Vs=BigInt(1);function js(r,e,t,n){let i=fe(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new _(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new _(p.negint,Ei-BigInt(i),9)}function Zr(r,e){let t=e.value,n=typeof t=="bigint"?t*Ei-Vs:t*-1-1;G(r,e.type.majorEncoded,n)}Zr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Ei-Vs:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};Zr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function ir(r,e,t,n){Le(r,e,t+n);let i=bt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Gs(r,e,t,n){return ir(r,e,1,t)}function qs(r,e,t,n){return ir(r,e,2,ae(r,e+1,n))}function Ws(r,e,t,n){return ir(r,e,3,ce(r,e+1,n))}function Ks(r,e,t,n){return ir(r,e,5,ue(r,e+1,n))}function Xs(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return ir(r,e,9,i)}function Qr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Jr(r.value):r.value),r.encodedBytes}function kt(r,e){let t=Qr(e);G(r,e.type.majorEncoded,t.length),r.push(t)}kt.encodedSize=function(e){let t=Qr(e);return G.encodedSize(t.length)+t.length};kt.compareTokens=function(e,t){return ul(Qr(e),Qr(t))};function ul(r,e){return r.length<e.length?-1:r.length>e.length?1:Fs(r,e)}function or(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,Ds(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=bt(r,e+t,e+o)),s}function Js(r,e,t,n){return or(r,e,1,t,n)}function Ys(r,e,t,n){return or(r,e,2,ae(r,e+1,n),n)}function Zs(r,e,t,n){return or(r,e,3,ce(r,e+1,n),n)}function Qs(r,e,t,n){return or(r,e,5,ue(r,e+1,n),n)}function ea(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return or(r,e,9,i,n)}var ta=kt;function St(r,e,t,n){return new _(p.array,n,t)}function ra(r,e,t,n){return St(r,e,1,t)}function na(r,e,t,n){return St(r,e,2,ae(r,e+1,n))}function ia(r,e,t,n){return St(r,e,3,ce(r,e+1,n))}function oa(r,e,t,n){return St(r,e,5,ue(r,e+1,n))}function sa(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return St(r,e,9,i)}function aa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return St(r,e,1,1/0)}function en(r,e){G(r,p.array.majorEncoded,e.value)}en.compareTokens=pe.compareTokens;en.encodedSize=function(e){return G.encodedSize(e.value)};function Et(r,e,t,n){return new _(p.map,n,t)}function ca(r,e,t,n){return Et(r,e,1,t)}function ua(r,e,t,n){return Et(r,e,2,ae(r,e+1,n))}function fa(r,e,t,n){return Et(r,e,3,ce(r,e+1,n))}function la(r,e,t,n){return Et(r,e,5,ue(r,e+1,n))}function ha(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return Et(r,e,9,i)}function da(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return Et(r,e,1,1/0)}function tn(r,e){G(r,p.map.majorEncoded,e.value)}tn.compareTokens=pe.compareTokens;tn.encodedSize=function(e){return G.encodedSize(e.value)};function pa(r,e,t,n){return new _(p.tag,t,1)}function ma(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function ya(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function ga(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function wa(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function rn(r,e){G(r,p.tag.majorEncoded,e.value)}rn.compareTokens=pe.compareTokens;rn.encodedSize=function(e){return G.encodedSize(e.value)};var ml=20,yl=21,gl=22,wl=23;function xa(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${B} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new _(p.null,null,1):new _(p.undefined,void 0,1)}function ba(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return new _(p.break,void 0,1)}function Bi(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${B} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${B} Infinity values are not supported`)}return new _(p.float,r,e)}function _a(r,e,t,n){return Bi(vi(r,e+1),3,n)}function ka(r,e,t,n){return Bi(Ii(r,e+1),5,n)}function Sa(r,e,t,n){return Bi(Ia(r,e+1),9,n)}function nn(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|ml]);else if(n===!0)r.push([p.float.majorEncoded|yl]);else if(n===null)r.push([p.float.majorEncoded|gl]);else if(n===void 0)r.push([p.float.majorEncoded|wl]);else{let i,o=!1;(!t||t.float64!==!0)&&(Ba(n),i=vi(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(va(n),i=Ii(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(xl(n),i=Ia(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}nn.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){Ba(n);let i=vi(Se,1);if(n===i||Number.isNaN(n))return 3;if(va(n),i=Ii(Se,1),n===i)return 5}return 9};var Ea=new ArrayBuffer(9),me=new DataView(Ea,1),Se=new Uint8Array(Ea,0);function Ba(r){if(r===1/0)me.setUint16(0,31744,!1);else if(r===-1/0)me.setUint16(0,64512,!1);else if(Number.isNaN(r))me.setUint16(0,32256,!1);else{me.setFloat32(0,r);let e=me.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)me.setUint16(0,31744,!1);else if(t===0)me.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?me.setUint16(0,0):i<-14?me.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):me.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function vi(r,e){if(r.length-e<2)throw new Error(`${B} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function va(r){me.setFloat32(0,r,!1)}function Ii(r,e){if(r.length-e<4)throw new Error(`${B} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function xl(r){me.setFloat64(0,r,!1)}function Ia(r,e){if(r.length-e<8)throw new Error(`${B} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}nn.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function on(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Ps;S[25]=Us;S[26]=Os;S[27]=Rs;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=$s;S[57]=Ms;S[58]=Hs;S[59]=js;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=Gs;S[88]=qs;S[89]=Ws;S[90]=Ks;S[91]=Xs;S[92]=z;S[93]=z;S[94]=z;S[95]=on("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Js;S[120]=Ys;S[121]=Zs;S[122]=Qs;S[123]=ea;S[124]=z;S[125]=z;S[126]=z;S[127]=on("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=ra;S[152]=na;S[153]=ia;S[154]=oa;S[155]=sa;S[156]=z;S[157]=z;S[158]=z;S[159]=aa;for(let r=160;r<=183;r++)S[r]=ca;S[184]=ua;S[185]=fa;S[186]=la;S[187]=ha;S[188]=z;S[189]=z;S[190]=z;S[191]=da;for(let r=192;r<=215;r++)S[r]=pa;S[216]=ma;S[217]=ya;S[218]=ga;S[219]=wa;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=on("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=xa;S[248]=on("simple values are not supported");S[249]=_a;S[250]=ka;S[251]=Sa;S[252]=z;S[253]=z;S[254]=z;S[255]=ba;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new _(p.negint,r,1);Ee[64]=new _(p.bytes,new Uint8Array(0),1);Ee[96]=new _(p.string,"",1);Ee[128]=new _(p.array,0,1);Ee[160]=new _(p.map,0,1);Ee[244]=new _(p.false,!1,1);Ee[245]=new _(p.true,!0,1);Ee[246]=new _(p.null,null,1);function _l(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Zr,r[p.bytes.major]=kt,r[p.string.major]=ta,r[p.array.major]=en,r[p.map.major]=tn,r[p.tag.major]=rn,r[p.float.major]=nn,r}var cg=_l(),ug=new Yr,sn=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${_t} object contains circular references`);return new r(t,e)}},Me={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},He={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?Me.true:Me.false},null(r,e,t,n){return Me.null},undefined(r,e,t,n){return Me.undefined},ArrayBuffer(r,e,t,n){return new _(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new _(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Me.emptyArray,new _(p.break)]:Me.emptyArray;n=sn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Ai(s,t,n);return t.addBreakTokens?[new _(p.array,r.length),i,new _(p.break)]:[new _(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Me.emptyMap,new _(p.break)]:Me.emptyMap;n=sn.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Ai(h,t,n),Ai(i?r.get(h):r[h],t,n)];return kl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function Ai(r,e={},t){let n=As(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${_t} unsupported type: ${n}`);return o(r,n,e,t)}function kl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Sl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},an=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=Ee[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},sr=Symbol.for("DONE"),cn=Symbol.for("BREAK");function El(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Bt(e,t);if(o===cn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===sr)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Bl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=Bt(e,t);if(a===cn){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===sr)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let u=Bt(e,t);if(u===sr)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,u):i[a]=u}return n?o:i}function Bt(r,e){if(r.done())return sr;let t=r.next();if(t.type===p.break)return cn;if(t.type.terminal)return t.value;if(t.type===p.array)return El(t,r,e);if(t.type===p.map)return Bl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=Bt(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Ci(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},Sl,e);let t=e.tokenizer||new an(r,e),n=Bt(t,e);if(n===sr)throw new Error(`${B} did not find any content to decode`);if(n===cn)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function ar(r,e){let[t,n]=Ci(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Ca=42;function Al(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function Cl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Ca),new _(p.bytes,t)]}function Nl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Tl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var Aa={float64:!0,typeEncoders:{Object:Cl,undefined:Nl,number:Tl}},xg={...Aa,typeEncoders:{...Aa.typeEncoders}};function Dl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var un={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};un.tags[Ca]=Dl;var bg={...un,tags:un.tags.slice()};var Na=113;var Ta=r=>ar(Al(r),un);var za=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===p.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===p.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[p.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[p.negint.major](e,t){this[p.uint.major](e,t)}[p.bytes.major](e,t){throw new Error(`${_t} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Jr(JSON.stringify(t.value));e.push(n.length>32?Xr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${_t} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var vt=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let u=this.ch();if(a.includes(u))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new _(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new _(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new _(s>=0?p.uint:p.negint,s,this._pos-e):new _(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let u=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,u,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let u,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:u=this.data[this._pos+1],(u&192)===128&&(l=(o&31)<<6|u&63,l>127&&(s=l));break;case 3:u=this.data[this._pos+1],h=this.data[this._pos+2],(u&192)===128&&(h&192)===128&&(l=(o&15)<<12|(u&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:u=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(u&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(u&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new _(p.string,Si(t),this._pos-e);default:if(o<32)throw new Error(`${B} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${B} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new _(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new _(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new _(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new _(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new _(p.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${B} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new _(p.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new _(p.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${B} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ni(r,e){return e=Object.assign({tokenizer:new vt(r,e)},e),ar(r,e)}function Fl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ti=class extends vt{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=qt.decode(`m${o.value}`);return new _(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},Di={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Di.tags[42]=A.parse;var La=297;var Fa=r=>{let e=Fl(r),t=Object.assign(Di,{tokenizer:new Ti(e,Di)});return Ni(e,t)};var Og=new TextDecoder;var Rg=new TextEncoder;function It(r,e,t,n,i,o,s){let a=r,u=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),u=`${u}/${h}`;let f=A.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:u,toResolve:o}};a=a[h]}else throw new Wr(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Pl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ta(u);return It(h,u,r,e,t,n,o)},Ua=Pl;var Ul=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Fa(u);return It(h,u,r,e,t,n,o)},Oa=Ul;function Ol(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var et=Ol;var Rl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},At=Rl;var $l=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Ml=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=vr(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:$l(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Ra=Ml;var Hl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Uo(u);return It(h,u,r,e,t,n,o)},$a=Hl;var Vl=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},jl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Vl(u),depth:o,size:BigInt(u.length),node:u}}},Ma=jl;var Gl=async function(r){return(await Je.encode(r)).slice(0,8).reverse()},ql=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Ha=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Wl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Va=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(c){throw new H(c.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let g=pt({hashFn:Gl,bits:Math.log2(Number(l.fanout))});n={rootBucket:g,hamtDepth:1,lastBucket:g}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await ql(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Ha(s.pos,o),u=Wl(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=Ha(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let g=l.Name.substring(0,o),c=l.Name.substring(o);return!(g!==a||c!==""&&c!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=U(f),Va(r,e,t,n,i)},ja=Va;function Kl(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var fn=Kl;function Xl(r){return r[Symbol.asyncIterator]!=null}function Jl(r,e){let t=0;if(Xl(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=fn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for(let u of n)await e(u,t++)&&(yield u)}();let a=e;return function*(){s===!0&&(yield i);for(let u of n)a(u,t++)&&(yield u)}()}var Ga=Jl;function Yl(r){return r[Symbol.asyncIterator]!=null}function Zl(r,e){let t=0;if(Yl(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=fn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for(let u of n)yield e(u,t++)}();let a=e;return function*(){yield s;for(let u of n)yield a(u,t++)}()}var Ct=Zl;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var ln=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),u=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=te(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new ln("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new ln("task-complete"))})}u=!0,i.dispatchEvent(new ln("task-complete"))}catch(d){h=d,i.dispatchEvent(new ln("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*g(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*c(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=te(),await a.promise),h!=null||(n?yield*g():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var hn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||(e-1&e)!==0)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Nt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new hn(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new hn(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var zi=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function dn(r={}){return Ql(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Ql(r,e){e=e??{};let t=e.onEnd,n=new Nt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,y)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Nt,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},g=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Nt,g(),{done:!0}),d=x=>(g(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:g,get readableLength(){return n.size},onEmpty:async x=>{let y=x?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let w,b;y!=null&&(w=new Promise((k,v)=>{b=()=>{v(new zi)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&y!=null&&y?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}var pn=class extends Error{type;code;constructor(e,t,n){super(e??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=t??"ABORT_ERR"}};async function qa(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new pn(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new pn(t?.errorMessage,t?.errorCode,t?.errorName);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Li=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=te(),this.haveNext=te()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=te(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=te(),await qa(this.readNext.promise,t?.signal,t)}};function Wa(){return new Li}function eh(r){return r[Symbol.asyncIterator]!=null}async function th(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*rh(r){let e=new AbortController,t=Wa();th(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*nh(r){for(let e of r)yield*e}function ih(...r){let e=[];for(let t of r)eh(t)||e.push(t);return e.length===r.length?nh(e):rh(r)}var Ka=ih;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Fi(r)){let n=r;r=()=>n.source}else if(Ja(r)||Xa(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Fi(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Fi(t[n])&&(t[n]=sh(t[n]));return oh(...t)}var oh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Xa=r=>r?.[Symbol.asyncIterator]!=null,Ja=r=>r?.[Symbol.iterator]!=null,Fi=r=>r==null?!1:r.sink!=null&&r.source!=null,sh=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=dn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Xa(o))i=async function*(){yield*o,n.end()};else if(Ja(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ka(n,i())}return r.source};var ah=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=u.offset??0,f=u.length??e.Links.length,l=e.Links.slice(h,f);u.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,g=>Ct(g,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),g=>tt(g,{ordered:!0,concurrency:u.blockReadConcurrency}),g=>Ga(g,c=>c!=null))}return a},Ya=ah;var Ui=Ft(Qa(),1);var ur=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Oi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},ec=r=>globalThis.DOMException===void 0?new Oi(r):new DOMException(r),tc=r=>{let e=r.reason===void 0?ec("This operation was aborted."):r.reason;return e instanceof Error?e:ec(e)};function Ri(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,a,h=new Promise((f,l)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:c}=e;c.aborted&&l(tc(c)),a=()=>{l(tc(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let g=new ur;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(c){l(c)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?f():i instanceof Error?l(i):(g.message=i??`Promise timed out after ${t} milliseconds`,l(g))},t),(async()=>{try{f(await r)}catch(c){l(c)}})()}).finally(()=>{h.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return h.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},h}function $i(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var fr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,id:t.id,run:e};if(this.size===0||this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=$i(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}setPriority(e,t){let n=this.#e.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#e.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var lr=class extends Ui.default{#e;#s;#o=0;#d;#a;#p=0;#r;#c;#t;#m;#n=0;#u;#i;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:fr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#s=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#a=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#i=e.autoStart===!1}get#b(){return this.#s||this.#o<this.#d}get#_(){return this.#n<this.#u}#k(){this.#n--,this.#f(),this.emit("next")}#S(){this.#w(),this.#g(),this.#c=void 0}get#E(){let e=Date.now();if(this.#r===void 0){let t=this.#p-e;if(t<0)this.#o=this.#e?this.#n:0;else return this.#c===void 0&&(this.#c=setTimeout(()=>{this.#S()},t)),!0}return!1}#f(){if(this.#t.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#s||this.#r!==void 0||(this.#r=setInterval(()=>{this.#w()},this.#a),this.#p=Date.now()+this.#a)}#w(){this.#o===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#o=this.#e?this.#n:0,this.#l()}#l(){for(;this.#f(););}get concurrency(){return this.#u}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#l()}async#B(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#t.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#x++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#n++,this.#o++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ri(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#B(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ur&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#i?(this.#i=!1,this.#l(),this):this}pause(){this.#i=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#h("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#h("next",()=>this.#t.size<e)}async onIdle(){this.#n===0&&this.#t.size===0||await this.#h("idle")}async#h(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#n}get isPaused(){return this.#i}};async function rc(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=et(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,g=l+a.blockSizes[h];if((i>=l&&i<g||o>=l&&o<=g||i<l&&o>g)&&u.push({link:f,blockStart:n}),n=g,n>o)break}await Te(u,h=>Ct(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>tt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:g}of h){let c;switch(f.Hash.code){case j:c=U(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new lr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:f.Hash})),await rc(r,c,t,g,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var fh=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=At(h,u.offset,u.length);if(l===0n)return;let g=0n,c=l-f,d=dn();u.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),rc(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(g+=BigInt(m.byteLength),g>c)throw d.end(),new Gr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");g===c&&d.end(),u.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:g,totalBytes:c,fileSize:h})),yield m}if(g<c)throw new qr("Traversed entire DAG but did not read enough bytes")}return a},Mi=fh;var lh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),nc(e,n,i,o,s,u)}return a};async function*nc(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let u=(a.fanout-1n).toString(16).length,h=Te(s,f=>Ct(f,l=>async()=>{let g=l.Name!=null?l.Name.substring(u):null;if(g!=null&&g!==""){let c=await t(l.Hash,g,`${e}/${g}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=U(c),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:nc(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var ic=lh;var hh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,dh={raw:Mi,file:Mi,directory:Ya,"hamt-sharded-directory":ic,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},ph=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=U(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(c){throw new H(c.message)}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await ja(h,n[0],s):c=hh(h,n[0]),c==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let g=dh[f.type](r,h,f,t,i,o,s);if(g==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},oc=ph;var mh={[j]:oc,[Q]:Ma,[Na]:Ua,[La]:Oa,[ai.code]:Ra,[Po]:$a},sc=async(r,e,t,n,i,o,s)=>{let a=mh[r.code];if(a==null)throw new jr(`No resolver for code ${r.code}`);return a(r,e,t,n,sc,i,o,s)},ac=sc;var yh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),gh=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=yh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new Vr(`Unknown path type ${r}`)};async function*Hi(r,e,t={}){let{cid:n,toResolve:i}=gh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await ac(n,o,s,i,a,e,t);if(u.entry==null&&u.next==null)throw new de(`Could not resolve ${r}`);if(u.entry!=null&&(yield u.entry),u.next==null)return;i=u.next.toResolve,n=u.next.cid,o=u.next.name,s=u.next.path}}async function Z(r,e,t={}){let n=await _e(Hi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*yn(r,e,t={}){let n=await Z(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}function wh(r,e){try{if(typeof r=="string"&&r.length>0)return xh(r);if(typeof r=="number"&&isFinite(r))return e?.long?_h(r):bh(r);throw new Error("Value is not a string or number.")}catch(t){let n=kh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function xh(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var wn=wh;function bh(r){let e=Math.abs(r);return e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function _h(r){let e=Math.abs(r);return e>=864e5?gn(r,e,864e5,"day"):e>=36e5?gn(r,e,36e5,"hour"):e>=6e4?gn(r,e,6e4,"minute"):e>=1e3?gn(r,e,1e3,"second"):`${r} ms`}function gn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function kh(r){return typeof r=="object"&&r!==null&&"message"in r}function Vi(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=wn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let g=0;g<f.length;g++)l=(l<<5)-l+f.charCodeAt(g),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,g=null,c,d;function m(...x){if(!m.enabled)return;let y=m,w=Number(new Date),b=w-(l||w);y.diff=b,y.prev=l,y.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(y,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(y,x),(y.log||t.log).apply(y,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{g=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let g=t(this.namespace+(typeof l>"u"?":":l)+f);return g.log=this.log,g}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,g=(typeof f=="string"?f:"").split(/[\s,]+/),c=g.length;for(l=0;l<c;l++)g[l]&&(f=g[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,g;for(l=0,g=t.skips.length;l<g;l++)if(t.skips[l].test(f))return!1;for(l=0,g=t.names.length;l<g;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function u(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var xn=Ch(),Sh=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Eh(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function Bh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+wn(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}var vh=console.debug??console.log??(()=>{});function Ih(r){try{r?xn?.setItem("debug",r):xn?.removeItem("debug")}catch{}}function Ah(){let r;try{r=xn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Ch(){try{return localStorage}catch{}}function Nh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var cc=Vi({formatArgs:Bh,save:Ih,load:Ah,useColors:Eh,setupFormatters:Nh,colors:Sh,storage:xn,log:vh});var re=cc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Pe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":qt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>r==null?"undefined":uc(r.stack)??uc(r.message)??r.toString();function Th(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function R(r){let e=Th(`${r}:trace`);return re.enabled(`${r}:trace`)&&re.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=re(`${r}:trace`)),Object.assign(re(r),{error:re(`${r}:error`),trace:e})}function uc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Wi=Ft(Pr(),1);function _n(r){function e(t){return t instanceof bn?t:new bn(t,r)}return e}var bn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new ji(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Dh=[255,254,252,248,240,224,192,128],zh=[1,3,7,15,31,63,127,255],ji=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Lh(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Lh(r,e,t){let n=Fh(e,t);return(r&n)>>>e}function Fh(r,e){return Dh[r]&zh[Math.min(e+r-1,7)]}var hr=BigInt(Je.code),rt=8;async function Tt(r){return(await Je.encode(r)).subarray(0,8).reverse()}var hc=Ft(Pr(),1);var Be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var Gi=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},kn=class extends Gi{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Tt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=lc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of fc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*fc(r,e,t,n){let i=r._children,o=[],s=0n;for(let c=0;c<i.length;c++){let d=i.get(c);if(d==null)continue;let m=c.toString(16).toUpperCase().padStart(2,"0");if(d instanceof se){let x;for await(let y of fc(d,e,null,n))x=y;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Ph(d.value)){let x=d.value,y;for await(let b of x.flush(e))y=b,yield y;if(y==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else{let x=d.value;if(x.cid==null)continue;let y=m+d.key,w=x.size;o.push({Name:y,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:hr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(F(h)),l=await Be(f,e,n),g=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:g}}function Ph(r){return typeof r.flush=="function"}function lc(r,e,t){let n=r._children,i=[];for(let u=0;u<n.length;u++){let h=n.get(u);if(h==null)continue;let f=u.toString(16).toUpperCase().padStart(2,"0");if(h instanceof se){let l=lc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?Sn:En})}else if(typeof h.value.flush=="function"){let g=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(g),Hash:t.cidVersion===0?Sn:En})}else{let l=h.value;if(l.cid==null)continue;let g=f+h.key,c=l.size;i.push({Name:g,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:hr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var Sn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),En=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var qi=R("helia:unixfs:commands:utils:hamt-utils"),Bn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),dc=async(r,e,t)=>{let n=new kn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await _e(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},vn=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:hr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let g=T(F(s));if(o=await Be(g,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");qi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),g.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},In=async(r,e,t,n)=>{let o=_n(Tt)(O(e)),s=[];for(;;){let a=await t.get(r,n),u=U(a),h=new hc.default,f=await o.take(rt),l=Bn(f);s.push({prefix:l,children:h,node:u});let g;for(let d of u.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(g=d)}if(g==null){qi("no link found with prefix %s for %s",l,e);break}let c=g.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=g.Hash,qi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function An(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=Uh(r);else if(i.type==="hamt-sharded-directory")o=await pc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Uh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?En.bytes.byteLength:Sn.bytes.byteLength;return e}async function pc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===j){let u=await n.get(s.Hash,i),h=U(u);e+=await pc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function Dt(r,e,t,n){if(r.node.Data==null)throw new M("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),$h(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Rh(r,e,t,n);if(await An(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Oh(o,t);o.cid=s.cid,o.node=U(await t.get(s.cid,n))}return o}var Oh=async(r,e)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await dc(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return De(`converted directory to sharded directory ${n.cid}`),n},Rh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new tr;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},$h=async(r,e,t,n)=>{let{path:i,hash:o}=await In(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,u=parseInt(a,16);De("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(De("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new tr;De("overwriting %s in sub-shard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was sub-shard?!");{De("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),g=s.node.Links.splice(l,1)[0],c=(g.Name??"").substring(2),m=_n(Tt)(O(c));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),y=Bn(x);g.Name=`${y}${c}`;let w=await o.take(rt),b=Bn(w);if(y===b){let v=new Wi.default;v.set(w,!0),i.push({prefix:b,children:v,node:{Links:[]}});continue}let k=new Wi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[g,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else De("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),De("adding %s to existing sub-shard",h);return vn(i,t,n)};async function Ve(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function zt(r,e,t,n){let i=await Z(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ce(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Mh(i.node),Hash:r}}function Mh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Hh=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await rs(Hi(i,t,n));if(o.length===0)throw new Rr("Could not find path in directory");return Hh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Lt(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Ve(o.cid,t,n),zt(i.cid,i.name,t,n)]);r=(await Dt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Vh=K.bind({ignoreUndefined:!0}),jh={};async function*mc(r,e,t={}){let n=Vh(jh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new $r;if(o.content==null)throw new mt;yield*o.content(n)}var Gh=K.bind({ignoreUndefined:!0}),qh=R("helia:unixfs:chmod"),Wh={recursive:!1,shardSplitThresholdBytes:262144};async function yc(r,e,t,n={}){let i=Gh(Wh,n),o=await ze(r,i.path,t,n);if(qh("chmod %c %d",o.cid,e),i.recursive){let g=await Te(async function*(){for await(let c of yn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new I({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...i,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${o.cid.toString()}`);return Lt(g.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new I({type:"file",data:s});else{let g=U(s);if(g.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=g.Links,a=I.unmarshal(g.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(o.cid.version,j,f);return await t.put(l,h),Lt(l,o,t,i)}var Kh=K.bind({ignoreUndefined:!0}),Xh=R("helia:unixfs:cp"),Jh={force:!1,shardSplitThresholdBytes:262144};async function gc(r,e,t,n,i={}){let o=Kh(Jh,i);if(t.includes("/"))throw new M("Name must not have slashes");let[s,a]=await Promise.all([Ve(e,n,o),zt(r,t,n,o)]);return Xh('Adding %c as "%s" to %c',r,t,e),(await Dt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Yh=K.bind({ignoreUndefined:!0}),Zh={};async function*wc(r,e,t={}){let n=Yh(Zh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new mt;if(o.type!=="directory")throw new $e;yield*o.content({offset:t.offset,length:t.length})}var Qh=K.bind({ignoreUndefined:!0}),xc=R("helia:unixfs:mkdir"),ed={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function bc(r,e,t,n={}){let i=Qh(ed,n);if(e.includes("/"))throw new M("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);xc("creating %s",e);let a={Data:new I({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await oe.digest(u),f=A.create(i.cidVersion,j,h);await t.put(f,u);let[l,g]=await Promise.all([Ve(r,t,i),zt(f,e,t,i)]);return xc("adding empty dir called %s to %c",e,r),(await Dt(l,g,t,{...i,allowOverwriting:i.force})).cid}var Nn=R("helia:unixfs:utils:remove-link");async function _c(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Nn(`removing ${e} from sharded directory`);let o=await rd(r,e,t,n);return await An(o.node,t,n.shardSplitThresholdBytes,n)?o:(Nn("converting shard to flat directory %c",r.cid),nd(o,t,n))}return Nn(`removing link ${e} regular directory`),td(r,e,t,n)}var td=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await Be(i,t,{...n,cidVersion:r.cid.version});return Nn(`Updated regular directory ${o}`),{node:r.node,cid:o}},rd=async(r,e,t,n)=>{let{path:i}=await In(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(g=>!(g.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return vn(i,t,n)},nd=async(r,e,t)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Z(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await Be(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var id=K.bind({ignoreUndefined:!0}),od=R("helia:unixfs:rm"),sd={shardSplitThresholdBytes:262144};async function kc(r,e,t,n={}){let i=id(sd,n);if(e.includes("/"))throw new M("Name must not have slashes");let o=await Ve(r,t,i);return od("Removing %s from %c",e,r),(await _c(o,e,t,{...i,cidVersion:r.version})).cid}var Ki={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},Sc={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},Ec=new globalThis.TextEncoder;function ad(r,e){let t=Ki[e],n=Sc[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function cd(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Ki[e],i=Sc[e],o=r;for(;o.length>0;){let s=Ec.encodeInto(o,t);o=o.slice(s.read);for(let a=0;a<s.written;a++)i^=BigInt(t[a]),i=BigInt.asUintN(e,i*n)}return i}function Xi(r,{size:e=32,utf8Buffer:t}={}){if(!Ki[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return cd(r,e,t);r=Ec.encode(r)}return ad(r,e)}var dr={hash:r=>Number(Xi(r,{size:32})),hashV:(r,e)=>ud(dr.hash(r,e))};function ud(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),O(e,"base16")}var Bc=64,ve=class{fp;h;seed;constructor(e,t,n,i=2){if(i>Bc)throw new TypeError("Invalid Fingerprint Size");let o=t.hashV(e,n),s=ge(i);for(let a=0;a<s.length;a++)s[a]=o[a];s.length===0&&(s[0]=7),this.fp=s,this.h=t,this.seed=n}hash(){return this.h.hash(this.fp,this.seed)}equals(e){return e?.fp instanceof Uint8Array?Sr(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var fd=500,pr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<fd;a++){let u=this.buckets[s].swap(t);if(u!=null&&(s=(s^u.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var mr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??dr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new pr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=O(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new pr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var vc=1877,Tn=1604,ld=K.bind({ignoreUndefined:!0}),hd=R("helia:unixfs:stat"),dd={};async function Ic(r,e,t={}){let n=ld(dd,t),i=await ze(r,t.path,e,n);hd("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?gd(o):yd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?md(o,e,t.filter??new mr({filterSize:1024}),t):pd(o);throw new Ce}function pd(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?vc:Tn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function md(r,e,t,n){let i=await Ac(r.cid,e,!1,t,n);return{type:r.type,cid:r.cid,unixfs:r.unixfs,size:r.unixfs.isDirectory()?i.dirSize:r.unixfs.fileSize(),mode:r.unixfs.mode??(r.unixfs.isDirectory()?vc:Tn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function yd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Tn,mtime:void 0,size:BigInt(r.node.byteLength)}}function gd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Tn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function Ac(r,e,t,n,i){let o={dirSize:0n,localSize:0n,dagSize:0n,deduplicatedDagSize:0n,blocks:0n,uniqueBlocks:0n};try{let s=n.has(r.bytes);n.add(r.bytes);let a=await e.get(r,i);if(o.blocks++,o.dagSize+=BigInt(a.byteLength),s||(o.uniqueBlocks++,o.deduplicatedDagSize+=BigInt(a.byteLength)),r.code===Q)o.localSize+=BigInt(a.byteLength),t&&(o.dirSize+=BigInt(a.byteLength));else if(r.code===j){let u=U(a),h;if(u.Data!=null&&(h=I.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Ac(f.Hash,e,wd(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Ne(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function wd(r,e){if(e==null)return!1;let t=r.Name;return t==null?!1:e.type==="directory"?!0:e.type==="hamt-sharded-directory"&&t.length>2}var xd=K.bind({ignoreUndefined:!0}),bd=R("helia:unixfs:touch"),_d={recursive:!1,shardSplitThresholdBytes:262144};async function Cc(r,e,t={}){let n=xd(_d,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(bd("touch %c %o",i.cid,o),n.recursive){let g=await Te(async function*(){for await(let c of yn(i.cid,e)){let d,m;if(c.type==="raw")d=new I({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...n,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${i.cid.toString()}`);return Lt(g.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new I({data:s});else{let g=U(s);if(u=g.Links,g.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=I.unmarshal(g.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(i.cid.version,j,f);return await e.put(l,h),Lt(l,i,e,n)}var Dn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Mr(e,this.components.blockstore,t)}async addBytes(e,t={}){return _s(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ks(e,this.components.blockstore,t)}async addFile(e,t={}){return Ss(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Es(e,this.components.blockstore,t)}async*cat(e,t={}){yield*mc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return yc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return gc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*wc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return bc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return kc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Ic(e,this.components.blockstore,t)}async touch(e,t={}){return Cc(e,this.components.blockstore,t)}};async function*Nc(){throw new Error("Not supported in browsers")}function Tc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:kd(r,e)}}async function*kd(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Ne("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function Sd(r){return new Dn(r)}return Uc(Ed);})();
|
|
3
3
|
return HeliaUnixfs}));
|
|
4
4
|
//# sourceMappingURL=index.min.js.map
|