@helia/mfs 3.0.3 → 3.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -1,3 +1,3 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaMfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var HeliaMfs=(()=>{var ou=Object.create;var Ir=Object.defineProperty;var su=Object.getOwnPropertyDescriptor;var au=Object.getOwnPropertyNames;var cu=Object.getPrototypeOf,uu=Object.prototype.hasOwnProperty;var nt=(r,t)=>()=>(t||r((t={exports:{}}).exports,t),t.exports),K=(r,t)=>{for(var e in t)Ir(r,e,{get:t[e],enumerable:!0})},eo=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of au(t))!uu.call(r,i)&&i!==e&&Ir(r,i,{get:()=>t[i],enumerable:!(n=su(t,i))||n.enumerable});return r};var P=(r,t,e)=>(e=r!=null?ou(cu(r)):{},eo(t||!r||!r.__esModule?Ir(e,"default",{value:r,enumerable:!0}):e,r)),fu=r=>eo(Ir({},"__esModule",{value:!0}),r);var q=nt((J1,no)=>{"use strict";function ro(r,t){for(let e in t)Object.defineProperty(r,e,{value:t[e],enumerable:!0,configurable:!0});return r}function lu(r,t,e){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");e||(e={}),typeof t=="object"&&(e=t,t=""),t&&(e.code=t);try{return ro(r,e)}catch{e.message=r.message,e.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),ro(new i,e)}}no.exports=lu});var cs=nt((ar,zr)=>{(function(r,t){"use strict";var e={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(u){if(!Array.isArray(u)&&!ArrayBuffer.isView(u))return!1;for(var d=0;d<u.length;d++)if(!Number.isInteger(u[d])||u[d]<0||u[d]>255)return!1;return!0}function i(u,d){return(u&65535)*d+(((u>>>16)*d&65535)<<16)}function o(u,d){return u<<d|u>>>32-d}function s(u){return u^=u>>>16,u=i(u,2246822507),u^=u>>>13,u=i(u,3266489909),u^=u>>>16,u}function a(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var y=[0,0,0,0];return y[3]+=u[3]+d[3],y[2]+=y[3]>>>16,y[3]&=65535,y[2]+=u[2]+d[2],y[1]+=y[2]>>>16,y[2]&=65535,y[1]+=u[1]+d[1],y[0]+=y[1]>>>16,y[1]&=65535,y[0]+=u[0]+d[0],y[0]&=65535,[y[0]<<16|y[1],y[2]<<16|y[3]]}function c(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var y=[0,0,0,0];return y[3]+=u[3]*d[3],y[2]+=y[3]>>>16,y[3]&=65535,y[2]+=u[2]*d[3],y[1]+=y[2]>>>16,y[2]&=65535,y[2]+=u[3]*d[2],y[1]+=y[2]>>>16,y[2]&=65535,y[1]+=u[1]*d[3],y[0]+=y[1]>>>16,y[1]&=65535,y[1]+=u[2]*d[2],y[0]+=y[1]>>>16,y[1]&=65535,y[1]+=u[3]*d[1],y[0]+=y[1]>>>16,y[1]&=65535,y[0]+=u[0]*d[3]+u[1]*d[2]+u[2]*d[1]+u[3]*d[0],y[0]&=65535,[y[0]<<16|y[1],y[2]<<16|y[3]]}function h(u,d){return d%=64,d===32?[u[1],u[0]]:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d|u[0]>>>32-d]:(d-=32,[u[1]<<d|u[0]>>>32-d,u[0]<<d|u[1]>>>32-d])}function f(u,d){return d%=64,d===0?u:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d]:[u[1]<<d-32,0]}function l(u,d){return[u[0]^d[0],u[1]^d[1]]}function m(u){return u=l(u,[0,u[0]>>>1]),u=c(u,[4283543511,3981806797]),u=l(u,[0,u[0]>>>1]),u=c(u,[3301882366,444984403]),u=l(u,[0,u[0]>>>1]),u}e.x86.hash32=function(u,d){if(e.inputValidation&&!n(u))return t;d=d||0;for(var y=u.length%4,_=u.length-y,g=d,w=0,b=3432918353,E=461845907,v=0;v<_;v=v+4)w=u[v]|u[v+1]<<8|u[v+2]<<16|u[v+3]<<24,w=i(w,b),w=o(w,15),w=i(w,E),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,y){case 3:w^=u[v+2]<<16;case 2:w^=u[v+1]<<8;case 1:w^=u[v],w=i(w,b),w=o(w,15),w=i(w,E),g^=w}return g^=u.length,g=s(g),g>>>0},e.x86.hash128=function(u,d){if(e.inputValidation&&!n(u))return t;d=d||0;for(var y=u.length%16,_=u.length-y,g=d,w=d,b=d,E=d,v=0,S=0,x=0,B=0,N=597399067,U=2869860233,H=951274213,mt=2716044179,D=0;D<_;D=D+16)v=u[D]|u[D+1]<<8|u[D+2]<<16|u[D+3]<<24,S=u[D+4]|u[D+5]<<8|u[D+6]<<16|u[D+7]<<24,x=u[D+8]|u[D+9]<<8|u[D+10]<<16|u[D+11]<<24,B=u[D+12]|u[D+13]<<8|u[D+14]<<16|u[D+15]<<24,v=i(v,N),v=o(v,15),v=i(v,U),g^=v,g=o(g,19),g+=w,g=i(g,5)+1444728091,S=i(S,U),S=o(S,16),S=i(S,H),w^=S,w=o(w,17),w+=b,w=i(w,5)+197830471,x=i(x,H),x=o(x,17),x=i(x,mt),b^=x,b=o(b,15),b+=E,b=i(b,5)+2530024501,B=i(B,mt),B=o(B,18),B=i(B,N),E^=B,E=o(E,13),E+=g,E=i(E,5)+850148119;switch(v=0,S=0,x=0,B=0,y){case 15:B^=u[D+14]<<16;case 14:B^=u[D+13]<<8;case 13:B^=u[D+12],B=i(B,mt),B=o(B,18),B=i(B,N),E^=B;case 12:x^=u[D+11]<<24;case 11:x^=u[D+10]<<16;case 10:x^=u[D+9]<<8;case 9:x^=u[D+8],x=i(x,H),x=o(x,17),x=i(x,mt),b^=x;case 8:S^=u[D+7]<<24;case 7:S^=u[D+6]<<16;case 6:S^=u[D+5]<<8;case 5:S^=u[D+4],S=i(S,U),S=o(S,16),S=i(S,H),w^=S;case 4:v^=u[D+3]<<24;case 3:v^=u[D+2]<<16;case 2:v^=u[D+1]<<8;case 1:v^=u[D],v=i(v,N),v=o(v,15),v=i(v,U),g^=v}return g^=u.length,w^=u.length,b^=u.length,E^=u.length,g+=w,g+=b,g+=E,w+=g,b+=g,E+=g,g=s(g),w=s(w),b=s(b),E=s(E),g+=w,g+=b,g+=E,w+=g,b+=g,E+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(E>>>0).toString(16)).slice(-8)},e.x64.hash128=function(u,d){if(e.inputValidation&&!n(u))return t;d=d||0;for(var y=u.length%16,_=u.length-y,g=[0,d],w=[0,d],b=[0,0],E=[0,0],v=[2277735313,289559509],S=[1291169091,658871167],x=0;x<_;x=x+16)b=[u[x+4]|u[x+5]<<8|u[x+6]<<16|u[x+7]<<24,u[x]|u[x+1]<<8|u[x+2]<<16|u[x+3]<<24],E=[u[x+12]|u[x+13]<<8|u[x+14]<<16|u[x+15]<<24,u[x+8]|u[x+9]<<8|u[x+10]<<16|u[x+11]<<24],b=c(b,v),b=h(b,31),b=c(b,S),g=l(g,b),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),E=c(E,S),E=h(E,33),E=c(E,v),w=l(w,E),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(b=[0,0],E=[0,0],y){case 15:E=l(E,f([0,u[x+14]],48));case 14:E=l(E,f([0,u[x+13]],40));case 13:E=l(E,f([0,u[x+12]],32));case 12:E=l(E,f([0,u[x+11]],24));case 11:E=l(E,f([0,u[x+10]],16));case 10:E=l(E,f([0,u[x+9]],8));case 9:E=l(E,[0,u[x+8]]),E=c(E,S),E=h(E,33),E=c(E,v),w=l(w,E);case 8:b=l(b,f([0,u[x+7]],56));case 7:b=l(b,f([0,u[x+6]],48));case 6:b=l(b,f([0,u[x+5]],40));case 5:b=l(b,f([0,u[x+4]],32));case 4:b=l(b,f([0,u[x+3]],24));case 3:b=l(b,f([0,u[x+2]],16));case 2:b=l(b,f([0,u[x+1]],8));case 1:b=l(b,[0,u[x]]),b=c(b,v),b=h(b,31),b=c(b,S),g=l(g,b)}return g=l(g,[0,u.length]),w=l(w,[0,u.length]),g=a(g,w),w=a(w,g),g=m(g),w=m(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof ar<"u"?(typeof zr<"u"&&zr.exports&&(ar=zr.exports=e),ar.murmurHash3=e):typeof define=="function"&&define.amd?define([],function(){return e}):(e._murmurHash3=r.murmurHash3,e.noConflict=function(){return r.murmurHash3=e._murmurHash3,e._murmurHash3=t,e.noConflict=t,e},r.murmurHash3=e)})(ar)});var fs=nt((Op,us)=>{us.exports=cs()});var Or=nt((Wp,hs)=>{"use strict";hs.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(t,e){let n=this._internalPositionFor(t,!1);if(e===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(t),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(t),this._changedData=!0):i=!0,this._setInternalPos(n,t,e,i),this._changedLength=!0}}unset(t){this.set(t,void 0)}get(t){this._sortData();let e=this._internalPositionFor(t,!0);if(e!==-1)return this._data[e][1]}push(t){return this.set(this.length,t),this.length}get length(){if(this._sortData(),this._changedLength){let t=this._data[this._data.length-1];this._length=t?t[0]+1:0,this._changedLength=!1}return this._length}forEach(t){let e=0;for(;e<this.length;)t(this.get(e),e,this),e++}map(t){let e=0,n=new Array(this.length);for(;e<this.length;)n[e]=t(this.get(e),e,this),e++;return n}reduce(t,e){let n=0,i=e;for(;n<this.length;){let o=this.get(n);i=t(i,o,n),n++}return i}find(t){let e=0,n,i;for(;e<this.length&&!n;)i=this.get(e),n=t(i),e++;return n?i:void 0}_internalPositionFor(t,e){let n=this._bytePosFor(t,e);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=t-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(al,0),c=~(4294967295<<o+1),h=ls(i&c);return a+h-1}_bytePosFor(t,e){let n=Math.floor(t/7),i=n+1;for(;!e&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(t){let e=this._bytePosFor(t,!1);this._bitArrays[e]|=1<<t-e*7}_unsetBit(t){let e=this._bytePosFor(t,!1);this._bitArrays[e]&=~(1<<t-e*7)}_setInternalPos(t,e,n,i){let o=this._data,s=[e,n];if(i)this._sortData(),o[t]=s;else{if(o.length)if(o[o.length-1][0]>=e)o.push(s);else if(o[0][0]<=e)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(t){this._data.splice(t,1)}_sortData(){this._changedData&&this._data.sort(cl),this._changedData=!1}bitField(){let t=[],e=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,e),h=~(255<<c),f=o&h;i|=f<<8-e,o=o>>>c,n-=c,e-=c,(!e||!n&&!s.length)&&(t.push(i),i=0,e=8)}for(var a=t.length-1;a>0&&t[a]===0;a--)t.pop();return t}compactArray(){return this._sortData(),this._data.map(ul)}};function al(r,t){return r+ls(t)}function ls(r){let t=r;return t=t-(t>>1&1431655765),t=(t&858993459)+(t>>2&858993459),(t+(t>>4)&252645135)*16843009>>24}function cl(r,t){return r[0]-t[0]}function ul(r){return r[1]}});var Is=nt((Im,Bs)=>{var Si=class{constructor(t,e=12,n=8*1024,i=32*1024,o=64,s){this.bits=e,this.min=n,this.max=i,this.asModule=t,this.rabin=new t.Rabin(e,n,i,o,s),this.polynomial=s}fingerprint(t){let{__retain:e,__release:n,__allocArray:i,__getInt32Array:o,Int32Array_ID:s,Uint8Array_ID:a}=this.asModule,c=new Int32Array(Math.ceil(t.length/this.min)),h=e(i(s,c)),f=e(i(a,t)),l=this.rabin.fingerprint(f,h),m=o(l);n(f),n(h);let u=m.indexOf(0);return u>=0?m.subarray(0,u):m}};Bs.exports=Si});var Fs=nt(fr=>{"use strict";var El=typeof BigUint64Array<"u",cr=Symbol(),ur=1024;function vs(r,t){let e=new Uint32Array(r),n=new Uint16Array(r);var i=e[t+-4>>>2]>>>1,o=t>>>1;if(i<=ur)return String.fromCharCode.apply(String,n.subarray(o,o+i));let s=[];do{let a=n[o+ur-1],c=a>=55296&&a<56320?ur-1:ur;s.push(String.fromCharCode.apply(String,n.subarray(o,o+=c))),i-=c}while(i>ur);return s.join("")+String.fromCharCode.apply(String,n.subarray(o,o+i))}function ki(r){let t={};function e(i,o){return i?vs(i.buffer,o):"<yet unknown>"}let n=r.env=r.env||{};return n.abort=n.abort||function(o,s,a,c){let h=t.memory||n.memory;throw Error("abort: "+e(h,o)+" at "+e(h,s)+":"+a+":"+c)},n.trace=n.trace||function(o,s){let a=t.memory||n.memory;console.log("trace: "+e(a,o)+(s?" ":"")+Array.prototype.slice.call(arguments,2,2+s).join(", "))},r.Math=r.Math||Math,r.Date=r.Date||Date,t}function Bi(r,t){let e=t.exports,n=e.memory,i=e.table,o=e.__alloc,s=e.__retain,a=e.__rtti_base||-1;function c(S){let x=new Uint32Array(n.buffer),B=x[a>>>2];if((S>>>=0)>=B)throw Error("invalid id: "+S);return x[(a+4>>>2)+S*2]}function h(S){let x=new Uint32Array(n.buffer),B=x[a>>>2];if((S>>>=0)>=B)throw Error("invalid id: "+S);return x[(a+4>>>2)+S*2+1]}function f(S){return 31-Math.clz32(S>>>5&31)}function l(S){return 31-Math.clz32(S>>>14&31)}function m(S){let x=S.length,B=o(x<<1,1),N=new Uint16Array(n.buffer);for(var U=0,H=B>>>1;U<x;++U)N[H+U]=S.charCodeAt(U);return B}r.__allocString=m;function u(S){let x=n.buffer;if(new Uint32Array(x)[S+-8>>>2]!==1)throw Error("not a string: "+S);return vs(x,S)}r.__getString=u;function d(S,x,B){let N=n.buffer;if(B)switch(S){case 2:return new Float32Array(N);case 3:return new Float64Array(N)}else switch(S){case 0:return new(x?Int8Array:Uint8Array)(N);case 1:return new(x?Int16Array:Uint16Array)(N);case 2:return new(x?Int32Array:Uint32Array)(N);case 3:return new(x?BigInt64Array:BigUint64Array)(N)}throw Error("unsupported align: "+S)}function y(S,x){let B=c(S);if(!(B&3))throw Error("not an array: "+S+" @ "+B);let N=f(B),U=x.length,H=o(U<<N,0),mt=o(B&2?16:12,S),D=new Uint32Array(n.buffer);D[mt+0>>>2]=s(H),D[mt+4>>>2]=H,D[mt+8>>>2]=U<<N,B&2&&(D[mt+12>>>2]=U);let to=d(N,B&1024,B&2048);if(B&8192)for(let Br=0;Br<U;++Br)to[(H>>>N)+Br]=s(x[Br]);else to.set(x,H>>>N);return mt}r.__allocArray=y;function _(S){let x=new Uint32Array(n.buffer),B=x[S+-8>>>2],N=c(B);if(!(N&1))throw Error("not an array: "+B);let U=f(N);var H=x[S+4>>>2];let mt=N&2?x[S+12>>>2]:x[H+-4>>>2]>>>U;return d(U,N&1024,N&2048).subarray(H>>>=U,H+mt)}r.__getArrayView=_;function g(S){let x=_(S),B=x.length,N=new Array(B);for(let U=0;U<B;U++)N[U]=x[U];return N}r.__getArray=g;function w(S){let x=n.buffer,B=new Uint32Array(x)[S+-4>>>2];return x.slice(S,S+B)}r.__getArrayBuffer=w;function b(S,x,B){return new S(E(S,x,B))}function E(S,x,B){let N=n.buffer,U=new Uint32Array(N),H=U[B+4>>>2];return new S(N,H,U[H+-4>>>2]>>>x)}r.__getInt8Array=b.bind(null,Int8Array,0),r.__getInt8ArrayView=E.bind(null,Int8Array,0),r.__getUint8Array=b.bind(null,Uint8Array,0),r.__getUint8ArrayView=E.bind(null,Uint8Array,0),r.__getUint8ClampedArray=b.bind(null,Uint8ClampedArray,0),r.__getUint8ClampedArrayView=E.bind(null,Uint8ClampedArray,0),r.__getInt16Array=b.bind(null,Int16Array,1),r.__getInt16ArrayView=E.bind(null,Int16Array,1),r.__getUint16Array=b.bind(null,Uint16Array,1),r.__getUint16ArrayView=E.bind(null,Uint16Array,1),r.__getInt32Array=b.bind(null,Int32Array,2),r.__getInt32ArrayView=E.bind(null,Int32Array,2),r.__getUint32Array=b.bind(null,Uint32Array,2),r.__getUint32ArrayView=E.bind(null,Uint32Array,2),El&&(r.__getInt64Array=b.bind(null,BigInt64Array,3),r.__getInt64ArrayView=E.bind(null,BigInt64Array,3),r.__getUint64Array=b.bind(null,BigUint64Array,3),r.__getUint64ArrayView=E.bind(null,BigUint64Array,3)),r.__getFloat32Array=b.bind(null,Float32Array,2),r.__getFloat32ArrayView=E.bind(null,Float32Array,2),r.__getFloat64Array=b.bind(null,Float64Array,3),r.__getFloat64ArrayView=E.bind(null,Float64Array,3);function v(S,x){let B=new Uint32Array(n.buffer);var N=B[S+-8>>>2];if(N<=B[a>>>2])do if(N==x)return!0;while(N=h(N));return!1}return r.__instanceof=v,r.memory=r.memory||n,r.table=r.table||i,Ds(e,r)}function Ts(r){return typeof Response<"u"&&r instanceof Response}async function Ns(r,t){return Ts(r=await r)?Cs(r,t):Bi(ki(t||(t={})),await WebAssembly.instantiate(r instanceof WebAssembly.Module?r:await WebAssembly.compile(r),t))}fr.instantiate=Ns;function Al(r,t){return Bi(ki(t||(t={})),new WebAssembly.Instance(r instanceof WebAssembly.Module?r:new WebAssembly.Module(r),t))}fr.instantiateSync=Al;async function Cs(r,t){return WebAssembly.instantiateStreaming?Bi(ki(t||(t={})),(await WebAssembly.instantiateStreaming(r,t)).instance):Ns(Ts(r=await r)?r.arrayBuffer():r,t)}fr.instantiateStreaming=Cs;function Ds(r,t){var e=t?Object.create(t):{},n=r.__argumentsLength?function(i){r.__argumentsLength.value=i}:r.__setArgumentsLength||r.__setargc||function(){};for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let o=r[i],s=i.split("."),a=e;for(;s.length>1;){let f=s.shift();Object.prototype.hasOwnProperty.call(a,f)||(a[f]={}),a=a[f]}let c=s[0],h=c.indexOf("#");if(h>=0){let f=c.substring(0,h),l=a[f];if(typeof l>"u"||!l.prototype){let m=function(...u){return m.wrap(m.prototype.constructor(0,...u))};m.prototype={valueOf:function(){return this[cr]}},m.wrap=function(u){return Object.create(m.prototype,{[cr]:{value:u,writable:!1}})},l&&Object.getOwnPropertyNames(l).forEach(u=>Object.defineProperty(m,u,Object.getOwnPropertyDescriptor(l,u))),a[f]=m}if(c=c.substring(h+1),a=a[f].prototype,/^(get|set):/.test(c)){if(!Object.prototype.hasOwnProperty.call(a,c=c.substring(4))){let m=r[i.replace("set:","get:")],u=r[i.replace("get:","set:")];Object.defineProperty(a,c,{get:function(){return m(this[cr])},set:function(d){u(this[cr],d)},enumerable:!0})}}else c==="constructor"?(a[c]=(...m)=>(n(m.length),o(...m))).original=o:(a[c]=function(...m){return n(m.length),o(this[cr],...m)}).original=o}else/^(get|set):/.test(c)?Object.prototype.hasOwnProperty.call(a,c=c.substring(4))||Object.defineProperty(a,c,{get:r[i.replace("set:","get:")],set:r[i.replace("get:","set:")],enumerable:!0}):typeof o=="function"&&o!==n?(a[c]=(...f)=>(n(f.length),o(...f))).original=o:a[c]=o}return e}fr.demangle=Ds});var Us=nt((Tm,Ls)=>{var{instantiate:Sl}=Fs();Ii.supported=typeof WebAssembly<"u";function Ii(r={}){if(!Ii.supported)return null;var t=new Uint8Array([0,97,115,109,1,0,0,0,1,78,14,96,2,127,126,0,96,1,127,1,126,96,2,127,127,0,96,1,127,1,127,96,1,127,0,96,2,127,127,1,127,96,3,127,127,127,1,127,96,0,0,96,3,127,127,127,0,96,0,1,127,96,4,127,127,127,127,0,96,5,127,127,127,127,127,1,127,96,1,126,1,127,96,2,126,126,1,126,2,13,1,3,101,110,118,5,97,98,111,114,116,0,10,3,54,53,2,2,8,9,3,5,2,8,6,5,3,4,2,6,9,12,13,2,5,11,3,2,3,2,3,2,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,6,7,7,4,4,5,3,1,0,1,6,47,9,127,1,65,0,11,127,1,65,0,11,127,0,65,3,11,127,0,65,4,11,127,1,65,0,11,127,1,65,0,11,127,1,65,0,11,127,0,65,240,2,11,127,0,65,6,11,7,240,5,41,6,109,101,109,111,114,121,2,0,7,95,95,97,108,108,111,99,0,10,8,95,95,114,101,116,97,105,110,0,11,9,95,95,114,101,108,101,97,115,101,0,12,9,95,95,99,111,108,108,101,99,116,0,51,11,95,95,114,116,116,105,95,98,97,115,101,3,7,13,73,110,116,51,50,65,114,114,97,121,95,73,68,3,2,13,85,105,110,116,56,65,114,114,97,121,95,73,68,3,3,6,100,101,103,114,101,101,0,16,3,109,111,100,0,17,5,82,97,98,105,110,3,8,16,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,0,21,16,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,0,22,21,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,23,21,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,24,14,82,97,98,105,110,35,103,101,116,58,119,112,111,115,0,25,14,82,97,98,105,110,35,115,101,116,58,119,112,111,115,0,26,15,82,97,98,105,110,35,103,101,116,58,99,111,117,110,116,0,27,15,82,97,98,105,110,35,115,101,116,58,99,111,117,110,116,0,28,13,82,97,98,105,110,35,103,101,116,58,112,111,115,0,29,13,82,97,98,105,110,35,115,101,116,58,112,111,115,0,30,15,82,97,98,105,110,35,103,101,116,58,115,116,97,114,116,0,31,15,82,97,98,105,110,35,115,101,116,58,115,116,97,114,116,0,32,16,82,97,98,105,110,35,103,101,116,58,100,105,103,101,115,116,0,33,16,82,97,98,105,110,35,115,101,116,58,100,105,103,101,115,116,0,34,21,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,35,21,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,36,22,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,37,22,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,38,31,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,39,31,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,40,20,82,97,98,105,110,35,103,101,116,58,112,111,108,121,110,111,109,105,97,108,0,41,20,82,97,98,105,110,35,115,101,116,58,112,111,108,121,110,111,109,105,97,108,0,42,17,82,97,98,105,110,35,103,101,116,58,109,105,110,115,105,122,101,0,43,17,82,97,98,105,110,35,115,101,116,58,109,105,110,115,105,122,101,0,44,17,82,97,98,105,110,35,103,101,116,58,109,97,120,115,105,122,101,0,45,17,82,97,98,105,110,35,115,101,116,58,109,97,120,115,105,122,101,0,46,14,82,97,98,105,110,35,103,101,116,58,109,97,115,107,0,47,14,82,97,98,105,110,35,115,101,116,58,109,97,115,107,0,48,17,82,97,98,105,110,35,99,111,110,115,116,114,117,99,116,111,114,0,20,17,82,97,98,105,110,35,102,105,110,103,101,114,112,114,105,110,116,0,49,8,1,50,10,165,31,53,199,1,1,4,127,32,1,40,2,0,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,3,65,4,107,118,65,16,115,33,4,32,3,65,7,107,11,33,3,32,1,40,2,20,33,2,32,1,40,2,16,34,5,4,64,32,5,32,2,54,2,20,11,32,2,4,64,32,2,32,5,54,2,16,11,32,1,32,0,32,4,32,3,65,4,116,106,65,2,116,106,40,2,96,70,4,64,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,2,54,2,96,32,2,69,4,64,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,65,127,115,113,34,1,54,2,4,32,1,69,4,64,32,0,32,0,40,2,0,65,1,32,3,116,65,127,115,113,54,2,0,11,11,11,11,226,2,1,6,127,32,1,40,2,0,33,3,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,34,5,65,1,113,4,64,32,3,65,124,113,65,16,106,32,5,65,124,113,106,34,2,65,240,255,255,255,3,73,4,64,32,0,32,4,16,1,32,1,32,2,32,3,65,3,113,114,34,3,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,33,5,11,11,32,3,65,2,113,4,64,32,1,65,4,107,40,2,0,34,2,40,2,0,34,6,65,124,113,65,16,106,32,3,65,124,113,106,34,7,65,240,255,255,255,3,73,4,64,32,0,32,2,16,1,32,2,32,7,32,6,65,3,113,114,34,3,54,2,0,32,2,33,1,11,11,32,4,32,5,65,2,114,54,2,0,32,4,65,4,107,32,1,54,2,0,32,0,32,3,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,2,65,4,107,118,65,16,115,33,4,32,2,65,7,107,11,34,3,65,4,116,32,4,106,65,2,116,106,40,2,96,33,2,32,1,65,0,54,2,16,32,1,32,2,54,2,20,32,2,4,64,32,2,32,1,54,2,16,11,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,1,54,2,96,32,0,32,0,40,2,0,65,1,32,3,116,114,54,2,0,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,114,54,2,4,11,119,1,1,127,32,2,2,127,32,0,40,2,160,12,34,2,4,64,32,2,32,1,65,16,107,70,4,64,32,2,40,2,0,33,3,32,1,65,16,107,33,1,11,11,32,1,11,107,34,2,65,48,73,4,64,15,11,32,1,32,3,65,2,113,32,2,65,32,107,65,1,114,114,54,2,0,32,1,65,0,54,2,16,32,1,65,0,54,2,20,32,1,32,2,106,65,16,107,34,2,65,2,54,2,0,32,0,32,2,54,2,160,12,32,0,32,1,16,2,11,155,1,1,3,127,35,0,34,0,69,4,64,65,1,63,0,34,0,74,4,127,65,1,32,0,107,64,0,65,0,72,5,65,0,11,4,64,0,11,65,176,3,34,0,65,0,54,2,0,65,208,15,65,0,54,2,0,3,64,32,1,65,23,73,4,64,32,1,65,2,116,65,176,3,106,65,0,54,2,4,65,0,33,2,3,64,32,2,65,16,73,4,64,32,1,65,4,116,32,2,106,65,2,116,65,176,3,106,65,0,54,2,96,32,2,65,1,106,33,2,12,1,11,11,32,1,65,1,106,33,1,12,1,11,11,65,176,3,65,224,15,63,0,65,16,116,16,3,65,176,3,36,0,11,32,0,11,45,0,32,0,65,240,255,255,255,3,79,4,64,65,32,65,224,0,65,201,3,65,29,16,0,0,11,32,0,65,15,106,65,112,113,34,0,65,16,32,0,65,16,75,27,11,169,1,1,1,127,32,0,32,1,65,128,2,73,4,127,32,1,65,4,118,33,1,65,0,5,32,1,65,248,255,255,255,1,73,4,64,32,1,65,1,65,27,32,1,103,107,116,106,65,1,107,33,1,11,32,1,65,31,32,1,103,107,34,2,65,4,107,118,65,16,115,33,1,32,2,65,7,107,11,34,2,65,2,116,106,40,2,4,65,127,32,1,116,113,34,1,4,127,32,0,32,1,104,32,2,65,4,116,106,65,2,116,106,40,2,96,5,32,0,40,2,0,65,127,32,2,65,1,106,116,113,34,1,4,127,32,0,32,0,32,1,104,34,0,65,2,116,106,40,2,4,104,32,0,65,4,116,106,65,2,116,106,40,2,96,5,65,0,11,11,11,111,1,1,127,63,0,34,2,32,1,65,248,255,255,255,1,73,4,127,32,1,65,1,65,27,32,1,103,107,116,65,1,107,106,5,32,1,11,65,16,32,0,40,2,160,12,32,2,65,16,116,65,16,107,71,116,106,65,255,255,3,106,65,128,128,124,113,65,16,118,34,1,32,2,32,1,74,27,64,0,65,0,72,4,64,32,1,64,0,65,0,72,4,64,0,11,11,32,0,32,2,65,16,116,63,0,65,16,116,16,3,11,113,1,2,127,32,1,40,2,0,34,3,65,124,113,32,2,107,34,4,65,32,79,4,64,32,1,32,2,32,3,65,2,113,114,54,2,0,32,2,32,1,65,16,106,106,34,1,32,4,65,16,107,65,1,114,54,2,0,32,0,32,1,16,2,5,32,1,32,3,65,126,113,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,32,1,65,16,106,32,1,40,2,0,65,124,113,106,40,2,0,65,125,113,54,2,0,11,11,91,1,2,127,32,0,32,1,16,5,34,4,16,6,34,3,69,4,64,65,1,36,1,65,0,36,1,32,0,32,4,16,6,34,3,69,4,64,32,0,32,4,16,7,32,0,32,4,16,6,33,3,11,11,32,3,65,0,54,2,4,32,3,32,2,54,2,8,32,3,32,1,54,2,12,32,0,32,3,16,1,32,0,32,3,32,4,16,8,32,3,11,13,0,16,4,32,0,32,1,16,9,65,16,106,11,33,1,1,127,32,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,18,0,32,0,65,172,3,75,4,64,32,0,65,16,107,16,52,11,11,140,3,1,1,127,2,64,32,1,69,13,0,32,0,65,0,58,0,0,32,0,32,1,106,65,1,107,65,0,58,0,0,32,1,65,2,77,13,0,32,0,65,1,106,65,0,58,0,0,32,0,65,2,106,65,0,58,0,0,32,0,32,1,106,34,2,65,2,107,65,0,58,0,0,32,2,65,3,107,65,0,58,0,0,32,1,65,6,77,13,0,32,0,65,3,106,65,0,58,0,0,32,0,32,1,106,65,4,107,65,0,58,0,0,32,1,65,8,77,13,0,32,1,65,0,32,0,107,65,3,113,34,1,107,33,2,32,0,32,1,106,34,0,65,0,54,2,0,32,0,32,2,65,124,113,34,1,106,65,4,107,65,0,54,2,0,32,1,65,8,77,13,0,32,0,65,4,106,65,0,54,2,0,32,0,65,8,106,65,0,54,2,0,32,0,32,1,106,34,2,65,12,107,65,0,54,2,0,32,2,65,8,107,65,0,54,2,0,32,1,65,24,77,13,0,32,0,65,12,106,65,0,54,2,0,32,0,65,16,106,65,0,54,2,0,32,0,65,20,106,65,0,54,2,0,32,0,65,24,106,65,0,54,2,0,32,0,32,1,106,34,2,65,28,107,65,0,54,2,0,32,2,65,24,107,65,0,54,2,0,32,2,65,20,107,65,0,54,2,0,32,2,65,16,107,65,0,54,2,0,32,0,32,0,65,4,113,65,24,106,34,2,106,33,0,32,1,32,2,107,33,1,3,64,32,1,65,32,79,4,64,32,0,66,0,55,3,0,32,0,65,8,106,66,0,55,3,0,32,0,65,16,106,66,0,55,3,0,32,0,65,24,106,66,0,55,3,0,32,1,65,32,107,33,1,32,0,65,32,106,33,0,12,1,11,11,11,11,178,1,1,3,127,32,1,65,240,255,255,255,3,32,2,118,75,4,64,65,144,1,65,192,1,65,23,65,56,16,0,0,11,32,1,32,2,116,34,3,65,0,16,10,34,2,32,3,16,13,32,0,69,4,64,65,12,65,2,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,2,34,1,32,0,40,2,0,34,4,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,32,4,16,12,11,32,0,32,1,54,2,0,32,0,32,2,54,2,4,32,0,32,3,54,2,8,32,0,11,46,1,2,127,65,12,65,5,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,65,128,2,65,3,16,14,11,9,0,65,63,32,0,121,167,107,11,49,1,2,127,65,63,32,1,121,167,107,33,2,3,64,65,63,32,0,121,167,107,32,2,107,34,3,65,0,78,4,64,32,0,32,1,32,3,172,134,133,33,0,12,1,11,11,32,0,11,40,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,163,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,65,0,58,0,0,11,38,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,152,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,45,0,0,11,254,5,2,1,127,4,126,32,0,69,4,64,65,232,0,65,6,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,24,32,0,66,0,55,3,32,32,0,66,0,55,3,40,32,0,66,0,55,3,48,32,0,66,0,55,3,56,32,0,66,0,55,3,64,32,0,66,0,55,3,72,32,0,66,0,55,3,80,32,0,66,0,55,3,88,32,0,66,0,55,3,96,32,0,32,2,173,55,3,80,32,0,32,3,173,55,3,88,65,12,65,4,16,10,34,2,65,172,3,75,4,64,32,2,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,32,4,65,0,16,14,33,2,32,0,40,2,0,16,12,32,0,32,2,54,2,0,32,0,32,4,54,2,4,32,0,66,1,32,1,173,134,66,1,125,55,3,96,32,0,66,243,130,183,218,216,230,232,30,55,3,72,35,4,69,4,64,65,0,33,2,3,64,32,2,65,128,2,72,4,64,32,2,65,255,1,113,173,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,65,0,33,4,3,64,32,4,32,0,40,2,4,65,1,107,72,4,64,32,6,66,8,134,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,32,4,65,1,106,33,4,12,1,11,11,35,6,40,2,4,32,2,65,3,116,106,32,6,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,63,32,0,41,3,72,121,167,107,172,33,7,65,0,33,2,3,64,32,2,65,128,2,72,4,64,35,5,33,1,32,2,172,32,7,134,34,8,33,6,65,63,32,0,41,3,72,34,9,121,167,107,33,3,3,64,65,63,32,6,121,167,107,32,3,107,34,4,65,0,78,4,64,32,6,32,9,32,4,172,134,133,33,6,12,1,11,11,32,1,40,2,4,32,2,65,3,116,106,32,6,32,8,132,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,1,36,4,11,32,0,66,0,55,3,24,32,0,66,0,55,3,32,65,0,33,2,3,64,32,2,32,0,40,2,4,72,4,64,32,0,40,2,0,32,2,16,18,32,2,65,1,106,33,2,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,6,66,45,136,167,65,3,116,106,41,3,0,32,6,66,8,134,66,1,132,133,55,3,40,32,0,11,38,1,1,127,32,0,40,2,0,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,55,1,2,127,32,1,32,0,40,2,0,34,2,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,16,12,11,32,0,32,1,54,2,0,11,7,0,32,0,40,2,4,11,9,0,32,0,32,1,54,2,4,11,7,0,32,0,40,2,8,11,9,0,32,0,32,1,54,2,8,11,7,0,32,0,41,3,16,11,9,0,32,0,32,1,55,3,16,11,7,0,32,0,41,3,24,11,9,0,32,0,32,1,55,3,24,11,7,0,32,0,41,3,32,11,9,0,32,0,32,1,55,3,32,11,7,0,32,0,41,3,40,11,9,0,32,0,32,1,55,3,40,11,7,0,32,0,41,3,48,11,9,0,32,0,32,1,55,3,48,11,7,0,32,0,41,3,56,11,9,0,32,0,32,1,55,3,56,11,7,0,32,0,41,3,64,11,9,0,32,0,32,1,55,3,64,11,7,0,32,0,41,3,72,11,9,0,32,0,32,1,55,3,72,11,7,0,32,0,41,3,80,11,9,0,32,0,32,1,55,3,80,11,7,0,32,0,41,3,88,11,9,0,32,0,32,1,55,3,88,11,7,0,32,0,41,3,96,11,9,0,32,0,32,1,55,3,96,11,172,4,2,5,127,1,126,32,2,65,172,3,75,4,64,32,2,65,16,107,34,4,32,4,40,2,4,65,1,106,54,2,4,11,32,2,33,4,65,0,33,2,32,1,40,2,8,33,5,32,1,40,2,4,33,6,3,64,2,127,65,0,33,3,3,64,32,3,32,5,72,4,64,32,3,32,6,106,45,0,0,33,1,32,0,40,2,0,32,0,40,2,8,16,19,33,7,32,0,40,2,8,32,0,40,2,0,40,2,4,106,32,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,7,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,1,173,32,8,66,8,134,132,133,55,3,40,32,0,32,0,41,3,16,66,1,124,55,3,16,32,0,32,0,41,3,24,66,1,124,55,3,24,32,0,41,3,16,32,0,41,3,80,90,4,127,32,0,41,3,40,32,0,41,3,96,131,80,5,65,0,11,4,127,65,1,5,32,0,41,3,16,32,0,41,3,88,90,11,4,64,32,0,32,0,41,3,32,55,3,48,32,0,32,0,41,3,16,55,3,56,32,0,32,0,41,3,40,55,3,64,65,0,33,1,3,64,32,1,32,0,40,2,4,72,4,64,32,0,40,2,0,32,1,16,18,32,1,65,1,106,33,1,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,8,66,8,134,66,1,132,133,55,3,40,32,3,65,1,106,12,3,11,32,3,65,1,106,33,3,12,1,11,11,65,127,11,34,1,65,0,78,4,64,32,5,32,1,107,33,5,32,1,32,6,106,33,6,32,2,34,1,65,1,106,33,2,32,4,40,2,4,32,1,65,2,116,106,32,0,41,3,56,62,2,0,12,1,11,11,32,4,11,10,0,16,15,36,5,16,15,36,6,11,3,0,1,11,73,1,2,127,32,0,40,2,4,34,1,65,255,255,255,255,0,113,34,2,65,1,70,4,64,32,0,65,16,106,16,53,32,0,32,0,40,2,0,65,1,114,54,2,0,35,0,32,0,16,2,5,32,0,32,2,65,1,107,32,1,65,128,128,128,128,127,113,114,54,2,4,11,11,58,0,2,64,2,64,2,64,32,0,65,8,107,40,2,0,14,7,0,0,1,1,1,1,1,2,11,15,11,32,0,40,2,0,34,0,4,64,32,0,65,172,3,79,4,64,32,0,65,16,107,16,52,11,11,15,11,0,11,11,137,3,7,0,65,16,11,55,40,0,0,0,1,0,0,0,1,0,0,0,40,0,0,0,97,0,108,0,108,0,111,0,99,0,97,0,116,0,105,0,111,0,110,0,32,0,116,0,111,0,111,0,32,0,108,0,97,0,114,0,103,0,101,0,65,208,0,11,45,30,0,0,0,1,0,0,0,1,0,0,0,30,0,0,0,126,0,108,0,105,0,98,0,47,0,114,0,116,0,47,0,116,0,108,0,115,0,102,0,46,0,116,0,115,0,65,128,1,11,43,28,0,0,0,1,0,0,0,1,0,0,0,28,0,0,0,73,0,110,0,118,0,97,0,108,0,105,0,100,0,32,0,108,0,101,0,110,0,103,0,116,0,104,0,65,176,1,11,53,38,0,0,0,1,0,0,0,1,0,0,0,38,0,0,0,126,0,108,0,105,0,98,0,47,0,97,0,114,0,114,0,97,0,121,0,98,0,117,0,102,0,102,0,101,0,114,0,46,0,116,0,115,0,65,240,1,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,73,0,110,0,100,0,101,0,120,0,32,0,111,0,117,0,116,0,32,0,111,0,102,0,32,0,114,0,97,0,110,0,103,0,101,0,65,176,2,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,126,0,108,0,105,0,98,0,47,0,116,0,121,0,112,0,101,0,100,0,97,0,114,0,114,0,97,0,121,0,46,0,116,0,115,0,65,240,2,11,53,7,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,145,4,0,0,2,0,0,0,49,0,0,0,2,0,0,0,17,1,0,0,2,0,0,0,16,0,34,16,115,111,117,114,99,101,77,97,112,112,105,110,103,85,82,76,16,46,47,114,97,98,105,110,46,119,97,115,109,46,109,97,112]);return Sl(new Response(new Blob([t],{type:"application/wasm"})),r)}Ls.exports=Ii});var Rs=nt((Nm,zs)=>{var Ps=Is(),kl=Us(),Bl=async(r,t,e,n,i)=>{let o=await kl();return new Ps(o,r,t,e,n,i)};zs.exports={Rabin:Ps,create:Bl}});var yc=nt((n3,$i)=>{"use strict";var Uh=Object.prototype.hasOwnProperty,tt="~";function xr(){}Object.create&&(xr.prototype=Object.create(null),new xr().__proto__||(tt=!1));function Ph(r,t,e){this.fn=r,this.context=t,this.once=e||!1}function mc(r,t,e,n,i){if(typeof e!="function")throw new TypeError("The listener must be a function");var o=new Ph(e,n||r,i),s=tt?tt+t:t;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 cn(r,t){--r._eventsCount===0?r._events=new xr:delete r._events[t]}function J(){this._events=new xr,this._eventsCount=0}J.prototype.eventNames=function(){var t=[],e,n;if(this._eventsCount===0)return t;for(n in e=this._events)Uh.call(e,n)&&t.push(tt?n.slice(1):n);return Object.getOwnPropertySymbols?t.concat(Object.getOwnPropertySymbols(e)):t};J.prototype.listeners=function(t){var e=tt?tt+t:t,n=this._events[e];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};J.prototype.listenerCount=function(t){var e=tt?tt+t:t,n=this._events[e];return n?n.fn?1:n.length:0};J.prototype.emit=function(t,e,n,i,o,s){var a=tt?tt+t:t;if(!this._events[a])return!1;var c=this._events[a],h=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,n),!0;case 4:return c.fn.call(c.context,e,n,i),!0;case 5:return c.fn.call(c.context,e,n,i,o),!0;case 6:return c.fn.call(c.context,e,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var m=c.length,u;for(l=0;l<m;l++)switch(c[l].once&&this.removeListener(t,c[l].fn,void 0,!0),h){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,e);break;case 3:c[l].fn.call(c[l].context,e,n);break;case 4:c[l].fn.call(c[l].context,e,n,i);break;default:if(!f)for(u=1,f=new Array(h-1);u<h;u++)f[u-1]=arguments[u];c[l].fn.apply(c[l].context,f)}}return!0};J.prototype.on=function(t,e,n){return mc(this,t,e,n,!1)};J.prototype.once=function(t,e,n){return mc(this,t,e,n,!0)};J.prototype.removeListener=function(t,e,n,i){var o=tt?tt+t:t;if(!this._events[o])return this;if(!e)return cn(this,o),this;var s=this._events[o];if(s.fn)s.fn===e&&(!i||s.once)&&(!n||s.context===n)&&cn(this,o);else{for(var a=0,c=[],h=s.length;a<h;a++)(s[a].fn!==e||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:cn(this,o)}return this};J.prototype.removeAllListeners=function(t){var e;return t?(e=tt?tt+t:t,this._events[e]&&cn(this,e)):(this._events=new xr,this._eventsCount=0),this};J.prototype.off=J.prototype.removeListener;J.prototype.addListener=J.prototype.on;J.prefixed=tt;J.EventEmitter=J;typeof $i<"u"&&($i.exports=J)});var Ic=nt((q3,Bc)=>{"use strict";Bc.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let t=Object.getPrototypeOf(r);return t===null||t===Object.prototype}});var Fc=nt((Cc,Dc)=>{"use strict";var hn=Ic(),{hasOwnProperty:Tc}=Object.prototype,{propertyIsEnumerable:Gh}=Object,Le=(r,t,e)=>Object.defineProperty(r,t,{value:e,writable:!0,enumerable:!0,configurable:!0}),Wh=Cc,vc={concatArrays:!1,ignoreUndefined:!1},dn=r=>{let t=[];for(let e in r)Tc.call(r,e)&&t.push(e);if(Object.getOwnPropertySymbols){let e=Object.getOwnPropertySymbols(r);for(let n of e)Gh.call(r,n)&&t.push(n)}return t};function Ue(r){return Array.isArray(r)?Yh(r):hn(r)?Kh(r):r}function Yh(r){let t=r.slice(0,0);return dn(r).forEach(e=>{Le(t,e,Ue(r[e]))}),t}function Kh(r){let t=Object.getPrototypeOf(r)===null?Object.create(null):{};return dn(r).forEach(e=>{Le(t,e,Ue(r[e]))}),t}var Nc=(r,t,e,n)=>(e.forEach(i=>{typeof t[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Le(r,i,Yi(r[i],t[i],n)):Le(r,i,Ue(t[i])))}),r),qh=(r,t,e)=>{let n=r.slice(0,0),i=0;return[r,t].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)Tc.call(o,a)&&(s.push(String(a)),o===r?Le(n,i++,o[a]):Le(n,i++,Ue(o[a])));n=Nc(n,o,dn(o).filter(a=>!s.includes(a)),e)}),n};function Yi(r,t,e){return e.concatArrays&&Array.isArray(r)&&Array.isArray(t)?qh(r,t,e):!hn(t)||!hn(r)?Ue(t):Nc(r,t,dn(t),e)}Dc.exports=function(...r){let t=Yi(Ue(vc),this!==Wh&&this||{},vc),e={_:{}};for(let n of r)if(n!==void 0){if(!hn(n))throw new TypeError("`"+n+"` is not an Option Object");e=Yi(e,{_:n},t)}return e._}});var Pc=nt((Z3,Uc)=>{var ze=1e3,Re=ze*60,Oe=Re*60,fe=Oe*24,Xh=fe*7,Jh=fe*365.25;Uc.exports=function(r,t){t=t||{};var e=typeof r;if(e==="string"&&r.length>0)return Zh(r);if(e==="number"&&isFinite(r))return t.long?t1(r):Qh(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Zh(r){if(r=String(r),!(r.length>100)){var t=/^(-?(?:\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(t){var e=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return e*Jh;case"weeks":case"week":case"w":return e*Xh;case"days":case"day":case"d":return e*fe;case"hours":case"hour":case"hrs":case"hr":case"h":return e*Oe;case"minutes":case"minute":case"mins":case"min":case"m":return e*Re;case"seconds":case"second":case"secs":case"sec":case"s":return e*ze;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return e;default:return}}}}function Qh(r){var t=Math.abs(r);return t>=fe?Math.round(r/fe)+"d":t>=Oe?Math.round(r/Oe)+"h":t>=Re?Math.round(r/Re)+"m":t>=ze?Math.round(r/ze)+"s":r+"ms"}function t1(r){var t=Math.abs(r);return t>=fe?mn(r,t,fe,"day"):t>=Oe?mn(r,t,Oe,"hour"):t>=Re?mn(r,t,Re,"minute"):t>=ze?mn(r,t,ze,"second"):r+" ms"}function mn(r,t,e,n){var i=t>=e*1.5;return Math.round(r/e)+" "+n+(i?"s":"")}});var Rc=nt((Q3,zc)=>{function e1(r){e.debug=e,e.default=e,e.coerce=c,e.disable=o,e.enable=i,e.enabled=s,e.humanize=Pc(),e.destroy=h,Object.keys(r).forEach(f=>{e[f]=r[f]}),e.names=[],e.skips=[],e.formatters={};function t(f){let l=0;for(let m=0;m<f.length;m++)l=(l<<5)-l+f.charCodeAt(m),l|=0;return e.colors[Math.abs(l)%e.colors.length]}e.selectColor=t;function e(f){let l,m=null,u,d;function y(..._){if(!y.enabled)return;let g=y,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,_[0]=e.coerce(_[0]),typeof _[0]!="string"&&_.unshift("%O");let E=0;_[0]=_[0].replace(/%([a-zA-Z%])/g,(S,x)=>{if(S==="%%")return"%";E++;let B=e.formatters[x];if(typeof B=="function"){let N=_[E];S=B.call(g,N),_.splice(E,1),E--}return S}),e.formatArgs.call(g,_),(g.log||e.log).apply(g,_)}return y.namespace=f,y.useColors=e.useColors(),y.color=e.selectColor(f),y.extend=n,y.destroy=e.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:()=>m!==null?m:(u!==e.namespaces&&(u=e.namespaces,d=e.enabled(f)),d),set:_=>{m=_}}),typeof e.init=="function"&&e.init(y),y}function n(f,l){let m=e(this.namespace+(typeof l>"u"?":":l)+f);return m.log=this.log,m}function i(f){e.save(f),e.namespaces=f,e.names=[],e.skips=[];let l,m=(typeof f=="string"?f:"").split(/[\s,]+/),u=m.length;for(l=0;l<u;l++)m[l]&&(f=m[l].replace(/\*/g,".*?"),f[0]==="-"?e.skips.push(new RegExp("^"+f.slice(1)+"$")):e.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...e.names.map(a),...e.skips.map(a).map(l=>"-"+l)].join(",");return e.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,m;for(l=0,m=e.skips.length;l<m;l++)if(e.skips[l].test(f))return!1;for(l=0,m=e.names.length;l<m;l++)if(e.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack||f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return e.enable(e.load()),e}zc.exports=e1});var Oc=nt((dt,yn)=>{dt.formatArgs=n1;dt.save=i1;dt.load=o1;dt.useColors=r1;dt.storage=s1();dt.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();dt.colors=["#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 r1(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function n1(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+yn.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;r.splice(1,0,t,"color: inherit");let e=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(e++,i==="%c"&&(n=e))}),r.splice(n,0,t)}dt.log=console.debug||console.log||(()=>{});function i1(r){try{r?dt.storage.setItem("debug",r):dt.storage.removeItem("debug")}catch{}}function o1(){let r;try{r=dt.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function s1(){try{return localStorage}catch{}}yn.exports=Rc()(dt);var{formatters:a1}=yn.exports;a1.j=function(r){try{return JSON.stringify(r)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var q1={};K(q1,{mfs:()=>K1});var Ai=P(q(),1);function hu(r){return r[Symbol.asyncIterator]!=null}function du(r){if(hu(r))return(async()=>{for await(let t of r)return t})();for(let t of r)return t}var Tn=du;function pu(r){return r[Symbol.asyncIterator]!=null}function mu(r,t=1){return t=Number(t),pu(r)?async function*(){let e=[];if(t<1&&(t=1),t!==Math.round(t))throw new Error("Batch size must be an integer");for await(let n of r)for(e.push(n);e.length>=t;)yield e.slice(0,t),e=e.slice(t);for(;e.length>0;)yield e.slice(0,t),e=e.slice(t)}():function*(){let e=[];if(t<1&&(t=1),t!==Math.round(t))throw new Error("Batch size must be an integer");for(let n of r)for(e.push(n);e.length>=t;)yield e.slice(0,t),e=e.slice(t);for(;e.length>0;)yield e.slice(0,t),e=e.slice(t)}()}var je=mu;async function*Ge(r,t=1){for await(let e of je(r,t)){let n=e.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 Ut(r=0){return new Uint8Array(r)}function ot(r=0){return new Uint8Array(r)}function Jt(r,t){t==null&&(t=r.reduce((i,o)=>i+o.length,0));let e=ot(t),n=0;for(let i of r)e.set(i,n),n+=i.length;return e}function io(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var so=Symbol.for("@achingbrain/uint8arraylist");function oo(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let i=e+n.byteLength;if(t<i)return{buf:n,index:t-e};e=i}throw new RangeError("index is out of bounds")}function vr(r){return!!r?.[so]}var Zt=class r{bufs;length;[so]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(vr(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(vr(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=oo(this.bufs,t);return e.buf[e.index]}set(t,e){let n=oo(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(vr(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:i}=this._subList(t,e);return Jt(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:Jt(n,i)}sublist(t,e){let{bufs:n,length:i}=this._subList(t,e),o=new r;return o.length=i,o.bufs=[...n],o}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,t>=c)continue;let h=t>=a&&t<c,f=e>a&&e<=c;if(h&&f){if(t===a&&e===c){n.push(s);break}let l=t-a;n.push(s.subarray(l,l+(e-t)));break}if(h){if(t===0){n.push(s);continue}n.push(s.subarray(t-a));continue}if(f){if(e===c){n.push(s);break}n.push(s.subarray(0,e-a));break}n.push(s)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!vr(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=e;l<=c;l+=f){f=0;for(let m=h;m>=0;m--){let u=this.get(l+m);if(n[m]!==u){f=Math.max(1,m-a[u]);break}}if(f===0)return l}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=ot(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let i=Ut(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,e,n),this.write(i,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let i=Ut(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,e,n),this.write(i,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let i=Ut(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,e,n),this.write(i,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=ot(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let i=Ut(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,e,n),this.write(i,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let i=Ut(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,e,n),this.write(i,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let i=Ut(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,e,n),this.write(i,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let i=Ut(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,e,n),this.write(i,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let i=Ut(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,e,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!io(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((i,o)=>i+o.byteLength,0)),n.length=e,n}};var yu=262144,We=(r={})=>{let t=r.chunkSize??yu;return async function*(n){let i=new Zt,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=t;)if(yield i.slice(0,t),s=!0,t===i.length)i=new Zt,o=0;else{let c=new Zt;c.append(i.sublist(t)),i=c,o-=t}(!s||o>0)&&(yield i.subarray(0,o))}};var M={};K(M,{code:()=>G,createLink:()=>Io,createNode:()=>Bo,decode:()=>V,encode:()=>F,name:()=>pf,prepare:()=>R,validate:()=>Hn});var zn={};K(zn,{base32:()=>Ht,base32hex:()=>vu,base32hexpad:()=>Nu,base32hexpadupper:()=>Cu,base32hexupper:()=>Tu,base32pad:()=>Bu,base32padupper:()=>Iu,base32upper:()=>ku,base32z:()=>Du});var he={};K(he,{coerce:()=>yt,empty:()=>ao,equals:()=>Nn,fromHex:()=>wu,fromString:()=>Cn,isBinary:()=>xu,toHex:()=>gu,toString:()=>Dn});var ao=new Uint8Array(0);function gu(r){return r.reduce((t,e)=>t+e.toString(16).padStart(2,"0"),"")}function wu(r){let t=r.match(/../g);return t!=null?new Uint8Array(t.map(e=>parseInt(e,16))):ao}function Nn(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function yt(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 xu(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Cn(r){return new TextEncoder().encode(r)}function Dn(r){return new TextDecoder().decode(r)}function bu(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(e[s]!==255)throw new TypeError(o+" is ambiguous");e[s]=i}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var y=0,_=0,g=0,w=d.length;g!==w&&d[g]===0;)g++,y++;for(var b=(w-g)*f+1>>>0,E=new Uint8Array(b);g!==w;){for(var v=d[g],S=0,x=b-1;(v!==0||S<_)&&x!==-1;x--,S++)v+=256*E[x]>>>0,E[x]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");_=S,g++}for(var B=b-_;B!==b&&E[B]===0;)B++;for(var N=c.repeat(y);B<b;++B)N+=r.charAt(E[B]);return N}function m(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var y=0;if(d[y]!==" "){for(var _=0,g=0;d[y]===c;)_++,y++;for(var w=(d.length-y)*h+1>>>0,b=new Uint8Array(w);d[y];){var E=e[d.charCodeAt(y)];if(E===255)return;for(var v=0,S=w-1;(E!==0||v<g)&&S!==-1;S--,v++)E+=a*b[S]>>>0,b[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=v,y++}if(d[y]!==" "){for(var x=w-g;x!==w&&b[x]===0;)x++;for(var B=new Uint8Array(_+(w-x)),N=_;x!==w;)B[N++]=b[x++];return B}}}function u(d){var y=m(d);if(y)return y;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:m,decode:u}}var _u=bu,Eu=_u,co=Eu;var Fn=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Ln=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){if(this.name=t,this.prefix=e,e.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=e.codePointAt(0),this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return uo(this,t)}},Un=class{decoders;constructor(t){this.decoders=t}or(t){return uo(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function uo(r,t){return new Un({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Pn=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,i){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=i,this.encoder=new Fn(t,e,n),this.decoder=new Ln(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function de({name:r,prefix:t,encode:e,decode:n}){return new Pn(r,t,e,n)}function Mt({name:r,prefix:t,alphabet:e}){let{encode:n,decode:i}=co(e,r);return de({prefix:t,name:r,encode:n,decode:o=>yt(i(o))})}function Au(r,t,e,n){let i={};for(let f=0;f<t.length;++f)i[t[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*e/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<e|l,a+=e,a>=8&&(a-=8,s[h++]=255&c>>a)}if(a>=e||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Su(r,t,e){let n=t[t.length-1]==="=",i=(1<<e)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>e;)s-=e,o+=t[i&a>>s];if(s!==0&&(o+=t[i&a<<e-s]),n)for(;o.length*e&7;)o+="=";return o}function z({name:r,prefix:t,bitsPerChar:e,alphabet:n}){return de({prefix:t,name:r,encode(i){return Su(i,n,e)},decode(i){return Au(i,n,e,r)}})}var Ht=z({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),ku=z({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Bu=z({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Iu=z({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),vu=z({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Tu=z({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Nu=z({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Cu=z({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Du=z({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Rn={};K(Rn,{base58btc:()=>gt,base58flickr:()=>Fu});var gt=Mt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Fu=Mt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Lu=ho,fo=128,Uu=127,Pu=~Uu,zu=Math.pow(2,31);function ho(r,t,e){t=t||[],e=e||0;for(var n=e;r>=zu;)t[e++]=r&255|fo,r/=128;for(;r&Pu;)t[e++]=r&255|fo,r>>>=7;return t[e]=r|0,ho.bytes=e-n+1,t}var Ru=On,Ou=128,lo=127;function On(r,n){var e=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw On.bytes=0,new RangeError("Could not decode varint");s=r[o++],e+=i<28?(s&lo)<<i:(s&lo)*Math.pow(2,i),i+=7}while(s>=Ou);return On.bytes=o-n,e}var $u=Math.pow(2,7),Vu=Math.pow(2,14),Mu=Math.pow(2,21),Hu=Math.pow(2,28),ju=Math.pow(2,35),Gu=Math.pow(2,42),Wu=Math.pow(2,49),Yu=Math.pow(2,56),Ku=Math.pow(2,63),qu=function(r){return r<$u?1:r<Vu?2:r<Mu?3:r<Hu?4:r<ju?5:r<Gu?6:r<Wu?7:r<Yu?8:r<Ku?9:10},Xu={encode:Lu,decode:Ru,encodingLength:qu},Ju=Xu,Ye=Ju;function Ke(r,t=0){return[Ye.decode(r,t),Ye.decode.bytes]}function pe(r,t,e=0){return Ye.encode(r,t,e),t}function me(r){return Ye.encodingLength(r)}function Qt(r,t){let e=t.byteLength,n=me(r),i=n+me(e),o=new Uint8Array(i+e);return pe(r,o,0),pe(e,o,n),o.set(t,i),new ye(r,e,t,o)}function Nr(r){let t=yt(r),[e,n]=Ke(t),[i,o]=Ke(t.subarray(n)),s=t.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ye(e,i,s,t)}function po(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&Nn(r.bytes,e.bytes)}}var ye=class{code;size;digest;bytes;constructor(t,e,n,i){this.code=t,this.size=e,this.digest=n,this.bytes=i}};function mo(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Qu(e,$n(r),t??gt.encoder);default:return tf(e,$n(r),t??Ht.encoder)}}var yo=new WeakMap;function $n(r){let t=yo.get(r);if(t==null){let e=new Map;return yo.set(r,e),e}return t}var C=class r{code;version;multihash;bytes;"/";constructor(t,e,n,i){this.code=e,this.version=t,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:t,multihash:e}=this;if(t!==qe)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==ef)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}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:t,digest:e}=this.multihash,n=Qt(t,e);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(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&po(t.multihash,n.multihash)}toString(t){return mo(this,t)}toJSON(){return{"/":mo(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:i,multihash:o,bytes:s}=e;return new r(n,i,o,s??go(n,i,o.bytes))}else if(e[rf]===!0){let{version:n,multihash:i,code:o}=e,s=Nr(i);return r.create(n,o,s)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==qe)throw new Error(`Version 0 CID must use dag-pb (code: ${qe}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let i=go(t,e,n.bytes);return new r(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,qe,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,i=yt(t.subarray(n,n+e.multihashSize));if(i.byteLength!==e.multihashSize)throw new Error("Incorrect length");let o=i.subarray(e.multihashSize-e.digestSize),s=new ye(e.multihashCode,e.digestSize,o,i);return[e.version===0?r.createV0(s):r.createV1(e.codec,s),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[l,m]=Ke(t.subarray(e));return e+=m,l},i=n(),o=qe;if(i===18?(i=0,e=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=e,a=n(),c=n(),h=e+c,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(t,e){let[n,i]=Zu(t,e),o=r.decode(i);if(o.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return $n(o).set(n,t),o}};function Zu(r,t){switch(r[0]){case"Q":{let e=t??gt;return[gt.prefix,e.decode(`${gt.prefix}${r}`)]}case gt.prefix:{let e=t??gt;return[gt.prefix,e.decode(r)]}case Ht.prefix:{let e=t??Ht;return[Ht.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function Qu(r,t,e){let{prefix:n}=e;if(n!==gt.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let i=t.get(n);if(i==null){let o=e.encode(r).slice(1);return t.set(n,o),o}else return i}function tf(r,t,e){let{prefix:n}=e,i=t.get(n);if(i==null){let o=e.encode(r);return t.set(n,o),o}else return i}var qe=112,ef=18;function go(r,t,e){let n=me(r),i=n+me(t),o=new Uint8Array(i+e.byteLength);return pe(r,o,0),pe(t,o,n),o.set(e,i),o}var rf=Symbol.for("@ipld/js-cid/CID");var nf=new TextDecoder;function Vn(r,t){let e=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(t>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[t++];if(e+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[e,t]}function Cr(r,t){let e;[e,t]=Vn(r,t);let n=t+e;if(e<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(t,n),n]}function wo(r,t){let e;return[e,t]=Vn(r,t),[e&7,e>>3,t]}function of(r){let t={},e=r.length,n=0;for(;n<e;){let i,o;if([i,o,n]=wo(r,n),o===1){if(t.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(t.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(t.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[t.Hash,n]=Cr(r,n)}else if(o===2){if(t.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(t.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=Cr(r,n),t.Name=nf.decode(s)}else if(o===3){if(t.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[t.Tsize,n]=Vn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>e)throw new Error("protobuf: (PBLink) unexpected end of data");return t}function xo(r){let t=r.length,e=0,n,i=!1,o;for(;e<t;){let a,c;if([a,c,e]=wo(r,e),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,e]=Cr(r,e),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,e]=Cr(r,e),n.push(of(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(e>t)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var _o=new TextEncoder,bo=2**32,sf=2**31;function af(r,t){let e=t.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");e=Xe(t,e,r.Tsize)-1,t[e]=24}if(typeof r.Name=="string"){let n=_o.encode(r.Name);e-=n.length,t.set(n,e),e=Xe(t,e,n.length)-1,t[e]=18}return r.Hash&&(e-=r.Hash.length,t.set(r.Hash,e),e=Xe(t,e,r.Hash.length)-1,t[e]=10),t.length-e}function Eo(r){let t=uf(r),e=new Uint8Array(t),n=t;if(r.Data&&(n-=r.Data.length,e.set(r.Data,n),n=Xe(e,n,r.Data.length)-1,e[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=af(r.Links[i],e.subarray(0,n));n-=o,n=Xe(e,n,o)-1,e[n]=18}return e}function cf(r){let t=0;if(r.Hash){let e=r.Hash.length;t+=1+e+we(e)}if(typeof r.Name=="string"){let e=_o.encode(r.Name).length;t+=1+e+we(e)}return typeof r.Tsize=="number"&&(t+=1+we(r.Tsize)),t}function uf(r){let t=0;if(r.Data){let e=r.Data.length;t+=1+e+we(e)}if(r.Links)for(let e of r.Links){let n=cf(e);t+=1+n+we(n)}return t}function Xe(r,t,e){t-=we(e);let n=t;for(;e>=sf;)r[t++]=e&127|128,e/=128;for(;e>=128;)r[t++]=e&127|128,e>>>=7;return r[t]=e,n}function we(r){return r%2===0&&r++,Math.floor((ff(r)+6)/7)}function ff(r){let t=0;return r>=bo&&(r=Math.floor(r/bo),t=32),r>=65536&&(r>>>=16,t+=16),r>=256&&(r>>>=8,t+=8),t+lf[r]}var lf=[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 hf=["Data","Links"],df=["Hash","Name","Tsize"],Mn=new TextEncoder;function So(r,t){if(r===t)return 0;let e=r.Name?Mn.encode(r.Name):[],n=t.Name?Mn.encode(t.Name):[],i=e.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(e[s]!==n[s]){i=e[s],o=n[s];break}return i<o?-1:o<i?1:0}function Ao(r,t){return!Object.keys(r).some(e=>!t.includes(e))}function ko(r){if(typeof r.asCID=="object"){let e=C.asCID(r);if(!e)throw new TypeError("Invalid DAG-PB form");return{Hash:e}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let t={};if(r.Hash){let e=C.asCID(r.Hash);try{e||(typeof r.Hash=="string"?e=C.parse(r.Hash):r.Hash instanceof Uint8Array&&(e=C.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}e&&(t.Hash=e)}if(!t.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(t.Name=r.Name),typeof r.Tsize=="number"&&(t.Tsize=r.Tsize),t}function R(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 t={};if(r.Data!==void 0)if(typeof r.Data=="string")t.Data=Mn.encode(r.Data);else if(r.Data instanceof Uint8Array)t.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))t.Links=r.Links.map(ko),t.Links.sort(So);else throw new TypeError("Invalid DAG-PB form");else t.Links=[];return t}function Hn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!Ao(r,hf))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 t=0;t<r.Links.length;t++){let e=r.Links[t];if(!e||typeof e!="object"||Array.isArray(e)||e instanceof Uint8Array||e["/"]&&e["/"]===e.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!Ao(e,df))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(e.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(e.Hash==null||!e.Hash["/"]||e.Hash["/"]!==e.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(e.Name!==void 0&&typeof e.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(e.Tsize!==void 0){if(typeof e.Tsize!="number"||e.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(e.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(t>0&&So(e,r.Links[t-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function Bo(r,t=[]){return R({Data:r,Links:t})}function Io(r,t,e){return ko({Hash:e,Name:r,Tsize:t})}function vo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var pf="dag-pb",G=112;function F(r){Hn(r);let t={};return r.Links&&(t.Links=r.Links.map(e=>{let n={};return e.Hash&&(n.Hash=e.Hash.bytes),e.Name!==void 0&&(n.Name=e.Name),e.Tsize!==void 0&&(n.Tsize=e.Tsize),n})),r.Data&&(t.Data=r.Data),Eo(t)}function V(r){let t=vo(r),e=xo(t),n={};return e.Data&&(n.Data=e.Data),e.Links&&(n.Links=e.Links.map(i=>{let o={};try{o.Hash=C.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var gi=P(q(),1);var mf=Math.pow(2,7),yf=Math.pow(2,14),gf=Math.pow(2,21),To=Math.pow(2,28),No=Math.pow(2,35),Co=Math.pow(2,42),Do=Math.pow(2,49),Q=128,jt=127;function Je(r){if(r<mf)return 1;if(r<yf)return 2;if(r<gf)return 3;if(r<To)return 4;if(r<No)return 5;if(r<Co)return 6;if(r<Do)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Fo(r,t,e=0){switch(Je(r)){case 8:t[e++]=r&255|Q,r/=128;case 7:t[e++]=r&255|Q,r/=128;case 6:t[e++]=r&255|Q,r/=128;case 5:t[e++]=r&255|Q,r/=128;case 4:t[e++]=r&255|Q,r>>>=7;case 3:t[e++]=r&255|Q,r>>>=7;case 2:t[e++]=r&255|Q,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function Lo(r,t){let e=r[t],n=0;if(n+=e&jt,e<Q||(e=r[t+1],n+=(e&jt)<<7,e<Q)||(e=r[t+2],n+=(e&jt)<<14,e<Q)||(e=r[t+3],n+=(e&jt)<<21,e<Q)||(e=r[t+4],n+=(e&jt)*To,e<Q)||(e=r[t+5],n+=(e&jt)*No,e<Q)||(e=r[t+6],n+=(e&jt)*Co,e<Q)||(e=r[t+7],n+=(e&jt)*Do,e<Q))return n;throw new RangeError("Could not decode varint")}var jn=new Float32Array([-0]),Gt=new Uint8Array(jn.buffer);function Uo(r,t,e){jn[0]=r,t[e]=Gt[0],t[e+1]=Gt[1],t[e+2]=Gt[2],t[e+3]=Gt[3]}function Po(r,t){return Gt[0]=r[t],Gt[1]=r[t+1],Gt[2]=r[t+2],Gt[3]=r[t+3],jn[0]}var Gn=new Float64Array([-0]),X=new Uint8Array(Gn.buffer);function zo(r,t,e){Gn[0]=r,t[e]=X[0],t[e+1]=X[1],t[e+2]=X[2],t[e+3]=X[3],t[e+4]=X[4],t[e+5]=X[5],t[e+6]=X[6],t[e+7]=X[7]}function Ro(r,t){return X[0]=r[t],X[1]=r[t+1],X[2]=r[t+2],X[3]=r[t+3],X[4]=r[t+4],X[5]=r[t+5],X[6]=r[t+6],X[7]=r[t+7],Gn[0]}var wf=BigInt(Number.MAX_SAFE_INTEGER),xf=BigInt(Number.MIN_SAFE_INTEGER),st=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return te;if(t<wf&&t>xf)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,i=t-(n<<32n);return e&&(n=~n|0n,i=~i|0n,++i>Oo&&(i=0n,++n>Oo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(t){if(t===0)return te;let e=t<0;e&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):te}},te=new st(0,0);te.toBigInt=function(){return 0n};te.zzEncode=te.zzDecode=function(){return this};te.length=function(){return 1};var Oo=4294967296n;function $o(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function Vo(r,t,e){if(e-t<1)return"";let i,o=[],s=0,a;for(;t<e;)a=r[t++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[t++]&63:a>239&&a<365?(a=((a&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[t++]&63)<<6|r[t++]&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 Wn(r,t,e){let n=e,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?t[e++]=i:i<2048?(t[e++]=i>>6|192,t[e++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,t[e++]=i>>18|240,t[e++]=i>>12&63|128,t[e++]=i>>6&63|128,t[e++]=i&63|128):(t[e++]=i>>12|224,t[e++]=i>>6&63|128,t[e++]=i&63|128);return e-n}function _t(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function Dr(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var Yn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,_t(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw _t(this,4);return Dr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw _t(this,4);return Dr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw _t(this,4);let t=Po(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw _t(this,4);let t=Ro(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw _t(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return Vo(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw _t(this,t);this.pos+=t}else do if(this.pos>=this.len)throw _t(this);while(this.buf[this.pos++]&128);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new st(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw _t(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw _t(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw _t(this,8);let t=Dr(this.buf,this.pos+=4),e=Dr(this.buf,this.pos+=4);return new st(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=Lo(this.buf,this.pos);return this.pos+=Je(t),t}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 Kn(r){return new Yn(r instanceof Uint8Array?r:r.subarray())}function Ze(r,t,e){let n=Kn(r);return t.decode(n,void 0,e)}var qn={};K(qn,{base10:()=>bf});var bf=Mt({prefix:"9",name:"base10",alphabet:"0123456789"});var Xn={};K(Xn,{base16:()=>_f,base16upper:()=>Ef});var _f=z({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ef=z({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Jn={};K(Jn,{base2:()=>Af});var Af=z({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Zn={};K(Zn,{base256emoji:()=>vf});var Ho=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}"),Sf=Ho.reduce((r,t,e)=>(r[e]=t,r),[]),kf=Ho.reduce((r,t,e)=>(r[t.codePointAt(0)]=e,r),[]);function Bf(r){return r.reduce((t,e)=>(t+=Sf[e],t),"")}function If(r){let t=[];for(let e of r){let n=kf[e.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${e}`);t.push(n)}return new Uint8Array(t)}var vf=de({prefix:"\u{1F680}",name:"base256emoji",encode:Bf,decode:If});var Qn={};K(Qn,{base36:()=>Tf,base36upper:()=>Nf});var Tf=Mt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Nf=Mt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var ti={};K(ti,{base64:()=>Qe,base64pad:()=>Cf,base64url:()=>Df,base64urlpad:()=>Ff});var Qe=z({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Cf=z({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Df=z({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ff=z({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ei={};K(ei,{base8:()=>Lf});var Lf=z({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ri={};K(ri,{identity:()=>Uf});var Uf=de({prefix:"\0",name:"identity",encode:r=>Dn(r),decode:r=>Cn(r)});var r0=new TextEncoder,Pf=new TextDecoder;var jo=512;function Go(r){return JSON.parse(Pf.decode(r))}var vt={};K(vt,{code:()=>it,decode:()=>Of,encode:()=>Rf,name:()=>zf});var zf="raw",it=85;function Rf(r){return yt(r)}function Of(r){return yt(r)}var oi={};K(oi,{identity:()=>ii});var Wo=0,$f="identity",Yo=yt;function Vf(r){return Qt(Wo,Yo(r))}var ii={code:Wo,name:$f,encode:Yo,digest:Vf};var ai={};K(ai,{sha256:()=>at,sha512:()=>Mf});function ee({name:r,code:t,encode:e}){return new si(r,t,e)}var si=class{name;code;encode;constructor(t,e,n){this.name=t,this.code=e,this.encode=n}digest(t){if(t instanceof Uint8Array){let e=this.encode(t);return e instanceof Uint8Array?Qt(this.code,e):e.then(n=>Qt(this.code,n))}else throw Error("Unknown type, must be binary type")}};function qo(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var at=ee({name:"sha2-256",code:18,encode:qo("SHA-256")}),Mf=ee({name:"sha2-512",code:19,encode:qo("SHA-512")});var ci={...ri,...Jn,...ei,...qn,...Xn,...zn,...Qn,...Rn,...ti,...Zn},m0={...ai,...oi};function Jo(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Xo=Jo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ui=Jo("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=ot(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),Hf={utf8:Xo,"utf-8":Xo,hex:ci.base16,latin1:ui,ascii:ui,binary:ui,...ci},Fr=Hf;function wt(r,t="utf8"){let e=Fr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function fi(r){let t=r??8192,e=t>>>1,n,i=t;return function(s){if(s<1||s>e)return ot(s);i+s>t&&(n=ot(t),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var re=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function li(){}var di=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},jf=fi();function Gf(r){return globalThis.Buffer!=null?ot(r):jf(r)}var er=class{len;head;tail;states;constructor(){this.len=0,this.head=new re(li,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new re(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new pi((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(Lr,10,st.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=st.fromBigInt(t);return this._push(Lr,e.length(),e)}uint64Number(t){return this._push(Fo,Je(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=st.fromBigInt(t).zzEncode();return this._push(Lr,e.length(),e)}sint64Number(t){let e=st.fromNumber(t).zzEncode();return this._push(Lr,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(hi,1,t?1:0)}fixed32(t){return this._push(tr,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=st.fromBigInt(t);return this._push(tr,4,e.lo)._push(tr,4,e.hi)}fixed64Number(t){let e=st.fromNumber(t);return this._push(tr,4,e.lo)._push(tr,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(Uo,4,t)}double(t){return this._push(zo,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(hi,1,0):this.uint32(e)._push(Yf,e,t)}string(t){let e=$o(t);return e!==0?this.uint32(e)._push(Wn,e,t):this._push(hi,1,0)}fork(){return this.states=new di(this),this.head=this.tail=new re(li,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 re(li,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=Gf(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function hi(r,t,e){t[e]=r&255}function Wf(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var pi=class extends re{next;constructor(t,e){super(Wf,t,e),this.next=void 0}};function Lr(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function tr(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function Yf(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(er.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Kf,t,r),this},er.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(qf,t,r),this});function Kf(r,t,e){t.set(r,e)}function qf(r,t,e){r.length<40?Wn(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(wt(r),e)}function mi(){return new er}function rr(r,t){let e=mi();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}var xe;(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"})(xe||(xe={}));function Ur(r,t,e,n){return{name:r,type:t,encode:e,decode:n}}function yi(r){function t(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let e=function(o,s){let a=t(o);s.int32(a)},n=function(o){let s=o.int32();return t(s)};return Ur("enum",xe.VARINT,e,n)}function nr(r,t){return Ur("message",xe.LENGTH_DELIMITED,r,t)}var Et;(function(r){let t;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(t=r.DataType||(r.DataType={}));let e;(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"})(e||(e={})),function(i){i.codec=()=>yi(e)}(t=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=nr((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Pr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Pr.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>rr(i,r.codec()),r.decode=i=>Ze(i,r.codec())})(Et||(Et={}));var Pr;(function(r){let t;r.codec=()=>(t==null&&(t=nr((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.Seconds!=null&&(n.uint32(8),n.int64(e.Seconds)),e.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(e.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let s=e.uint32();switch(s>>>3){case 1:i.Seconds=e.int64();break;case 2:i.FractionalNanoseconds=e.fixed32();break;default:e.skipType(s&7);break}}return i})),t),r.encode=e=>rr(e,r.codec()),r.decode=e=>Ze(e,r.codec())})(Pr||(Pr={}));var Zo;(function(r){let t;r.codec=()=>(t==null&&(t=nr((e,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),e.MimeType!=null&&(n.uint32(10),n.string(e.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(e,n)=>{let i={},o=n==null?e.len:e.pos+n;for(;e.pos<o;){let s=e.uint32();switch(s>>>3){case 1:i.MimeType=e.string();break;default:e.skipType(s&7);break}}return i})),t),r.encode=e=>rr(e,r.codec()),r.decode=e=>Ze(e,r.codec())})(Zo||(Zo={}));var Qo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},Xf=["directory","hamt-sharded-directory"],ts=parseInt("0644",8),es=parseInt("0755",8),T=class r{static unmarshal(t){let e=Et.decode(t),n=new r({type:Qo[e.Type!=null?e.Type.toString():"File"],data:e.Data,blockSizes:e.blocksizes,mode:e.mode,mtime:e.mtime!=null?{secs:e.mtime.Seconds??0n,nsecs:e.mtime.FractionalNanoseconds}:void 0,fanout:e.fanout});return n._originalMode=e.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(t={type:"file"}){let{type:e,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=t;if(e!=null&&!Object.values(Qo).includes(e))throw(0,gi.default)(new Error("Type: "+e+" is not valid"),"ERR_INVALID_TYPE");this.type=e??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(t){t==null?this._mode=this.isDirectory()?es:ts:this._mode=t&4095}get mode(){return this._mode}isDirectory(){return Xf.includes(this.type)}addBlockSize(t){this.blockSizes.push(t)}removeBlockSize(t){this.blockSizes.splice(t,1)}fileSize(){if(this.isDirectory())return 0n;let t=0n;return this.blockSizes.forEach(e=>{t+=e}),this.data!=null&&(t+=BigInt(this.data.length)),t}marshal(){let t;switch(this.type){case"raw":t=Et.DataType.Raw;break;case"directory":t=Et.DataType.Directory;break;case"file":t=Et.DataType.File;break;case"metadata":t=Et.DataType.Metadata;break;case"symlink":t=Et.DataType.Symlink;break;case"hamt-sharded-directory":t=Et.DataType.HAMTShard;break;default:throw(0,gi.default)(new Error(`Type: ${t} is not valid`),"ERR_INVALID_TYPE")}let e=this.data;(this.data==null||this.data.length===0)&&(e=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===ts&&!this.isDirectory()&&(n=void 0),n===es&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),Et.encode({Type:t,Data:e,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var O=class extends Event{constructor(t,e){super(t),this.detail=e}};var At=async(r,t,e)=>{e.codec==null&&(e.codec=M);let n=await at.digest(r),i=C.create(e.cidVersion,e.codec.code,n);return await t.put(i,r,e),i};function rs(r){return async function*(e,n){let i=0n;for await(let o of e.content)yield async()=>{let s,a={codec:M,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=vt,a.cidVersion=1):(s=new T({type:r.leafType,data:o}),o=F({Data:s.marshal(),Links:[]}));let c=await At(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new O("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:e.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var wi=P(q(),1);var ns=async(r,t,e)=>{let n=new T({type:"directory",mtime:r.mtime,mode:r.mode}),i=F(R({Data:n.marshal()})),o=await At(i,t,e),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*Jf(r,t,e){let n=-1,i;for await(let o of Ge(e.bufferImporter(r,t),e.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 is(r){return r.single===!0}var Zf=(r,t,e)=>async function(i){if(i.length===1&&is(i[0])&&e.reduceSingleLeafToSelf){let f=i[0],l=f.block;return is(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new T({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=F(R(l)),f.cid=await At(f.block,t,{...e,cidVersion:e.cidVersion}),f.size=BigInt(f.block.length)),e.onProgress?.(new O("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new T({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===it&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===it?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs==null||f.unixfs.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},c=F(R(a)),h=await At(c,t,e);return e.onProgress?.(new O("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:c}},os=async(r,t,e)=>e.layout(Jf(r,t,e),Zf(r,t,e));function Qf(r){return Symbol.iterator in r}function tl(r){return Symbol.asyncIterator in r}function el(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Qf(r))return async function*(){yield*r}();if(tl(r))return r}catch{throw(0,wi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,wi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function ss(r){return async function*(e,n){for await(let i of e){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),rl(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(el(i.content)))){let h=BigInt(c.byteLength);a+=h,r.onProgress?.(new O("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield c}}(),originalPath:o};yield async()=>os(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>ns(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function rl(r){return r.content!=null}var xi=P(q(),1);var as=()=>async function*(t){for await(let e of t){if(e.length===void 0)throw(0,xi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof e=="string"||e instanceof String)yield wt(e.toString());else if(Array.isArray(e))yield Uint8Array.from(e);else if(e instanceof Uint8Array)yield e;else throw(0,xi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var nl=174;function ir(r){let t=r?.maxChildrenPerNode??nl;return async function e(n,i){let o=[];for await(let s of je(n,t))o.push(await i(s));return o.length>1?e(o,i):o[0]}}function il(r){return r[Symbol.asyncIterator]!=null}function ol(r){if(il(r))return(async()=>{let e=[];for await(let n of r)e.push(n);return e})();let t=[];for(let e of r)t.push(e);return t}var bi=ol;var Tt=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(t,e){this.options=e??{},this.root=t.root,this.dir=t.dir,this.path=t.path,this.dirty=t.dirty,this.flat=t.flat,this.parent=t.parent,this.parentKey=t.parentKey,this.unixfs=t.unixfs,this.mode=t.mode,this.mtime=t.mtime}},or=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),sr=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var ne=class extends Tt{_children;constructor(t,e){super(t,e),this._children=new Map}async put(t,e){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(t,e)}async get(t){return Promise.resolve(this._children.get(t))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[t,e]of this._children.entries())yield{key:t,child:e}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[t,e]of this._children.entries())e.size!=null&&e.cid!=null&&(this.nodeSize+=t.length+(this.options.cidVersion===1?sr.bytes.byteLength:or.bytes.byteLength));return this.nodeSize}async*flush(t){let e=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Tt)for await(let l of h.flush(t))f=l,yield l;f.size!=null&&f.cid!=null&&e.push({Name:c,Tsize:Number(f.size),Hash:f.cid})}let n=new T({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:e},o=F(R(i)),s=await At(o,t,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize==null?0:h.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Rr=P(fs(),1);function sl(r){let t=new Array(4);for(let e=0;e<4;e++)t[e]=r&255,r=r>>8;return new Uint8Array(t)}var Mp=ee({name:"murmur3-32",code:35,encode:r=>sl(Rr.default.x86.hash32(r))}),ie=ee({name:"murmur3-128",code:34,encode:r=>he.fromHex(Rr.default.x64.hash128(r))}),Hp=ee({name:"murmur3-x64-64",code:34,encode:r=>he.fromHex(Rr.default.x64.hash128(r)).subarray(0,8)});var ds=P(Or(),1);var ct=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(t,e,n=0){this._options=t,this._popCount=0,this._parent=e,this._posAtParent=n,this._children=new ds.default,this.key=null}async put(t,e){let n=await this._findNewBucketAndPos(t);n.bucket._putAt(n,t,e)}async get(t){let e=await this._findChild(t);if(e!=null)return e.value}async del(t){let e=await this._findPlace(t),n=e.bucket._at(e.pos);n!=null&&n.key===t&&e.bucket._delAt(e.pos)}leafCount(){return this._children.compactArray().reduce((e,n)=>n instanceof r?e+n.leafCount():e+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let t=this._children.compactArray();for(let e of t)e instanceof r?yield*e.eachLeafSeries():yield e}serialize(t,e){let n=[];return e(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(t,e)):i.push(t(o,s))),i),n))}async asyncTransform(t,e){return ps(this,t,e)}toJSON(){return this.serialize(ll,hl)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(t){let e=await this._findPlace(t),n=e.bucket._at(e.pos);if(!(n instanceof r)&&n!=null&&n.key===t)return n}async _findPlace(t){let e=this._options.hash(typeof t=="string"?wt(t):t),n=await e.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(e):{bucket:this,pos:n,hash:e,existingChild:i}}async _findNewBucketAndPos(t){let e=await this._findPlace(t);if(e.existingChild!=null&&e.existingChild.key!==t){let n=new r(this._options,e.bucket,e.pos);e.bucket._putObjectAt(e.pos,n);let i=await n._findPlace(e.existingChild.hash);return i.bucket._putAt(i,e.existingChild.key,e.existingChild.value),n._findNewBucketAndPos(e.hash)}return e}_putAt(t,e,n){this._putObjectAt(t.pos,{key:e,value:n,hash:t.hash})}_putObjectAt(t,e){this._children.get(t)==null&&this._popCount++,this._children.set(t,e)}_delAt(t){if(t===-1)throw new Error("Invalid position");this._children.get(t)!=null&&this._popCount--,this._children.unset(t),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let t=this._children.find(fl);if(t!=null&&!(t instanceof r)){let e=t.hash;e.untake(this._options.bits);let n={pos:this._posAtParent,hash:e,bucket:this._parent};this._parent._putAt(n,t.key,t.value)}}else this._parent._delAt(this._posAtParent)}_at(t){return this._children.get(t)}};function fl(r){return!!r}function ll(r,t){return r.key}function hl(r){return r}async function ps(r,t,e){let n=[];for(let i of r._children.compactArray())if(i instanceof ct)await ps(i,t,e);else{let o=await t(i);n.push({bitField:r._children.bitField(),children:o})}return e(n)}var dl=[255,254,252,248,240,224,192,128],pl=[1,3,7,15,31,63,127,255],$r=class{_value;_currentBytePos;_currentBitPos;constructor(t){this._value=t,this._currentBytePos=t.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(t){let e=t,n=0;for(;e>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,e),a=ml(i,o-s,s);n=(n<<s)+a,e-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(t){for(this._currentBitPos+=t;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function ml(r,t,e){let n=yl(t,e);return(r&n)>>>t}function yl(r,t){return dl[r]&pl[Math.min(t+r-1,7)]}function ms(r){function t(e){return e instanceof Vr?e:new Vr(e,r)}return t}var Vr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(t,e){if(!(t instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=t,this._hashFn=e,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(t){let e=t;for(;this._availableBits<e;)await this._produceMoreBits();let n=0;for(;e>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),e),s=i.take(o);n=(n<<o)+s,e-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(t){let e=t;for(;e>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),e);n.untake(i),e-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let t=this._depth>0?Jt([this._value,Uint8Array.from([this._depth])]):this._value,e=await this._hashFn(t),n=new $r(e);this._buffers.push(n),this._availableBits+=n.availableBits()}};function be(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let t={bits:r.bits??8,hash:ms(r.hashFn)};return new ct(t)}async function gl(r){return(await ie.encode(r)).slice(0,8).reverse()}var ys=BigInt(34),wl=8,_i=class extends Tt{_bucket;constructor(t,e){super(t,e),this._bucket=be({hashFn:gl,bits:e.shardFanoutBits??wl})}async put(t,e){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(t,e)}async get(t){return this._bucket.get(t)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:t,value:e}of this._bucket.eachLeafSeries())yield{key:t,child:e}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=xs(this._bucket,this,this.options),this.nodeSize)}async*flush(t){for await(let e of ws(this._bucket,t,this,this.options))yield{...e,path:this.path}}},gs=_i;async function*ws(r,t,e,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let y=i.get(d);if(y==null)continue;let _=d.toString(16).toUpperCase().padStart(o,"0");if(y instanceof ct){let g;for await(let w of ws(y,t,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:_,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(xl(y.value)){let g=y.value,w;for await(let E of g.flush(t))w=E,yield w;if(w==null)throw new Error("Did not flush dir");let b=_+y.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=y.value;if(g.cid==null)continue;let w=_+y.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let c=Uint8Array.from(i.bitField().reverse()),h=new T({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:ys,mtime:e?.mtime,mode:e?.mode}),f={Data:h.marshal(),Links:s},l=F(R(f)),m=await At(l,t,n),u=BigInt(l.byteLength)+a;yield{cid:m,unixfs:h,size:u}}function xl(r){return typeof r.flush=="function"}function xs(r,t,e){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 ct){let m=xs(f,null,e);o.push({Name:l,Tsize:Number(m),Hash:e.cidVersion===0?or:sr})}else if(typeof f.value.flush=="function"){let u=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(u),Hash:e.cidVersion===0?or:sr})}else{let m=f.value;if(m.cid==null)continue;let u=l+f.key,d=m.size;o.push({Name:u,Tsize:Number(d),Hash:m.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new T({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ys,mtime:t?.mtime,mode:t?.mode});return F(R({Data:a.marshal(),Links:o})).length}async function Ei(r,t,e,n){let i=t;t instanceof ne&&t.estimateNodeSize()>e&&(i=await bl(t,n));let o=i.parent;if(o!=null){if(i!==t){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return Ei(i,o,e,n)}return i}async function bl(r,t){let e=new gs({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},t);for await(let{key:n,child:i}of r.eachChildSeries())await e.put(n,i);return e}var bs=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function _l(r,t,e){let n=bs(r.path??""),i=n.length-1,o=t,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),t=await Ei(null,o,e.shardSplitThresholdBytes,e);else{let f=await o.get(c);(f==null||!(f instanceof Tt))&&(f=new ne({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},e)),await o.put(c,f),o=f}}return t}async function*_s(r,t){if(!(r instanceof Tt)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(t)}function Es(r){return async function*(e,n){let i=new ne({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of e){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await _l(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*_s(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*_s(a.child,n))}}async function*Wt(r,t,e={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=e.wrapWithDirectory??!1,o=e.shardSplitThresholdBytes??262144,s=e.shardFanoutBits??8,a=e.cidVersion??1,c=e.rawLeaves??!0,h=e.leafType??"file",f=e.fileImportConcurrency??50,l=e.blockWriteConcurrency??10,m=e.reduceSingleLeafToSelf??!0,u=e.chunker??We(),d=e.chunkValidator??as(),y=e.dagBuilder??ss({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:e.layout??ir(),bufferImporter:e.bufferImporter??rs({cidVersion:a,rawLeaves:c,leafType:h,onProgress:e.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:m,cidVersion:a,onProgress:e.onProgress}),_=e.treeBuilder??Es({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:e.onProgress});for await(let g of _(Ge(y(n,t),f),t))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Mr(r,t,e={}){let n=await Tn(Wt([r],t,e));if(n==null)throw(0,Ai.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function As(r,t,e={}){let n=await Tn(Wt([r],t,e));if(n==null)throw(0,Ai.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function Ss(r,t,e={}){return Mr({content:r},t,e)}async function ks(r,t,e={}){return Mr({content:r},t,e)}var Il=P(q(),1),vl=P(Rs(),1);var lr={cidVersion:1,rawLeaves:!0,layout:ir({maxChildrenPerNode:1024}),chunker:We({chunkSize:1048576})};async function*Os(r,t,e={}){yield*Wt(r,t,{...lr,...e})}async function $s(r,t,e={}){let{cid:n}=await Ss(r,t,{...lr,...e});return n}async function Vs(r,t,e={}){let{cid:n}=await ks(r,t,{...lr,...e});return n}async function Ms(r,t,e={}){let{cid:n}=await Mr(r,t,{...lr,...e});return n}async function Hs(r,t,e={}){let{cid:n}=await As({...r,path:r.path??"-"},t,{...lr,...e});return n}var fn=P(q(),1);function Tl(r){return r[Symbol.asyncIterator]!=null}function Nl(r){if(Tl(r))return(async()=>{let e;for await(let n of r)e=n;return e})();let t;for(let e of r)t=e;return t}var Yt=Nl;var Cl=["string","number","bigint","symbol"],Dl=["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 js(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let t=typeof r;if(Cl.includes(t))return t;if(t==="function")return"Function";if(Array.isArray(r))return"Array";if(Fl(r))return"Buffer";let e=Ll(r);return e||"Object"}function Fl(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Ll(r){let t=Object.prototype.toString.call(r).slice(8,-1);if(Dl.includes(t))return t}var p=class{constructor(t,e,n){this.major=t,this.majorEncoded=t<<5,this.name=e,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(t){return this.major<t.major?-1:this.major>t.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 A=class{constructor(t,e,n){this.type=t,this.value=e,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var _e=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Ul=new TextDecoder,Pl=new TextEncoder;function Hr(r){return _e&&globalThis.Buffer.isBuffer(r)}function jr(r){return r instanceof Uint8Array?Hr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Ks=_e?(r,t,e)=>e-t>64?globalThis.Buffer.from(r.subarray(t,e)).toString("utf8"):Ws(r,t,e):(r,t,e)=>e-t>64?Ul.decode(r.subarray(t,e)):Ws(r,t,e),Gr=_e?r=>r.length>64?globalThis.Buffer.from(r):Gs(r):r=>r.length>64?Pl.encode(r):Gs(r);var Ee=_e?(r,t,e)=>Hr(r)?new Uint8Array(r.subarray(t,e)):r.slice(t,e):(r,t,e)=>r.slice(t,e),qs=_e?(r,t)=>(r=r.map(e=>e instanceof Uint8Array?e:globalThis.Buffer.from(e)),jr(globalThis.Buffer.concat(r,t))):(r,t)=>{let e=new Uint8Array(t),n=0;for(let i of r)n+i.length>e.length&&(i=i.subarray(0,e.length-n)),e.set(i,n),n+=i.length;return e},Xs=_e?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Js(r,t){if(Hr(r)&&Hr(t))return r.compare(t);for(let e=0;e<r.length;e++)if(r[e]!==t[e])return r[e]<t[e]?-1:1;return 0}function Gs(r){let t=[],e=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?t[e++]=i:i<2048?(t[e++]=i>>6|192,t[e++]=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),t[e++]=i>>18|240,t[e++]=i>>12&63|128,t[e++]=i>>6&63|128,t[e++]=i&63|128):(t[e++]=i>>12|224,t[e++]=i>>6&63|128,t[e++]=i&63|128)}return t}function Ws(r,t,e){let n=[];for(;t<e;){let i=r[t],o=null,s=i>239?4:i>223?3:i>191?2:1;if(t+s<=e){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[t+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[t+1],c=r[t+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[t+1],c=r[t+2],h=r[t+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),t+=s}return vi(n)}var Ys=4096;function vi(r){let t=r.length;if(t<=Ys)return String.fromCharCode.apply(String,r);let e="",n=0;for(;n<t;)e+=String.fromCharCode.apply(String,r.slice(n,n+=Ys));return e}var zl=256,Wr=class{constructor(t=zl){this.chunkSize=t,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(t){let e=this.chunks[this.chunks.length-1];if(this.cursor+t.length<=this.maxCursor+1){let i=e.length-(this.maxCursor-this.cursor)-1;e.set(t,i)}else{if(e){let i=e.length-(this.maxCursor-this.cursor)-1;i<e.length&&(this.chunks[this.chunks.length-1]=e.subarray(0,i),this.maxCursor=this.cursor-1)}t.length<64&&t.length<this.chunkSize?(e=Xs(this.chunkSize),this.chunks.push(e),this.maxCursor+=e.length,this._initReuseChunk===null&&(this._initReuseChunk=e),e.set(t,0)):(this.chunks.push(t),this.maxCursor+=t.length)}this.cursor+=t.length}toBytes(t=!1){let e;if(this.chunks.length===1){let n=this.chunks[0];t&&this.cursor>n.length/2?(e=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):e=Ee(n,0,this.cursor)}else e=qs(this.chunks,this.cursor);return t&&this.reset(),e}};var I="CBOR decode error:",Ae="CBOR encode error:",hr=[];hr[23]=1;hr[24]=2;hr[25]=3;hr[26]=5;hr[27]=9;function Pt(r,t,e){if(r.length-t<e)throw new Error(`${I} not enough data for type`)}var j=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ut(r,t,e){Pt(r,t,1);let n=r[t];if(e.strict===!0&&n<j[0])throw new Error(`${I} integer encoded in more bytes than necessary (strict decode)`);return n}function ft(r,t,e){Pt(r,t,2);let n=r[t]<<8|r[t+1];if(e.strict===!0&&n<j[1])throw new Error(`${I} integer encoded in more bytes than necessary (strict decode)`);return n}function lt(r,t,e){Pt(r,t,4);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3];if(e.strict===!0&&n<j[2])throw new Error(`${I} integer encoded in more bytes than necessary (strict decode)`);return n}function ht(r,t,e){Pt(r,t,8);let n=r[t]*16777216+(r[t+1]<<16)+(r[t+2]<<8)+r[t+3],i=r[t+4]*16777216+(r[t+5]<<16)+(r[t+6]<<8)+r[t+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(e.strict===!0&&o<j[3])throw new Error(`${I} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(e.allowBigInt===!0)return o;throw new Error(`${I} integers outside of the safe integer range are not supported`)}function Zs(r,t,e,n){return new A(p.uint,ut(r,t+1,n),2)}function Qs(r,t,e,n){return new A(p.uint,ft(r,t+1,n),3)}function ta(r,t,e,n){return new A(p.uint,lt(r,t+1,n),5)}function ea(r,t,e,n){return new A(p.uint,ht(r,t+1,n),9)}function xt(r,t){return W(r,0,t.value)}function W(r,t,e){if(e<j[0]){let n=Number(e);r.push([t|n])}else if(e<j[1]){let n=Number(e);r.push([t|24,n])}else if(e<j[2]){let n=Number(e);r.push([t|25,n>>>8,n&255])}else if(e<j[3]){let n=Number(e);r.push([t|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(e);if(n<j[4]){let i=[t|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(`${I} encountered BigInt larger than allowable range`)}}xt.encodedSize=function(t){return W.encodedSize(t.value)};W.encodedSize=function(t){return t<j[0]?1:t<j[1]?2:t<j[2]?3:t<j[3]?5:9};xt.compareTokens=function(t,e){return t.value<e.value?-1:t.value>e.value?1:0};function ra(r,t,e,n){return new A(p.negint,-1-ut(r,t+1,n),2)}function na(r,t,e,n){return new A(p.negint,-1-ft(r,t+1,n),3)}function ia(r,t,e,n){return new A(p.negint,-1-lt(r,t+1,n),5)}var Ti=BigInt(-1),oa=BigInt(1);function sa(r,t,e,n){let i=ht(r,t+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new A(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${I} integers outside of the safe integer range are not supported`);return new A(p.negint,Ti-BigInt(i),9)}function Yr(r,t){let e=t.value,n=typeof e=="bigint"?e*Ti-oa:e*-1-1;W(r,t.type.majorEncoded,n)}Yr.encodedSize=function(t){let e=t.value,n=typeof e=="bigint"?e*Ti-oa:e*-1-1;return n<j[0]?1:n<j[1]?2:n<j[2]?3:n<j[3]?5:9};Yr.compareTokens=function(t,e){return t.value<e.value?1:t.value>e.value?-1:0};function dr(r,t,e,n){Pt(r,t,e+n);let i=Ee(r,t+e,t+e+n);return new A(p.bytes,i,e+n)}function aa(r,t,e,n){return dr(r,t,1,e)}function ca(r,t,e,n){return dr(r,t,2,ut(r,t+1,n))}function ua(r,t,e,n){return dr(r,t,3,ft(r,t+1,n))}function fa(r,t,e,n){return dr(r,t,5,lt(r,t+1,n))}function la(r,t,e,n){let i=ht(r,t+1,n);if(typeof i=="bigint")throw new Error(`${I} 64-bit integer bytes lengths not supported`);return dr(r,t,9,i)}function Kr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Gr(r.value):r.value),r.encodedBytes}function Se(r,t){let e=Kr(t);W(r,t.type.majorEncoded,e.length),r.push(e)}Se.encodedSize=function(t){let e=Kr(t);return W.encodedSize(e.length)+e.length};Se.compareTokens=function(t,e){return Ol(Kr(t),Kr(e))};function Ol(r,t){return r.length<t.length?-1:r.length>t.length?1:Js(r,t)}function pr(r,t,e,n,i){let o=e+n;Pt(r,t,o);let s=new A(p.string,Ks(r,t+e,t+o),o);return i.retainStringBytes===!0&&(s.byteValue=Ee(r,t+e,t+o)),s}function ha(r,t,e,n){return pr(r,t,1,e,n)}function da(r,t,e,n){return pr(r,t,2,ut(r,t+1,n),n)}function pa(r,t,e,n){return pr(r,t,3,ft(r,t+1,n),n)}function ma(r,t,e,n){return pr(r,t,5,lt(r,t+1,n),n)}function ya(r,t,e,n){let i=ht(r,t+1,n);if(typeof i=="bigint")throw new Error(`${I} 64-bit integer string lengths not supported`);return pr(r,t,9,i,n)}var ga=Se;function ke(r,t,e,n){return new A(p.array,n,e)}function wa(r,t,e,n){return ke(r,t,1,e)}function xa(r,t,e,n){return ke(r,t,2,ut(r,t+1,n))}function ba(r,t,e,n){return ke(r,t,3,ft(r,t+1,n))}function _a(r,t,e,n){return ke(r,t,5,lt(r,t+1,n))}function Ea(r,t,e,n){let i=ht(r,t+1,n);if(typeof i=="bigint")throw new Error(`${I} 64-bit integer array lengths not supported`);return ke(r,t,9,i)}function Aa(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${I} indefinite length items not allowed`);return ke(r,t,1,1/0)}function qr(r,t){W(r,p.array.majorEncoded,t.value)}qr.compareTokens=xt.compareTokens;qr.encodedSize=function(t){return W.encodedSize(t.value)};function Be(r,t,e,n){return new A(p.map,n,e)}function Sa(r,t,e,n){return Be(r,t,1,e)}function ka(r,t,e,n){return Be(r,t,2,ut(r,t+1,n))}function Ba(r,t,e,n){return Be(r,t,3,ft(r,t+1,n))}function Ia(r,t,e,n){return Be(r,t,5,lt(r,t+1,n))}function va(r,t,e,n){let i=ht(r,t+1,n);if(typeof i=="bigint")throw new Error(`${I} 64-bit integer map lengths not supported`);return Be(r,t,9,i)}function Ta(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${I} indefinite length items not allowed`);return Be(r,t,1,1/0)}function Xr(r,t){W(r,p.map.majorEncoded,t.value)}Xr.compareTokens=xt.compareTokens;Xr.encodedSize=function(t){return W.encodedSize(t.value)};function Na(r,t,e,n){return new A(p.tag,e,1)}function Ca(r,t,e,n){return new A(p.tag,ut(r,t+1,n),2)}function Da(r,t,e,n){return new A(p.tag,ft(r,t+1,n),3)}function Fa(r,t,e,n){return new A(p.tag,lt(r,t+1,n),5)}function La(r,t,e,n){return new A(p.tag,ht(r,t+1,n),9)}function Jr(r,t){W(r,p.tag.majorEncoded,t.value)}Jr.compareTokens=xt.compareTokens;Jr.encodedSize=function(t){return W.encodedSize(t.value)};var Gl=20,Wl=21,Yl=22,Kl=23;function Ua(r,t,e,n){if(n.allowUndefined===!1)throw new Error(`${I} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new A(p.null,null,1):new A(p.undefined,void 0,1)}function Pa(r,t,e,n){if(n.allowIndefinite===!1)throw new Error(`${I} indefinite length items not allowed`);return new A(p.break,void 0,1)}function Ni(r,t,e){if(e){if(e.allowNaN===!1&&Number.isNaN(r))throw new Error(`${I} NaN values are not supported`);if(e.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${I} Infinity values are not supported`)}return new A(p.float,r,t)}function za(r,t,e,n){return Ni(Ci(r,t+1),3,n)}function Ra(r,t,e,n){return Ni(Di(r,t+1),5,n)}function Oa(r,t,e,n){return Ni(Ha(r,t+1),9,n)}function Zr(r,t,e){let n=t.value;if(n===!1)r.push([p.float.majorEncoded|Gl]);else if(n===!0)r.push([p.float.majorEncoded|Wl]);else if(n===null)r.push([p.float.majorEncoded|Yl]);else if(n===void 0)r.push([p.float.majorEncoded|Kl]);else{let i,o=!1;(!e||e.float64!==!0)&&(Va(n),i=Ci(St,1),n===i||Number.isNaN(n)?(St[0]=249,r.push(St.slice(0,3)),o=!0):(Ma(n),i=Di(St,1),n===i&&(St[0]=250,r.push(St.slice(0,5)),o=!0))),o||(ql(n),i=Ha(St,1),St[0]=251,r.push(St.slice(0,9)))}}Zr.encodedSize=function(t,e){let n=t.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!e||e.float64!==!0){Va(n);let i=Ci(St,1);if(n===i||Number.isNaN(n))return 3;if(Ma(n),i=Di(St,1),n===i)return 5}return 9};var $a=new ArrayBuffer(9),bt=new DataView($a,1),St=new Uint8Array($a,0);function Va(r){if(r===1/0)bt.setUint16(0,31744,!1);else if(r===-1/0)bt.setUint16(0,64512,!1);else if(Number.isNaN(r))bt.setUint16(0,32256,!1);else{bt.setFloat32(0,r);let t=bt.getUint32(0),e=(t&2139095040)>>23,n=t&8388607;if(e===255)bt.setUint16(0,31744,!1);else if(e===0)bt.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=e-127;i<-24?bt.setUint16(0,0):i<-14?bt.setUint16(0,(t&2147483648)>>16|1<<24+i,!1):bt.setUint16(0,(t&2147483648)>>16|i+15<<10|n>>13,!1)}}}function Ci(r,t){if(r.length-t<2)throw new Error(`${I} not enough data for float16`);let e=(r[t]<<8)+r[t+1];if(e===31744)return 1/0;if(e===64512)return-1/0;if(e===32256)return NaN;let n=e>>10&31,i=e&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,e&32768?-o:o}function Ma(r){bt.setFloat32(0,r,!1)}function Di(r,t){if(r.length-t<4)throw new Error(`${I} not enough data for float32`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,4).getFloat32(0,!1)}function ql(r){bt.setFloat64(0,r,!1)}function Ha(r,t){if(r.length-t<8)throw new Error(`${I} not enough data for float64`);let e=(r.byteOffset||0)+t;return new DataView(r.buffer,e,8).getFloat64(0,!1)}Zr.compareTokens=xt.compareTokens;function L(r,t,e){throw new Error(`${I} encountered invalid minor (${e}) for major ${r[t]>>>5}`)}function Qr(r){return()=>{throw new Error(`${I} ${r}`)}}var k=[];for(let r=0;r<=23;r++)k[r]=L;k[24]=Zs;k[25]=Qs;k[26]=ta;k[27]=ea;k[28]=L;k[29]=L;k[30]=L;k[31]=L;for(let r=32;r<=55;r++)k[r]=L;k[56]=ra;k[57]=na;k[58]=ia;k[59]=sa;k[60]=L;k[61]=L;k[62]=L;k[63]=L;for(let r=64;r<=87;r++)k[r]=aa;k[88]=ca;k[89]=ua;k[90]=fa;k[91]=la;k[92]=L;k[93]=L;k[94]=L;k[95]=Qr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)k[r]=ha;k[120]=da;k[121]=pa;k[122]=ma;k[123]=ya;k[124]=L;k[125]=L;k[126]=L;k[127]=Qr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)k[r]=wa;k[152]=xa;k[153]=ba;k[154]=_a;k[155]=Ea;k[156]=L;k[157]=L;k[158]=L;k[159]=Aa;for(let r=160;r<=183;r++)k[r]=Sa;k[184]=ka;k[185]=Ba;k[186]=Ia;k[187]=va;k[188]=L;k[189]=L;k[190]=L;k[191]=Ta;for(let r=192;r<=215;r++)k[r]=Na;k[216]=Ca;k[217]=Da;k[218]=Fa;k[219]=La;k[220]=L;k[221]=L;k[222]=L;k[223]=L;for(let r=224;r<=243;r++)k[r]=Qr("simple values are not supported");k[244]=L;k[245]=L;k[246]=L;k[247]=Ua;k[248]=Qr("simple values are not supported");k[249]=za;k[250]=Ra;k[251]=Oa;k[252]=L;k[253]=L;k[254]=L;k[255]=Pa;var kt=[];for(let r=0;r<24;r++)kt[r]=new A(p.uint,r,1);for(let r=-1;r>=-24;r--)kt[31-r]=new A(p.negint,r,1);kt[64]=new A(p.bytes,new Uint8Array(0),1);kt[96]=new A(p.string,"",1);kt[128]=new A(p.array,0,1);kt[160]=new A(p.map,0,1);kt[244]=new A(p.false,!1,1);kt[245]=new A(p.true,!0,1);kt[246]=new A(p.null,null,1);function Jl(){let r=[];return r[p.uint.major]=xt,r[p.negint.major]=Yr,r[p.bytes.major]=Se,r[p.string.major]=ga,r[p.array.major]=qr,r[p.map.major]=Xr,r[p.tag.major]=Jr,r[p.float.major]=Zr,r}var F2=Jl(),L2=new Wr,tn=class r{constructor(t,e){this.obj=t,this.parent=e}includes(t){let e=this;do if(e.obj===t)return!0;while(e=e.parent);return!1}static createCheck(t,e){if(t&&t.includes(e))throw new Error(`${Ae} object contains circular references`);return new r(e,t)}},Kt={null:new A(p.null,null),undefined:new A(p.undefined,void 0),true:new A(p.true,!0),false:new A(p.false,!1),emptyArray:new A(p.array,0),emptyMap:new A(p.map,0)},qt={number(r,t,e,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new A(p.float,r):r>=0?new A(p.uint,r):new A(p.negint,r)},bigint(r,t,e,n){return r>=BigInt(0)?new A(p.uint,r):new A(p.negint,r)},Uint8Array(r,t,e,n){return new A(p.bytes,r)},string(r,t,e,n){return new A(p.string,r)},boolean(r,t,e,n){return r?Kt.true:Kt.false},null(r,t,e,n){return Kt.null},undefined(r,t,e,n){return Kt.undefined},ArrayBuffer(r,t,e,n){return new A(p.bytes,new Uint8Array(r))},DataView(r,t,e,n){return new A(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,t,e,n){if(!r.length)return e.addBreakTokens===!0?[Kt.emptyArray,new A(p.break)]:Kt.emptyArray;n=tn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Fi(s,e,n);return e.addBreakTokens?[new A(p.array,r.length),i,new A(p.break)]:[new A(p.array,r.length),i]},Object(r,t,e,n){let i=t!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return e.addBreakTokens===!0?[Kt.emptyMap,new A(p.break)]:Kt.emptyMap;n=tn.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[Fi(h,e,n),Fi(i?r.get(h):r[h],e,n)];return Zl(a,e),e.addBreakTokens?[new A(p.map,s),a,new A(p.break)]:[new A(p.map,s),a]}};qt.Map=qt.Object;qt.Buffer=qt.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))qt[`${r}Array`]=qt.DataView;function Fi(r,t={},e){let n=js(r),i=t&&t.typeEncoders&&t.typeEncoders[n]||qt[n];if(typeof i=="function"){let s=i(r,n,t,e);if(s!=null)return s}let o=qt[n];if(!o)throw new Error(`${Ae} unsupported type: ${n}`);return o(r,n,t,e)}function Zl(r,t){t.mapSorter&&r.sort(t.mapSorter)}var Ql={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},en=class{constructor(t,e={}){this._pos=0,this.data=t,this.options=e}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let t=this.data[this._pos],e=kt[t];if(e===void 0){let n=k[t];if(!n)throw new Error(`${I} no decoder for major type ${t>>>5} (byte 0x${t.toString(16).padStart(2,"0")})`);let i=t&31;e=n(this.data,this._pos,i,this.options)}return this._pos+=e.encodedLength,e}},mr=Symbol.for("DONE"),rn=Symbol.for("BREAK");function th(r,t,e){let n=[];for(let i=0;i<r.value;i++){let o=Ie(t,e);if(o===rn){if(r.value===1/0)break;throw new Error(`${I} got unexpected break to lengthed array`)}if(o===mr)throw new Error(`${I} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function eh(r,t,e){let n=e.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=Ie(t,e);if(a===rn){if(r.value===1/0)break;throw new Error(`${I} got unexpected break to lengthed map`)}if(a===mr)throw new Error(`${I} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${I} non-string keys not supported (got ${typeof a})`);if(e.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${I} found repeat map key "${a}"`);let c=Ie(t,e);if(c===mr)throw new Error(`${I} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function Ie(r,t){if(r.done())return mr;let e=r.next();if(e.type===p.break)return rn;if(e.type.terminal)return e.value;if(e.type===p.array)return th(e,r,t);if(e.type===p.map)return eh(e,r,t);if(e.type===p.tag){if(t.tags&&typeof t.tags[e.value]=="function"){let n=Ie(r,t);return t.tags[e.value](n)}throw new Error(`${I} tag not supported (${e.value})`)}throw new Error("unsupported")}function Li(r,t){if(!(r instanceof Uint8Array))throw new Error(`${I} data to decode must be a Uint8Array`);t=Object.assign({},Ql,t);let e=t.tokenizer||new en(r,t),n=Ie(e,t);if(n===mr)throw new Error(`${I} did not find any content to decode`);if(n===rn)throw new Error(`${I} got unexpected break`);return[n,r.subarray(e.pos())]}function yr(r,t){let[e,n]=Li(r,t);if(n.length>0)throw new Error(`${I} too many terminals, data makes no sense`);return e}var Ga=42;function ih(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function oh(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let t=C.asCID(r);if(!t)return null;let e=new Uint8Array(t.bytes.byteLength+1);return e.set(t.bytes,1),[new A(p.tag,Ga),new A(p.bytes,e)]}function sh(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function ah(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 ja={float64:!0,typeEncoders:{Object:oh,undefined:sh,number:ah}},j2={...ja,typeEncoders:{...ja.typeEncoders}};function ch(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return C.decode(r.subarray(1))}var nn={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};nn.tags[Ga]=ch;var G2={...nn,tags:nn.tags.slice()};var Wa=113;var Ya=r=>yr(ih(r),nn);var qa=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(t){let e=this.inRecursive[this.inRecursive.length-1];e&&(e.type===p.array&&(e.elements++,e.elements!==1&&t.push([44])),e.type===p.map&&(e.elements++,e.elements!==1&&(e.elements%2===1?t.push([44]):t.push([58]))))}[p.uint.major](t,e){this.prefix(t);let n=String(e.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);t.push(i)}[p.negint.major](t,e){this[p.uint.major](t,e)}[p.bytes.major](t,e){throw new Error(`${Ae} unsupported type: Uint8Array`)}[p.string.major](t,e){this.prefix(t);let n=Gr(JSON.stringify(e.value));t.push(n.length>32?jr(n):n)}[p.array.major](t,e){this.prefix(t),this.inRecursive.push({type:p.array,elements:0}),t.push([91])}[p.map.major](t,e){this.prefix(t),this.inRecursive.push({type:p.map,elements:0}),t.push([123])}[p.tag.major](t,e){}[p.float.major](t,e){if(e.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)t.push([93]);else if(s.type===p.map)t.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(e.value===void 0)throw new Error(`${Ae} unsupported type: undefined`);if(this.prefix(t),e.type.name==="true"){t.push([116,114,117,101]);return}else if(e.type.name==="false"){t.push([102,97,108,115,101]);return}else if(e.type.name==="null"){t.push([110,117,108,108]);return}let n=String(e.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)),t.push(i)}};var ve=class{constructor(t,e={}){this._pos=0,this.data=t,this.options=e,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 t=this.ch();for(;t===32||t===9||t===13||t===10;)t=this.data[++this._pos]}expect(t){if(this.data.length-this._pos<t.length)throw new Error(`${I} unexpected end of input at position ${this._pos}`);for(let e=0;e<t.length;e++)if(this.data[this._pos++]!==t[e])throw new Error(`${I} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...t)}'`)}parseNumber(){let t=this._pos,e=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(e=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new A(p.uint,0,this._pos-t);if(i([48,49,50,51,52,53,54,55,56,57]),e&&this._pos===t+1)throw new Error(`${I} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${I} 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(t,this._pos)),s=parseFloat(o);return n?new A(p.float,s,this._pos-t):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new A(s>=0?p.uint:p.negint,s,this._pos-t):new A(s>=0?p.uint:p.negint,BigInt(o),this._pos-t)}parseString(){if(this.ch()!==34)throw new Error(`${I} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new A(p.string,c,s)}}let t=this._pos,e=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${I} 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(`${I} 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(`${I} unexpected unicode sequence at position ${this._pos}`);let c,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(l=(o&31)<<6|c&63,l>127&&(s=l));break;case 3:c=this.data[this._pos+1],h=this.data[this._pos+2],(c&192)===128&&(h&192)===128&&(l=(o&15)<<12|(c&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:c=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(c&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(c&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,e.push(s>>>10&1023|55296),s=56320|s&1023),e.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(`${I} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:e.push(s);break;case 98:e.push(8);break;case 116:e.push(9);break;case 110:e.push(10);break;case 102:e.push(12);break;case 114:e.push(13);break;case 117:e.push(n());break;default:throw new Error(`${I} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new A(p.string,vi(e),this._pos-t);default:if(o<32)throw new Error(`${I} invalid control character at position ${this._pos}`);o<128?(e.push(o),this._pos++):i()}}throw new Error(`${I} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new A(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new A(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new A(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new A(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new A(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(`${I} 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 A(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${I} 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 A(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 A(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${I} 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 A(p.break,void 0,1);let t=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${I} 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"),t}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${I} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ui(r,t){return t=Object.assign({tokenizer:new ve(r,t)},t),yr(r,t)}function lh(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Pi=class extends ve{constructor(t,e){super(t,e),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let t=this._next();if(t.type===p.map){let e=this._next();if(e.type===p.string&&e.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 A(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=Qe.decode(`m${o.value}`);return new A(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(e)}return t}},zi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};zi.tags[42]=C.parse;var Xa=297;var Ja=r=>{let t=lh(r),e=Object.assign(zi,{tokenizer:new Pi(t,zi)});return Ui(t,e)};var uy=new TextDecoder;var fy=new TextEncoder;var Ac=P(q(),1);var Qa=P(q(),1);function Te(r,t,e,n,i,o,s){let a=r,c=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),c=`${c}/${h}`;let f=C.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:e,node:t,depth:s,size:BigInt(t.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw(0,Qa.default)(new Error(`No property named ${h} found in node ${e}`),"ERR_NO_PROP")}return{entry:{type:"object",name:n,path:i,cid:e,node:t,depth:s,size:BigInt(t.length),content:async function*(){yield r}}}}var hh=async(r,t,e,n,i,o,s,a)=>{let c=await s.get(r,a),h=Ya(c);return Te(h,c,r,t,e,n,o)},tc=hh;var dh=async(r,t,e,n,i,o,s,a)=>{let c=await s.get(r,a),h=Ja(c);return Te(h,c,r,t,e,n,o)},ec=dh;var rc=P(q(),1);function ph(r,t,e,n){let i=BigInt(r.length),o=BigInt(t+i);return e>=o||n<t?new Uint8Array(0):(n>=t&&n<o&&(r=r.subarray(0,Number(n-t))),e>=t&&e<o&&(r=r.subarray(Number(e-t))),r)}var se=ph;var gr=P(q(),1),mh=(r,t=0,e=r)=>{let n=BigInt(r),i=BigInt(t??0),o=BigInt(e);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw(0,gr.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,gr.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,gr.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,gr.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},Ne=mh;var yh=r=>{async function*t(e={}){let{start:n,end:i}=Ne(r.length,e.offset,e.length),o=se(r,0n,n,i);e.onProgress?.(new O("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return t},gh=async(r,t,e,n,i,o,s,a)=>{if(n.length>0)throw(0,rc.default)(new Error(`No link named ${e} found in raw node ${r}`),"ERR_NOT_FOUND");let c=Nr(r.multihash.bytes);return{entry:{type:"identity",name:t,path:e,cid:r,content:yh(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},nc=gh;var wh=async(r,t,e,n,i,o,s,a)=>{let c=await s.get(r,a),h=Go(c);return Te(h,c,r,t,e,n,o)},ic=wh;var oc=P(q(),1);var xh=r=>{async function*t(e={}){let{start:n,end:i}=Ne(r.length,e.offset,e.length),o=se(r,0n,n,i);e.onProgress?.(new O("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return t},bh=async(r,t,e,n,i,o,s,a)=>{if(n.length>0)throw(0,oc.default)(new Error(`No link named ${e} found in raw node ${r}`),"ERR_NOT_FOUND");let c=await s.get(r,a);return{entry:{type:"raw",name:t,path:e,cid:r,content:xh(c),depth:o,size:BigInt(c.length),node:c}}},sc=bh;var Ar=P(q(),1);var wr=P(q(),1);var _h=async function(r){return(await ie.encode(r)).slice(0,8).reverse()},Eh=async(r,t,e)=>{let n=(t.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);t._putObjectAt(o,new ct({hash:e._options.hash,bits:e._options.bits},t,o));return}await e.put(i.Name.substring(2),!0)}))},ac=(r,t)=>r.toString(16).toUpperCase().padStart(t,"0").substring(0,t),Ah=r=>{let t=r.bucket,e=[];for(;t._parent!=null;)e.push(t),t=t._parent;return e.push(t),e.reverse()},cc=async(r,t,e,n,i)=>{if(n==null){if(r.Data==null)throw(0,wr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let l;try{l=T.unmarshal(r.Data)}catch(u){throw(0,wr.default)(u,"ERR_NOT_UNIXFS")}if(l.type!=="hamt-sharded-directory")throw(0,wr.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(l.fanout==null)throw(0,wr.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let m=be({hashFn:_h,bits:Math.log2(Number(l.fanout))});n={rootBucket:m,hamtDepth:1,lastBucket:m}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await Eh(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(t),a=ac(s.pos,o),c=Ah(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=ac(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let m=l.Name.substring(0,o),u=l.Name.substring(o);return!(m!==a||u!==""&&u!==t)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===t)return h.Hash;n.hamtDepth++;let f=await e.get(h.Hash,i);return r=V(f),cc(r,t,e,n,i)},uc=cc;function Sh(r){let[t,e]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>t.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:t.next(),[e](){return this}}}var on=Sh;function kh(r){return r[Symbol.asyncIterator]!=null}function Bh(r,t){if(kh(r))return async function*(){for await(let a of r)await t(a)&&(yield a)}();let e=on(r),{value:n,done:i}=e.next();if(i===!0)return function*(){}();let o=t(n);if(typeof o.then=="function")return async function*(){await o&&(yield n);for await(let a of e)await t(a)&&(yield a)}();let s=t;return function*(){o===!0&&(yield n);for(let a of e)s(a)&&(yield a)}()}var fc=Bh;function Ih(r){return r[Symbol.asyncIterator]!=null}function vh(r,t){if(Ih(r))return async function*(){for await(let a of r)yield t(a)}();let e=on(r),{value:n,done:i}=e.next();if(i===!0)return function*(){}();let o=t(n);if(typeof o.then=="function")return async function*(){yield await o;for await(let a of e)yield t(a)}();let s=t;return function*(){yield o;for(let a of e)yield s(a)}()}var Ce=vh;function zt(){let r={};return r.promise=new Promise((t,e)=>{r.resolve=t,r.reject=e}),r}var sn=globalThis.CustomEvent??Event;async function*ae(r,t={}){let e=t.concurrency??1/0;e<1&&(e=1/0);let n=t.ordered==null?!1:t.ordered,i=new EventTarget,o=[],s=zt(),a=zt(),c=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===e&&(s=zt(),await s.promise),f)break;let y={done:!1};o.push(y),d().then(_=>{y.done=!0,y.ok=!0,y.value=_,i.dispatchEvent(new sn("task-complete"))},_=>{y.done=!0,y.err=_,i.dispatchEvent(new sn("task-complete"))})}c=!0,i.dispatchEvent(new sn("task-complete"))}catch(d){h=d,i.dispatchEvent(new sn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*m(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*u(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let y=o[d];if(o.splice(d,1),d--,y.ok)yield y.value;else throw f=!0,s.resolve(),y.err;s.resolve()}}for(;;){if(l()||(a=zt(),await a.promise),h!=null)throw h;if(n?yield*m():yield*u(),c&&o.length===0)break}}var an=class{buffer;mask;top;btm;next;constructor(t){if(!(t>0)||t-1&t)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(t),this.mask=t-1,this.top=0,this.btm=0,this.next=null}push(t){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=t,this.top=this.top+1&this.mask,!0)}shift(){let t=this.buffer[this.btm];if(t!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,t}isEmpty(){return this.buffer[this.btm]===void 0}},De=class{size;hwm;head;tail;constructor(t={}){this.hwm=t.splitLimit??16,this.head=new an(this.hwm),this.tail=this.head,this.size=0}calculateSize(t){return t?.byteLength!=null?t.byteLength:1}push(t){if(t?.value!=null&&(this.size+=this.calculateSize(t.value)),!this.head.push(t)){let e=this.head;this.head=e.next=new an(2*this.head.buffer.length),this.head.push(t)}}shift(){let t=this.tail.shift();if(t===void 0&&this.tail.next!=null){let e=this.tail.next;this.tail.next=null,this.tail=e,t=this.tail.shift()}return t?.value!=null&&(this.size-=this.calculateSize(t.value)),t}isEmpty(){return this.head.isEmpty()}};var Ri=class extends Error{type;code;constructor(t,e){super(t??"The operation was aborted"),this.type="aborted",this.code=e??"ABORT_ERR"}};function Fe(r={}){return Th(e=>{let n=e.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Th(r,t){t=t??{};let e=t.onEnd,n=new De,i,o,s,a=zt(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((_,g)=>{o=w=>{o=null,n.push(w);try{_(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=zt()})}},h=_=>o!=null?o(_):(n.push(_),i),f=_=>(n=new De,o!=null?o({error:_}):(n.push({error:_}),i)),l=_=>{if(s)return i;if(t?.objectMode!==!0&&_?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:_})},m=_=>s?i:(s=!0,_!=null?f(_):h({done:!0})),u=()=>(n=new De,m(),{done:!0}),d=_=>(m(_),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:u,throw:d,push:l,end:m,get readableLength(){return n.size},onEmpty:async _=>{let g=_?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((E,v)=>{b=()=>{v(new Ri)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},e==null)return i;let y=i;return i={[Symbol.asyncIterator](){return this},next(){return y.next()},throw(_){return y.throw(_),e!=null&&(e(_),e=void 0),{done:!0}},return(){return y.return(),e!=null&&(e(),e=void 0),{done:!0}},push:l,end(_){return y.end(_),e!=null&&(e(_),e=void 0),i},get readableLength(){return y.readableLength},onEmpty:_=>y.onEmpty(_)},i}function Nh(r){return r[Symbol.asyncIterator]!=null}function Ch(...r){let t=[];for(let e of r)Nh(e)||t.push(e);return t.length===r.length?function*(){for(let e of t)yield*e}():async function*(){let e=Fe({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)e.push(i)})),e.end()}catch(n){e.end(n)}}),yield*e}()}var lc=Ch;function Nt(r,...t){if(r==null)throw new Error("Empty pipeline");if(Oi(r)){let n=r;r=()=>n.source}else if(dc(r)||hc(r)){let n=r;r=()=>n}let e=[r,...t];if(e.length>1&&Oi(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let n=1;n<e.length-1;n++)Oi(e[n])&&(e[n]=Fh(e[n]));return Dh(...e)}var Dh=(...r)=>{let t;for(;r.length>0;)t=r.shift()(t);return t},hc=r=>r?.[Symbol.asyncIterator]!=null,dc=r=>r?.[Symbol.iterator]!=null,Oi=r=>r==null?!1:r.sink!=null&&r.source!=null,Fh=r=>t=>{let e=r.sink(t);if(e?.then!=null){let n=Fe({objectMode:!0});e.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(hc(o))i=async function*(){yield*o,n.end()};else if(dc(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return lc(n,i())}return r.source};var Lh=(r,t,e,n,i,o,s)=>{async function*a(c={}){let h=c.offset??0,f=c.length??t.Links.length,l=t.Links.slice(h,f);c.onProgress?.(new O("unixfs:exporter:walk:directory",{cid:r})),yield*Nt(l,m=>Ce(m,u=>async()=>{let d=u.Name??"",y=`${n}/${d}`;return(await i(u.Hash,d,y,[],o+1,s,c)).entry}),m=>ae(m,{ordered:!0,concurrency:c.blockReadConcurrency}),m=>fc(m,u=>u!=null))}return a},pc=Lh;var ce=P(q(),1);var Vi=P(yc(),1);var br=class extends Error{constructor(t){super(t),this.name="TimeoutError"}},Mi=class extends Error{constructor(t){super(),this.name="AbortError",this.message=t}},gc=r=>globalThis.DOMException===void 0?new Mi(r):new DOMException(r),wc=r=>{let t=r.reason===void 0?gc("This operation was aborted."):r.reason;return t instanceof Error?t:gc(t)};function Hi(r,t){let{milliseconds:e,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=t,s,c=new Promise((h,f)=>{if(typeof e!="number"||Math.sign(e)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${e}\``);if(t.signal){let{signal:m}=t;m.aborted&&f(wc(m)),m.addEventListener("abort",()=>{f(wc(m))})}if(e===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new br;s=o.setTimeout.call(void 0,()=>{if(n){try{h(n())}catch(m){f(m)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?h():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${e} milliseconds`,f(l))},e),(async()=>{try{h(await r)}catch(m){f(m)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function ji(r,t,e){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;e(r[s],t)<=0?(n=++s,i-=o+1):i=o}return n}var _r=class{#t=[];enqueue(t,e){e={priority:0,...e};let n={priority:e.priority,run:t};if(this.size&&this.#t[this.size-1].priority>=e.priority){this.#t.push(n);return}let i=ji(this.#t,n,(o,s)=>s.priority-o.priority);this.#t.splice(i,0,n)}dequeue(){return this.#t.shift()?.run}filter(t){return this.#t.filter(e=>e.priority===t.priority).map(e=>e.run)}get size(){return this.#t.length}};var Er=class extends Vi.default{#t;#r;#n=0;#u;#s;#c=0;#i;#f;#e;#m;#o=0;#l;#a;#y;timeout;constructor(t){if(super(),t={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:_r,...t},!(typeof t.intervalCap=="number"&&t.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${t.intervalCap?.toString()??""}\` (${typeof t.intervalCap})`);if(t.interval===void 0||!(Number.isFinite(t.interval)&&t.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${t.interval?.toString()??""}\` (${typeof t.interval})`);this.#t=t.carryoverConcurrencyCount,this.#r=t.intervalCap===Number.POSITIVE_INFINITY||t.interval===0,this.#u=t.intervalCap,this.#s=t.interval,this.#e=new t.queueClass,this.#m=t.queueClass,this.concurrency=t.concurrency,this.timeout=t.timeout,this.#y=t.throwOnTimeout===!0,this.#a=t.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#_(){this.#o--,this.#h(),this.emit("next")}#E(){this.#w(),this.#g(),this.#f=void 0}get#A(){let t=Date.now();if(this.#i===void 0){let e=this.#c-t;if(e<0)this.#n=this.#t?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#E()},e)),!0}return!1}#h(){if(this.#e.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let t=!this.#A;if(this.#x&&this.#b){let e=this.#e.dequeue();return e?(this.emit("active"),e(),t&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#t?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(t){if(!(typeof t=="number"&&t>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${t}\` (${typeof t})`);this.#l=t,this.#d()}async#S(t){return new Promise((e,n)=>{t.addEventListener("abort",()=>{n(t.reason)},{once:!0})})}async add(t,e={}){return e={timeout:this.timeout,throwOnTimeout:this.#y,...e},new Promise((n,i)=>{this.#e.enqueue(async()=>{this.#o++,this.#n++;try{e.signal?.throwIfAborted();let o=t({signal:e.signal});e.timeout&&(o=Hi(Promise.resolve(o),{milliseconds:e.timeout})),e.signal&&(o=Promise.race([o,this.#S(e.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof br&&!e.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#_()}},e),this.emit("add"),this.#h()})}async addAll(t,e){return Promise.all(t.map(async n=>this.add(n,e)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#e=new this.#m}async onEmpty(){this.#e.size!==0&&await this.#p("empty")}async onSizeLessThan(t){this.#e.size<t||await this.#p("next",()=>this.#e.size<t)}async onIdle(){this.#o===0&&this.#e.size===0||await this.#p("idle")}async#p(t,e){return new Promise(n=>{let i=()=>{e&&!e()||(this.off(t,i),n())};this.on(t,i)})}get size(){return this.#e.size}sizeBy(t){return this.#e.filter(t).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function xc(r,t,e,n,i,o,s){if(t instanceof Uint8Array){let h=se(t,n,i,o);e.push(h);return}if(t.Data==null)throw(0,ce.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=T.unmarshal(t.Data)}catch(h){throw(0,ce.default)(h,"ERR_NOT_UNIXFS")}if(a.data!=null){let h=a.data,f=se(h,n,i,o);e.push(f),n+=BigInt(f.byteLength)}let c=[];if(t.Links.length!==a.blockSizes.length)throw(0,ce.default)(new Error("Inconsistent block sizes and dag links"),"ERR_NOT_UNIXFS");for(let h=0;h<t.Links.length;h++){let f=t.Links[h],l=n,m=l+a.blockSizes[h];if((i>=l&&i<m||o>=l&&o<=m||i<l&&o>m)&&c.push({link:f,blockStart:n}),n=m,n>o)break}await Nt(c,h=>Ce(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>ae(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:m}of h){let u;switch(f.Hash.code){case G:u=V(l);break;case it:u=l;break;default:e.end((0,ce.default)(new Error(`Unsupported codec: ${f.Hash.code}`),"ERR_NOT_UNIXFS"));return}let d=new Er({concurrency:1});d.on("error",y=>{e.end(y)}),d.add(async()=>{s.onProgress?.(new O("unixfs:exporter:walk:file",{cid:f.Hash})),await xc(r,u,e,m,i,o,s)}),await d.onIdle()}}),n>=o&&e.end()}var zh=(r,t,e,n,i,o,s)=>{async function*a(c={}){let h=e.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=Ne(h,c.offset,c.length);if(l===0n)return;let m=0n,u=l-f,d=Fe();c.onProgress?.(new O("unixfs:exporter:walk:file",{cid:r})),xc(s,t,d,0n,f,l,c).catch(y=>{d.end(y)});for await(let y of d)if(y!=null){if(m+=BigInt(y.byteLength),m>u)throw d.end(),(0,ce.default)(new Error("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect"),"ERR_OVER_READ");m===u&&d.end(),c.onProgress?.(new O("unixfs:exporter:progress:unixfs:file",{bytesRead:m,totalBytes:u,fileSize:h})),yield y}if(m<u)throw(0,ce.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},Gi=zh;var un=P(q(),1);var Rh=(r,t,e,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new O("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),bc(t,n,i,o,s,c)}return a};async function*bc(r,t,e,n,i,o){let s=r.Links;if(r.Data==null)throw(0,un.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=T.unmarshal(r.Data)}catch(f){throw(0,un.default)(f,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,un.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let c=(a.fanout-1n).toString(16).length,h=Nt(s,f=>Ce(f,l=>async()=>{let m=l.Name!=null?l.Name.substring(c):null;if(m!=null&&m!==""){let u=await e(l.Hash,m,`${t}/${m}`,[],n+1,i,o);return{entries:u.entry==null?[]:[u.entry]}}else{let u=await i.get(l.Hash,o);return r=V(u),o.onProgress?.(new O("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:bc(r,t,e,n,i,o)}}}),f=>ae(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var _c=Rh;var Oh=(r,t)=>r.Links.find(n=>n.Name===t)?.Hash,$h={raw:Gi,file:Gi,directory:pc,"hamt-sharded-directory":_c,metadata:(r,t,e,n,i,o,s)=>()=>[],symlink:(r,t,e,n,i,o,s)=>()=>[]},Vh=async(r,t,e,n,i,o,s,a)=>{let c=await s.get(r,a),h=V(c),f,l;if(t==null&&(t=r.toString()),h.Data==null)throw(0,Ar.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{f=T.unmarshal(h.Data)}catch(u){throw(0,Ar.default)(u,"ERR_NOT_UNIXFS")}if(e==null&&(e=t),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await uc(h,n[0],s):u=Oh(h,n[0]),u==null)throw(0,Ar.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let d=n.shift(),y=`${e}/${d}`;l={cid:u,toResolve:n,name:d??"",path:y}}let m=$h[f.type](r,h,f,e,i,o,s);if(m==null)throw(0,Ar.default)(new Error("could not find content exporter"),"ERR_NOT_FOUND");return f.isDirectory()?{entry:{type:"directory",name:t,path:e,cid:r,content:m,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:t,path:e,cid:r,content:m,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},Ec=Vh;var Mh={[G]:Ec,[it]:sc,[Wa]:tc,[Xa]:ec,[ii.code]:nc,[jo]:ic},Sc=async(r,t,e,n,i,o,s)=>{let a=Mh[r.code];if(a==null)throw(0,Ac.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,t,e,n,Sc,i,o,s)},kc=Sc;var Hh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),jh=r=>{if(r instanceof Uint8Array)return{cid:C.decode(r),toResolve:[]};let t=C.asCID(r);if(t!=null)return{cid:t,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let e=Hh(r);return{cid:C.parse(e[0]),toResolve:e.slice(1)}}throw(0,fn.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*Wi(r,t,e={}){let{cid:n,toResolve:i}=jh(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await kc(n,o,s,i,a,t,e);if(c.entry==null&&c.next==null)throw(0,fn.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function et(r,t,e={}){let n=await Yt(Wi(r,t,e));if(n==null)throw(0,fn.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*ln(r,t,e={}){let n=await et(r,t,e);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,e))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=P(Fc(),1),Z=Lc.default;var Bt=class extends Error{name;code;constructor(t,e,n){super(t),this.name=e,this.code=n}},Ct=class extends Bt{constructor(t="not a Unixfs node"){super(t,"NotUnixFSError","ERR_NOT_UNIXFS")}},rt=class extends Bt{constructor(t="invalid PBNode"){super(t,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},Rt=class extends Bt{constructor(t="unknown error"){super(t,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},ue=class extends Bt{constructor(t="path already exists"){super(t,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Ot=class extends Bt{constructor(t="path does not exist"){super(t,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Pe=class extends Bt{constructor(t="no content"){super(t,"NoContentError","ERR_NO_CONTENT")}},pn=class extends Bt{constructor(t="not a file"){super(t,"NotAFileError","ERR_NOT_A_FILE")}},Dt=class extends Bt{constructor(t="not a directory"){super(t,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},Y=class extends Bt{constructor(t="invalid parameters"){super(t,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var pt=P(Oc(),1);pt.default.formatters.b=r=>r==null?"undefined":gt.baseEncode(r);pt.default.formatters.t=r=>r==null?"undefined":Ht.baseEncode(r);pt.default.formatters.m=r=>r==null?"undefined":Qe.baseEncode(r);pt.default.formatters.p=r=>r==null?"undefined":r.toString();pt.default.formatters.c=r=>r==null?"undefined":r.toString();pt.default.formatters.k=r=>r==null?"undefined":r.toString();pt.default.formatters.a=r=>r==null?"undefined":r.toString();function c1(r){let t=()=>{};return t.enabled=!1,t.color="",t.diff=0,t.log=()=>{},t.namespace=r,t.destroy=()=>!0,t.extend=()=>t,t}function $(r){let t=c1(`${r}:trace`);return pt.default.enabled(`${r}:trace`)&&pt.default.names.map(e=>e.toString()).find(e=>e.includes(":trace"))!=null&&(t=(0,pt.default)(`${r}:trace`)),Object.assign((0,pt.default)(r),{error:(0,pt.default)(`${r}:error`),trace:t})}var Ji=P(Or(),1);function wn(r){function t(e){return e instanceof gn?e:new gn(e,r)}return t}var gn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(t,e){if(!(t instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=t,this._hashFn=e,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(t){let e=t;for(;this._availableBits<e;)await this._produceMoreBits();let n=0;for(;e>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),e),s=i.take(o);n=(n<<o)+s,e-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(t){let e=t;for(;e>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),e);n.untake(i),e-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let t=this._depth>0?Jt([this._value,Uint8Array.from([this._depth])]):this._value,e=await this._hashFn(t),n=new Ki(e);this._buffers.push(n),this._availableBits+=n.availableBits()}},u1=[255,254,252,248,240,224,192,128],f1=[1,3,7,15,31,63,127,255],Ki=class{_value;_currentBytePos;_currentBitPos;constructor(t){this._value=t,this._currentBytePos=t.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(t){let e=t,n=0;for(;e>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,e),a=l1(i,o-s,s);n=(n<<s)+a,e-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(t){for(this._currentBitPos+=t;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function l1(r,t,e){let n=h1(t,e);return(r&n)>>>t}function h1(r,t){return u1[r]&f1[Math.min(t+r-1,7)]}var Sr=BigInt(ie.code),le=8;async function $e(r){return(await ie.encode(r)).subarray(0,8).reverse()}var Mc=P(Or(),1);var It=async(r,t,e)=>{e.codec==null&&(e.codec=M);let n=await at.digest(r),i=C.create(e.cidVersion,e.codec.code,n);return await t.put(i,r,{...e,signal:e.signal}),i};var qi=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(t,e){this.options=e??{},this.root=t.root,this.dir=t.dir,this.path=t.path,this.dirty=t.dirty,this.flat=t.flat,this.parent=t.parent,this.parentKey=t.parentKey,this.unixfs=t.unixfs,this.mode=t.mode,this.mtime=t.mtime}},xn=class extends qi{_bucket;constructor(t,e){super(t,e),this._bucket=be({hashFn:$e,bits:8})}async put(t,e){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(t,e)}async get(t){return this._bucket.get(t)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:t,value:e}of this._bucket.eachLeafSeries())yield{key:t,child:e}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=Vc(this._bucket,this,this.options),this.nodeSize)}async*flush(t){for await(let e of $c(this._bucket,t,this,this.options))yield{...e,path:this.path}}};async function*$c(r,t,e,n){let i=r._children,o=[],s=0n;for(let u=0;u<i.length;u++){let d=i.get(u);if(d==null)continue;let y=u.toString(16).toUpperCase().padStart(2,"0");if(d instanceof ct){let _;for await(let g of $c(d,t,null,n))_=g;if(_==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:y,Tsize:Number(_.size),Hash:_.cid}),s+=_.size}else if(d1(d.value)){let _=d.value,g;for await(let b of _.flush(t))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=y+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let _=d.value;if(_.cid==null)continue;let g=y+d.key,w=_.size;o.push({Name:g,Tsize:Number(w),Hash:_.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new T({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:Sr,mtime:e?.mtime,mode:e?.mode}),h={Data:c.marshal(),Links:o},f=F(R(h)),l=await It(f,t,n),m=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:m}}function d1(r){return typeof r.flush=="function"}function Vc(r,t,e){let n=r._children,i=[];for(let c=0;c<n.length;c++){let h=n.get(c);if(h==null)continue;let f=c.toString(16).toUpperCase().padStart(2,"0");if(h instanceof ct){let l=Vc(h,null,e);i.push({Name:f,Tsize:Number(l),Hash:e.cidVersion===0?bn:_n})}else if(typeof h.value.flush=="function"){let m=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(m),Hash:e.cidVersion===0?bn:_n})}else{let l=h.value;if(l.cid==null)continue;let m=f+h.key,u=l.size;i.push({Name:m,Tsize:Number(u),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new T({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:Sr,mtime:t?.mtime,mode:t?.mode});return F(R({Data:s.marshal(),Links:i})).length}var bn=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),_n=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xi=$("helia:unixfs:commands:utils:hamt-utils"),En=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),Hc=async(r,t,e)=>{let n=new xn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:e.mtime,mode:e.mode},e);for(let o=0;o<t.length;o++)await n._bucket.put(t[o].name,{size:t[o].size,cid:t[o].cid});let i=await Yt(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},An=async(r,t,e)=>{let n=T.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,le));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new T({type:"hamt-sharded-directory",data:f,fanout:i,hashType:Sr});c&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let m=F(R(s));if(o=await It(m,t,e),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Xi("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,y)=>d+(y.Tsize??0),m.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Sn=async(r,t,e,n)=>{let o=wn($e)(wt(t)),s=[];for(;;){let a=await e.get(r,n),c=V(a),h=new Mc.default,f=await o.take(le),l=En(f);s.push({prefix:l,children:h,node:c});let m;for(let d of c.Links){let y=d.Name??"";if(y.length<2)throw new Error("Invalid HAMT - link name was too short");let _=parseInt(y.substring(0,2),16);h.set(_,!0),y.startsWith(l)&&(m=d)}if(m==null){Xi("no link found with prefix %s for %s",l,t);break}let u=m.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=m.Hash,Xi("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function kn(r,t,e,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=T.unmarshal(r.Data),o;if(i.type==="directory")o=p1(r);else if(i.type==="hamt-sharded-directory")o=await jc(r,0,e,t,n);else throw new Error("Can only estimate the size of directories or shards");return o>e}function p1(r){let t=0;for(let e of r.Links)t+=(e.Name??"").length,t+=e.Hash.version===1?_n.bytes.byteLength:bn.bytes.byteLength;return t}async function jc(r,t,e,n,i){if(t>e)return e;if(r.Data==null||!T.unmarshal(r.Data).isDirectory())return t;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),t+=a.length,t+=s.Hash.bytes.byteLength,s.Hash.code===G){let c=await n.get(s.Hash,i),h=V(c);t+=await jc(h,t,e,n,i)}}return t}var Ft=$("helia:unixfs:components:utils:add-link");async function Ve(r,t,e,n){if(r.node.Data==null)throw new Y("Invalid parent passed to addLink");if(T.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Ft("adding link to sharded directory"),g1(r,t,e,n);Ft(`adding ${t.Name} (${t.Hash}) to regular directory`);let o=await y1(r,t,e,n);if(await kn(o.node,e,n.shardSplitThresholdBytes,n)){Ft("converting directory to sharded directory");let s=await m1(o,e);o.cid=s.cid,o.node=V(await e.get(s.cid,n))}return o}var m1=async(r,t)=>{if(r.node.Data==null)throw new Y("Invalid parent passed to convertToShardedDirectory");let e=T.unmarshal(r.node.Data),n=await Hc(t,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:e.mode,mtime:e.mtime,cidVersion:r.cid.version});return Ft(`converted directory to sharded directory ${n.cid}`),n},y1=async(r,t,e,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===t.Name;if(l&&!n.allowOverwriting)throw new ue;return!l});if(i.push(t),r.node.Data==null)throw new rt("Parent node with no data passed to addToDirectory");let o=T.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=R({Data:s,Links:i});let a=F(r.node),c=await at.digest(a),h=C.create(r.cid.version,G,c);return await e.put(h,a),{node:r.node,cid:h}},g1=async(r,t,e,n)=>{let{path:i,hash:o}=await Sn(r.cid,t.Name,e,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);Ft("next prefix for %s is %s",t.Name,a);let h=`${a}${t.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(Ft("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new ue;Ft("overwriting %s in subshard",t.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:t.Hash,Tsize:t.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was subshard?!");{Ft("prefix %s already exists, creating new subshard",a);let l=s.node.Links.findIndex(_=>_.Name?.startsWith(a)),m=s.node.Links.splice(l,1)[0],u=(m.Name??"").substring(2),y=wn($e)(wt(u));for(let _=0;_<i.length;_++)await y.take(le);for(;;){let _=await y.take(le),g=En(_);m.Name=`${g}${u}`;let w=await o.take(le),b=En(w);if(g===b){let v=new Ji.default;v.set(w,!0),i.push({prefix:b,children:v,node:{Links:[]}});continue}let E=new Ji.default;E.set(w,!0),E.set(_,!0),i.push({prefix:a,children:E,node:{Links:[m,{Name:`${b}${t.Name}`,Hash:t.Hash,Tsize:t.Tsize}]}});break}}}else Ft("link %s was not present in sub-shard",h),t.Name=h,s.node.Links.push(t),s.children.set(c,!0),Ft("adding %s to existing sub-shard",h);return An(i,e,n)};async function Xt(r,t,e={}){let n=await et(r,t,e);if(n.type!=="directory")throw new Dt(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Me(r,t,e,n){let i=await et(r,e,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ct(`${r.toString()} was not a UnixFS node`);return{Name:t,Tsize:i.node instanceof Uint8Array?i.node.byteLength:w1(i.node),Hash:r}}function w1(r){let t=r.Links.reduce((e,n)=>e+(n.Tsize??0),0);return F(r).byteLength+t}var x1=$("helia:unixfs:components:utils:resolve");async function Lt(r,t,e,n){if(t==null||t==="")return{cid:r};let i=`/ipfs/${r}${t==null?"":`/${t}`}`,o=await bi(Wi(i,e,n));if(o.length===0)throw new Ot("Could not find path in directory");return x1("resolved %s to %c",t,r),{cid:o[o.length-1].cid,path:t,segments:o}}async function He(r,t,e,n){if(t.segments==null||t.segments.length===0)return r;let i=t.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,t.segments.reverse();for(let o of t.segments){let[s,a]=await Promise.all([Xt(o.cid,e,n),Me(i.cid,i.name,e,n)]);r=(await Ve(s,a,e,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var b1=Z.bind({ignoreUndefined:!0}),_1={};async function*Gc(r,t,e={}){let n=b1(_1,e),i=await Lt(r,n.path,t,n),o=await et(i.cid,t,n);if(o.type!=="file"&&o.type!=="raw")throw new pn;if(o.content==null)throw new Pe;yield*o.content(n)}var E1=Z.bind({ignoreUndefined:!0}),A1=$("helia:unixfs:chmod"),S1={recursive:!1,shardSplitThresholdBytes:262144};async function Wc(r,t,e,n={}){let i=E1(S1,n),o=await Lt(r,i.path,e,n);if(A1("chmod %c %d",o.cid,t),i.recursive){let m=await Nt(async function*(){for await(let u of ln(o.cid,e,n)){let d,y=[];if(u.type==="raw")d=new T({type:"file",data:u.node});else if(u.type==="file"||u.type==="directory")d=u.unixfs,y=u.node.Links;else throw new Ct;d.mode=t;let _={Data:d.marshal(),Links:y};yield{path:u.path,content:_}}},u=>Wt(u,e,{...i,dagBuilder:async function*(d,y){for await(let _ of d)yield async function(){let g=_.content,w=F(g),b=await It(w,y,{...i,cidVersion:r.version});if(g.Data==null)throw new rt(`${b} had no data`);let E=T.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:_.path,unixfs:E}}}}),async u=>Yt(u));if(m==null)throw new Rt(`Could not chmod ${o.cid.toString()}`);return He(m.cid,o,e,i)}let s=await e.get(o.cid,n),a,c=[];if(o.cid.code===it)a=new T({type:"file",data:s});else{let m=V(s);if(m.Data==null)throw new rt(`${o.cid.toString()} had no data`);c=m.Links,a=T.unmarshal(m.Data)}a.mode=t;let h=F({Data:a.marshal(),Links:c}),f=await at.digest(h),l=C.create(o.cid.version,G,f);return await e.put(l,h),He(l,o,e,i)}var k1=Z.bind({ignoreUndefined:!0}),B1=$("helia:unixfs:cp"),I1={force:!1,shardSplitThresholdBytes:262144};async function Yc(r,t,e,n,i={}){let o=k1(I1,i);if(e.includes("/"))throw new Y("Name must not have slashes");let[s,a]=await Promise.all([Xt(t,n,o),Me(r,e,n,o)]);return B1('Adding %c as "%s" to %c',r,e,t),(await Ve(s,a,n,{allowOverwriting:o.force,cidVersion:t.version,...o})).cid}var v1=Z.bind({ignoreUndefined:!0}),T1={};async function*Kc(r,t,e={}){let n=v1(T1,e),i=await Lt(r,n.path,t,n),o=await et(i.cid,t);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Pe;if(o.type!=="directory")throw new Dt;yield*o.content({offset:e.offset,length:e.length})}var N1=Z.bind({ignoreUndefined:!0}),qc=$("helia:unixfs:mkdir"),C1={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function Xc(r,t,e,n={}){let i=N1(C1,n);if(t.includes("/"))throw new Y("Path must not have slashes");if((await et(r,e,n)).type!=="directory")throw new Dt(`${r.toString()} was not a UnixFS directory`);qc("creating %s",t);let a={Data:new T({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=F(a),h=await at.digest(c),f=C.create(i.cidVersion,G,h);await e.put(f,c);let[l,m]=await Promise.all([Xt(r,e,i),Me(f,t,e,i)]);return qc("adding empty dir called %s to %c",t,r),(await Ve(l,m,e,{...i,allowOverwriting:i.force})).cid}var Bn=$("helia:unixfs:utils:remove-link");async function Jc(r,t,e,n){if(r.node.Data==null)throw new rt("Parent node had no data");if(T.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Bn(`removing ${t} from sharded directory`);let o=await F1(r,t,e,n);return await kn(o.node,e,n.shardSplitThresholdBytes,n)?o:(Bn("converting shard to flat directory %c",r.cid),L1(o,e,n))}return Bn(`removing link ${t} regular directory`),D1(r,t,e,n)}var D1=async(r,t,e,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==t);let i=F(r.node),o=await It(i,e,{...n,cidVersion:r.cid.version});return Bn(`Updated regular directory ${o}`),{node:r.node,cid:o}},F1=async(r,t,e,n)=>{let{path:i}=await Sn(r.cid,t,e,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)===t).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(m=>!(m.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return An(i,e,n)},L1=async(r,t,e)=>{if(r.node.Data==null)throw new Y("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await et(r.cid,t);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=F(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=T.unmarshal(r.node.Data);n.Data=new T({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=F(R(n));return{cid:await It(s,t,{codec:M,cidVersion:r.cid.version,signal:e.signal}),node:n}};var U1=Z.bind({ignoreUndefined:!0}),P1=$("helia:unixfs:rm"),z1={shardSplitThresholdBytes:262144};async function Zc(r,t,e,n={}){let i=U1(z1,n);if(t.includes("/"))throw new Y("Name must not have slashes");let o=await Xt(r,e,i);return P1("Removing %s from %c",t,r),(await Jc(o,t,e,{...i,cidVersion:r.version})).cid}var R1=Z.bind({ignoreUndefined:!0}),O1=$("helia:unixfs:stat"),$1={};async function Qc(r,t,e={}){let n=R1($1,e),i=await Lt(r,e.path,t,n);O1("stat %c",i.cid);let o=await et(i.cid,t,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new Ct;let s=0n,a=0n,c=0n,h=0n,f=0,l,m,u=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,h=a,f=1,l=o.unixfs.mode,m=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let y=await tu(i.cid,t,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((_,g)=>_+(g.Tsize??0),0)),c=BigInt(y.localFileSize),h=BigInt(y.localDagSize),f=y.blocks,l=o.unixfs.mode,m=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:m,fileSize:s,dagSize:a,localFileSize:c,localDagSize:h,blocks:f,type:u,unixfs:d}}async function tu(r,t,e){let n={localFileSize:0,localDagSize:0,blocks:0};if(await t.has(r,e)){let i=await t.get(r,e);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===it)n.localFileSize+=i.byteLength;else if(r.code===G){let o=V(i);if(o.Links.length>0)for(let s of o.Links){let a=await tu(s.Hash,t,e);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new rt(`PBNode ${r.toString()} had no data`);let s=T.unmarshal(o.Data);if(s.data==null)throw new rt(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new Rt(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var V1=Z.bind({ignoreUndefined:!0}),M1=$("helia:unixfs:touch"),H1={recursive:!1,shardSplitThresholdBytes:262144};async function eu(r,t,e={}){let n=V1(H1,e),i=await Lt(r,n.path,t,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(M1("touch %c %o",i.cid,o),n.recursive){let m=await Nt(async function*(){for await(let u of ln(i.cid,t)){let d,y;if(u.type==="raw")d=new T({data:u.node}),y=[];else if(u.type==="file"||u.type==="directory")d=u.unixfs,y=u.node.Links;else throw new Ct;d.mtime=o;let _={Data:d.marshal(),Links:y};yield{path:u.path,content:_}}},u=>Wt(u,t,{...n,dagBuilder:async function*(d,y){for await(let _ of d)yield async function(){let g=_.content,w=F(g),b=await It(w,y,{...n,cidVersion:r.version});if(g.Data==null)throw new rt(`${b} had no data`);let E=T.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:_.path,unixfs:E}}}}),async u=>Yt(u));if(m==null)throw new Rt(`Could not chmod ${i.cid.toString()}`);return He(m.cid,i,t,n)}let s=await t.get(i.cid,e),a,c=[];if(i.cid.code===it)a=new T({data:s});else{let m=V(s);if(c=m.Links,m.Data==null)throw new rt(`${i.cid.toString()} had no data`);a=T.unmarshal(m.Data)}a.mtime=o;let h=F({Data:a.marshal(),Links:c}),f=await at.digest(h),l=C.create(i.cid.version,G,f);return await t.put(l,h),He(l,i,t,n)}var Zi=class{components;constructor(t){this.components=t}async*addAll(t,e={}){yield*Os(t,this.components.blockstore,e)}async addBytes(t,e={}){return $s(t,this.components.blockstore,e)}async addByteStream(t,e={}){return Vs(t,this.components.blockstore,e)}async addFile(t,e={}){return Ms(t,this.components.blockstore,e)}async addDirectory(t={},e={}){return Hs(t,this.components.blockstore,e)}async*cat(t,e={}){yield*Gc(t,this.components.blockstore,e)}async chmod(t,e,n={}){return Wc(t,e,this.components.blockstore,n)}async cp(t,e,n,i={}){return Yc(t,e,n,this.components.blockstore,i)}async*ls(t,e={}){yield*Kc(t,this.components.blockstore,e)}async mkdir(t,e,n={}){return Xc(t,e,this.components.blockstore,n)}async rm(t,e,n={}){return Zc(t,e,this.components.blockstore,n)}async stat(t,e={}){return Qc(t,this.components.blockstore,e)}async touch(t,e={}){return eu(t,this.components.blockstore,e)}};function ru(r){return new Zi(r)}function nu(r,t="utf8"){let e=Fr[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var Vt="/",iu=new TextEncoder().encode(Vt),In=iu[0],kr=class r{_buf;constructor(t,e){if(typeof t=="string")this._buf=wt(t);else if(t instanceof Uint8Array)this._buf=t;else throw new Error("Invalid key, should be String of Uint8Array");if(e==null&&(e=!0),e&&this.clean(),this._buf.byteLength===0||this._buf[0]!==In)throw new Error("Invalid key")}toString(t="utf8"){return nu(this._buf,t)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(t){return new r(t.join(Vt))}static random(){return new r(Math.random().toString().substring(2))}static asKey(t){return t instanceof Uint8Array||typeof t=="string"?new r(t):typeof t.uint8Array=="function"?new r(t.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=iu),this._buf[0]!==In){let t=new Uint8Array(this._buf.byteLength+1);t.fill(In,0,1),t.set(this._buf,1),this._buf=t}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===In;)this._buf=this._buf.subarray(0,-1)}less(t){let e=this.list(),n=t.list();for(let i=0;i<e.length;i++){if(n.length<i+1)return!1;let o=e[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return e.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let t=this.namespaces();return t[t.length-1]}list(){return this.toString().split(Vt).slice(1)}type(){return j1(this.baseNamespace())}name(){return G1(this.baseNamespace())}instance(t){return new r(this.toString()+":"+t)}path(){let t=this.parent().toString();return t.endsWith(Vt)||(t+=Vt),t+=this.type(),new r(t)}parent(){let t=this.list();return t.length===1?new r(Vt):new r(t.slice(0,-1).join(Vt))}child(t){return this.toString()===Vt?t:t.toString()===Vt?this:new r(this.toString()+t.toString(),!1)}isAncestorOf(t){return t.toString()===this.toString()?!1:t.toString().startsWith(this.toString())}isDecendantOf(t){return t.toString()===this.toString()?!1:this.toString().startsWith(t.toString())}isTopLevel(){return this.list().length===1}concat(...t){return r.withNamespaces([...this.namespaces(),...W1(t.map(e=>e.namespaces()))])}};function j1(r){let t=r.split(":");return t.length<2?"":t.slice(0,-1).join(":")}function G1(r){let t=r.split(":");return t[t.length-1]}function W1(r){return[].concat(...r)}function vn(r){return r.split("/").pop()??""}var Y1=$("helia:mfs"),Qi=class{components;unixfs;root;key;constructor(t,e={}){this.components=t,this.key=new kr(e.key??"/locals/filesroot"),this.unixfs=ru(t)}async#t(){if(this.root==null)try{let t=await this.components.datastore.get(this.key);this.root=C.decode(t)}catch(t){if(t.code!=="ERR_NOT_FOUND")throw t;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(t,e,n){let i=await this.unixfs.addFile({content:t,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,e,n)}async writeByteStream(t,e,n){let i=await this.unixfs.addFile({content:t,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,e,n)}async*cat(t,e={}){let n=await this.#t(),i=await this.#r(n,t,{...e,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,e)}async chmod(t,e,n={}){let i=await this.#t();this.root=await this.unixfs.chmod(i,e,{...n,path:t})}async cp(t,e,n){let i=await this.#t(),o=n?.force??!1;typeof t=="string"&&(t=(await this.stat(t,n)).cid),o||await this.#s(e,n);let s=vn(e),a=e.substring(0,e.length-`/${s}`.length),c=[{cid:i,name:""}];a!==""&&(c=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),c.push({cid:t,name:s}),this.root=await this.#n(c,n)}async*ls(t,e){let n=await this.#t();e?.path!=null&&(t=`${t}/${e.path}`),yield*this.unixfs.ls(n,{...e,path:t})}async mkdir(t,e){let n=e?.force??!1;n||await this.#s(t,e);let i=vn(t),o=t.substring(0,t.length-`/${i}`.length),s=await this.#t(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...e,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:e?.mode,mtime:e?.mtime},e),name:vn(t)}),this.root=await this.#n(a,e)}async rm(t,e){(e?.force??!1)||await this.#u(t,e);let i=await this.#t(),o=await this.#r(i,t,{...e,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new Y("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,e),this.root=await this.#n(o,e)}async stat(t,e){let n=await this.#t(),o=(await this.#r(n,t,{...e,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Ot;return this.unixfs.stat(o.cid,{...e})}async touch(t,e){let n=await this.#t(),i=await this.#r(n,t,{...e,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Ot;o.cid=await this.unixfs.touch(o.cid,e),this.root=await this.#n(i,e)}async#r(t,e,n){if(!e.startsWith("/"))throw new Y("path must be absolute");let i=await this.unixfs.stat(t,{...n,offline:!0}),o=[{cid:t,name:"",unixfs:i.unixfs}],s=t,a=e.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(Y1.error("could not resolve path segment %s of %s under %c",f,e,t),n.createMissingDirectories){let m=await this.unixfs.addDirectory();o.push({cid:m,name:f,unixfs:new T({type:"directory"})})}else throw new Ot(`${e} does not exist`)}}let c=o[o.length-1];if(n.finalSegmentMustBeDirectory&&c.unixfs?.isDirectory()!==!0)throw new Dt(`${e} was not a directory`);return o}async#n(t,e={}){let n=t.pop();if(n==null)throw new Y("path was too short");let i=n.cid;for(let o=t.length-1;o>-1;o--){let s=t[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...e,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,e),i}async#u(t,e={}){if(!await this.#c(t,e))throw new Ot}async#s(t,e={}){if(await this.#c(t,e))throw new ue}async#c(t,e={}){try{return await this.stat(t,{...e,offline:!0}),!0}catch{return!1}}};function K1(r,t={}){return new Qi(r,t)}return fu(q1);})();
2
+ "use strict";var HeliaMfs=(()=>{var zc=Object.create;var _r=Object.defineProperty;var Oc=Object.getOwnPropertyDescriptor;var Rc=Object.getOwnPropertyNames;var $c=Object.getPrototypeOf,Mc=Object.prototype.hasOwnProperty;var Se=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)_r(r,t,{get:e[t],enumerable:!0})},Gi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Rc(e))!Mc.call(r,i)&&i!==t&&_r(r,i,{get:()=>e[i],enumerable:!(n=Oc(e,i))||n.enumerable});return r};var O=(r,e,t)=>(t=r!=null?zc($c(r)):{},Gi(e||!r||!r.__esModule?_r(t,"default",{value:r,enumerable:!0}):t,r)),Vc=r=>Gi(_r({},"__esModule",{value:!0}),r);var K=Se((kd,qi)=>{"use strict";function Wi(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function Hc(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return Wi(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),Wi(new i,t)}}qi.exports=Hc});var Zo=Se((rr,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 y(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,g=d,w=0,b=3432918353,k=461845907,A=0;A<x;A=A+4)w=c[A]|c[A+1]<<8|c[A+2]<<16|c[A+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=c[A+2]<<16;case 2:w^=c[A+1]<<8;case 1:w^=c[A],w=i(w,b),w=o(w,15),w=i(w,k),g^=w}return g^=c.length,g=s(g),g>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,g=d,w=d,b=d,k=d,A=0,I=0,S=0,D=0,ye=597399067,wr=2869860233,xr=951274213,br=2716044179,N=0;N<x;N=N+16)A=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,I=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,S=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,A=i(A,ye),A=o(A,15),A=i(A,wr),g^=A,g=o(g,19),g+=w,g=i(g,5)+1444728091,I=i(I,wr),I=o(I,16),I=i(I,xr),w^=I,w=o(w,17),w+=b,w=i(w,5)+197830471,S=i(S,xr),S=o(S,17),S=i(S,br),b^=S,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,br),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=g,k=i(k,5)+850148119;switch(A=0,I=0,S=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,br),D=o(D,18),D=i(D,ye),k^=D;case 12:S^=c[N+11]<<24;case 11:S^=c[N+10]<<16;case 10:S^=c[N+9]<<8;case 9:S^=c[N+8],S=i(S,xr),S=o(S,17),S=i(S,br),b^=S;case 8:I^=c[N+7]<<24;case 7:I^=c[N+6]<<16;case 6:I^=c[N+5]<<8;case 5:I^=c[N+4],I=i(I,wr),I=o(I,16),I=i(I,xr),w^=I;case 4:A^=c[N+3]<<24;case 3:A^=c[N+2]<<16;case 2:A^=c[N+1]<<8;case 1:A^=c[N],A=i(A,ye),A=o(A,15),A=i(A,wr),g^=A}return g^=c.length,w^=c.length,b^=c.length,k^=c.length,g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,g=s(g),w=s(w),b=s(b),k=s(k),g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,g=[0,d],w=[0,d],b=[0,0],k=[0,0],A=[2277735313,289559509],I=[1291169091,658871167],S=0;S<x;S=S+16)b=[c[S+4]|c[S+5]<<8|c[S+6]<<16|c[S+7]<<24,c[S]|c[S+1]<<8|c[S+2]<<16|c[S+3]<<24],k=[c[S+12]|c[S+13]<<8|c[S+14]<<16|c[S+15]<<24,c[S+8]|c[S+9]<<8|c[S+10]<<16|c[S+11]<<24],b=u(b,A),b=h(b,31),b=u(b,I),g=l(g,b),g=h(g,27),g=a(g,w),g=a(u(g,[0,5]),[0,1390208809]),k=u(k,I),k=h(k,33),k=u(k,A),w=l(w,k),w=h(w,31),w=a(w,g),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[S+14]],48));case 14:k=l(k,f([0,c[S+13]],40));case 13:k=l(k,f([0,c[S+12]],32));case 12:k=l(k,f([0,c[S+11]],24));case 11:k=l(k,f([0,c[S+10]],16));case 10:k=l(k,f([0,c[S+9]],8));case 9:k=l(k,[0,c[S+8]]),k=u(k,I),k=h(k,33),k=u(k,A),w=l(w,k);case 8:b=l(b,f([0,c[S+7]],56));case 7:b=l(b,f([0,c[S+6]],48));case 6:b=l(b,f([0,c[S+5]],40));case 5:b=l(b,f([0,c[S+4]],32));case 4:b=l(b,f([0,c[S+3]],24));case 3:b=l(b,f([0,c[S+2]],16));case 2:b=l(b,f([0,c[S+1]],8));case 1:b=l(b,[0,c[S]]),b=u(b,A),b=h(b,31),b=u(b,I),g=l(g,b)}return g=l(g,[0,c.length]),w=l(w,[0,c.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof rr<"u"?(typeof Dr<"u"&&Dr.exports&&(rr=Dr.exports=t),rr.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(rr)});var ts=Se((r0,es)=>{es.exports=Zo()});var Fr=Se((u0,ns)=>{"use strict";ns.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(Rf,0),u=~(4294967295<<o+1),h=rs(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($f),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(Mf)}};function Rf(r,e){return r+rs(e)}function rs(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function $f(r,e){return r[0]-e[0]}function Mf(r){return r[1]}});var Xa=Se((hw,Ti)=>{"use strict";var sh=Object.prototype.hasOwnProperty,Y="~";function lr(){}Object.create&&(lr.prototype=Object.create(null),new lr().__proto__||(Y=!1));function ah(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function qa(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 rn(r,e){--r._eventsCount===0?r._events=new lr:delete r._events[e]}function q(){this._events=new lr,this._eventsCount=0}q.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};q.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};q.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};q.prototype.emit=function(e,t,n,i,o,s){var a=Y?Y+e:e;if(!this._events[a])return!1;var u=this._events[a],h=arguments.length,f,l;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,i),!0;case 5:return u.fn.call(u.context,t,n,i,o),!0;case 6:return u.fn.call(u.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];u.fn.apply(u.context,f)}else{var y=u.length,c;for(l=0;l<y;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[l].context,f)}}return!0};q.prototype.on=function(e,t,n){return qa(this,e,t,n,!1)};q.prototype.once=function(e,t,n){return qa(this,e,t,n,!0)};q.prototype.removeListener=function(e,t,n,i){var o=Y?Y+e:e;if(!this._events[o])return this;if(!t)return rn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&rn(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:rn(this,o)}return this};q.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&rn(this,t)):(this._events=new lr,this._eventsCount=0),this};q.prototype.off=q.prototype.removeListener;q.prototype.addListener=q.prototype.on;q.prefixed=Y;q.EventEmitter=q;typeof Ti<"u"&&(Ti.exports=q)});var oc=Se((ix,ic)=>{"use strict";ic.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var lc=Se((uc,fc)=>{"use strict";var an=oc(),{hasOwnProperty:ac}=Object.prototype,{propertyIsEnumerable:yh}=Object,Nt=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),gh=uc,sc={concatArrays:!1,ignoreUndefined:!1},cn=r=>{let e=[];for(let t in r)ac.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):an(r)?xh(r):r}function wh(r){let e=r.slice(0,0);return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}function xh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}var cc=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Nt(r,i,Oi(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++)ac.call(o,a)&&(s.push(String(a)),o===r?Nt(n,i++,o[a]):Nt(n,i++,Tt(o[a])));n=cc(n,o,cn(o).filter(a=>!s.includes(a)),t)}),n};function Oi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?bh(r,e,t):!an(e)||!an(r)?Tt(e):cc(r,e,cn(e),t)}fc.exports=function(...r){let e=Oi(Tt(sc),this!==gh&&this||{},sc),t={_:{}};for(let n of r)if(n!==void 0){if(!an(n))throw new TypeError("`"+n+"` is not an Option Object");t=Oi(t,{_:n},e)}return t._}});var pc=Se((ax,dc)=>{var Lt=1e3,Ft=Lt*60,Pt=Ft*60,ot=Pt*24,_h=ot*7,kh=ot*365.25;dc.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return Eh(r);if(t==="number"&&isFinite(r))return e.long?Bh(r):Sh(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Eh(r){if(r=String(r),!(r.length>100)){var 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){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*kh;case"weeks":case"week":case"w":return t*_h;case"days":case"day":case"d":return t*ot;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Pt;case"minutes":case"minute":case"mins":case"min":case"m":return t*Ft;case"seconds":case"second":case"secs":case"sec":case"s":return t*Lt;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Sh(r){var e=Math.abs(r);return e>=ot?Math.round(r/ot)+"d":e>=Pt?Math.round(r/Pt)+"h":e>=Ft?Math.round(r/Ft)+"m":e>=Lt?Math.round(r/Lt)+"s":r+"ms"}function Bh(r){var e=Math.abs(r);return e>=ot?fn(r,e,ot,"day"):e>=Pt?fn(r,e,Pt,"hour"):e>=Ft?fn(r,e,Ft,"minute"):e>=Lt?fn(r,e,Lt,"second"):r+" ms"}function fn(r,e,t,n){var i=e>=t*1.5;return Math.round(r/t)+" "+n+(i?"s":"")}});var yc=Se((cx,mc)=>{function vh(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=pc(),t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,c,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(I,S)=>{if(I==="%%")return"%";k++;let D=t.formatters[S];if(typeof D=="function"){let ye=x[k];I=D.call(g,ye),x.splice(k,1),k--}return I}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),c=y.length;for(l=0;l<c;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.slice(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function u(f){return f instanceof Error?f.stack||f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}mc.exports=vh});var gc=Se((ue,ln)=>{ue.formatArgs=Ch;ue.save=Ih;ue.load=Nh;ue.useColors=Ah;ue.storage=Th();ue.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ue.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Ah(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Ch(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+ln.exports.humanize(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)}ue.log=console.debug||console.log||(()=>{});function Ih(r){try{r?ue.storage.setItem("debug",r):ue.storage.removeItem("debug")}catch{}}function Nh(){let r;try{r=ue.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Th(){try{return localStorage}catch{}}ln.exports=yc()(ue);var{formatters:Dh}=ln.exports;Dh.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var bd={};G(bd,{mfs:()=>xd});var wi=O(K(),1);function jc(r){return r[Symbol.asyncIterator]!=null}function Gc(r){if(jc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var Bn=Gc;function Wc(r){return r[Symbol.asyncIterator]!=null}function qc(r,e=1){return e=Number(e),Wc(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=qc;async function*$t(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 De(r=0){return new Uint8Array(r)}function te(r=0){return new Uint8Array(r)}function qe(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=te(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Xi(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 Ji=Symbol.for("@achingbrain/uint8arraylist");function Ki(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?.[Ji]}var at=class r{bufs;length;[Ji]=!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=Ki(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Ki(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 qe(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:qe(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 y=h;y>=0;y--){let c=this.get(l+y);if(n[y]!==c){f=Math.max(1,y-a[c]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=te(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=De(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=De(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=De(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=te(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=De(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=De(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=De(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=De(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=De(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(!Xi(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 Xc=262144,Mt=(r={})=>{let e=r.chunkSize??Xc;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:()=>V,createLink:()=>go,createNode:()=>yo,decode:()=>R,encode:()=>T,name:()=>Gu,prepare:()=>P,validate:()=>Rn});var Ln={};G(Ln,{base32:()=>Oe,base32hex:()=>su,base32hexpad:()=>cu,base32hexpadupper:()=>uu,base32hexupper:()=>au,base32pad:()=>iu,base32padupper:()=>ou,base32upper:()=>nu,base32z:()=>fu});var ct={};G(ct,{coerce:()=>le,empty:()=>Yi,equals:()=>vn,fromHex:()=>Jc,fromString:()=>An,isBinary:()=>Yc,toHex:()=>Kc,toString:()=>Cn});var Yi=new Uint8Array(0);function Kc(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))):Yi}function vn(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 Yc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function An(r){return new TextEncoder().encode(r)}function Cn(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,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,k=new Uint8Array(b);g!==w;){for(var A=d[g],I=0,S=b-1;(A!==0||I<x)&&S!==-1;S--,I++)A+=256*k[S]>>>0,k[S]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");x=I,g++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===u;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var A=0,I=w-1;(k!==0||A<g)&&I!==-1;I--,A++)k+=a*b[I]>>>0,b[I]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var S=w-g;S!==w&&b[S]===0;)S++;for(var D=new Uint8Array(x+(w-S)),ye=x;S!==w;)D[ye++]=b[S++];return D}}}function c(d){var m=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:c}}var Zc=Qc,eu=Zc,Qi=eu;var In=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")}},Nn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Zi(this,e)}},Tn=class{decoders;constructor(e){this.decoders=e}or(e){return Zi(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 Zi(r,e){return new Tn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Dn=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 In(e,t,n),this.decoder=new Nn(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 Dn(r,e,t,n)}function ze({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 tu(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)throw new SyntaxError("Unexpected end of data");return s}function ru(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;)o+="=";return o}function F({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return ut({prefix:e,name:r,encode(i){return ru(i,n,t)},decode(i){return tu(i,n,t,r)}})}var Oe=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),nu=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),iu=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ou=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),su=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),au=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),cu=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),uu=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),fu=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fn={};G(Fn,{base58btc:()=>he,base58flickr:()=>lu});var he=ze({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),lu=ze({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var hu=ro,eo=128,du=127,pu=~du,mu=Math.pow(2,31);function ro(r,e,t){e=e||[],t=t||0;for(var n=t;r>=mu;)e[t++]=r&255|eo,r/=128;for(;r&pu;)e[t++]=r&255|eo,r>>>=7;return e[t]=r|0,ro.bytes=t-n+1,e}var yu=Pn,gu=128,to=127;function Pn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Pn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&to)<<i:(s&to)*Math.pow(2,i),i+=7}while(s>=gu);return Pn.bytes=o-n,t}var wu=Math.pow(2,7),xu=Math.pow(2,14),bu=Math.pow(2,21),_u=Math.pow(2,28),ku=Math.pow(2,35),Eu=Math.pow(2,42),Su=Math.pow(2,49),Bu=Math.pow(2,56),vu=Math.pow(2,63),Au=function(r){return r<wu?1:r<xu?2:r<bu?3:r<_u?4:r<ku?5:r<Eu?6:r<Su?7:r<Bu?8:r<vu?9:10},Cu={encode:hu,decode:yu,encodingLength:Au},Iu=Cu,Vt=Iu;function Ht(r,e=0){return[Vt.decode(r,e),Vt.decode.bytes]}function ft(r,e,t=0){return Vt.encode(r,e,t),e}function lt(r){return Vt.encodingLength(r)}function Xe(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 Br(r){let e=le(r),[t,n]=Ht(e),[i,o]=Ht(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 no(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&vn(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 io(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Tu(t,Un(r),e??he.encoder);default:return Du(t,Un(r),e??Oe.encoder)}}var oo=new WeakMap;function Un(r){let e=oo.get(r);if(e==null){let t=new Map;return oo.set(r,t),t}return e}var C=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==jt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Lu)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=Xe(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&no(e.multihash,n.multihash)}toString(e){return io(this,e)}toJSON(){return{"/":io(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??so(n,i,o.bytes))}else if(t[Fu]===!0){let{version:n,multihash:i,code:o}=t,s=Br(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==jt)throw new Error(`Version 0 CID must use dag-pb (code: ${jt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=so(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,jt,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=le(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ht(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Ht(e.subarray(t));return t+=y,l},i=n(),o=jt;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,multihashSize:f,size:h}}static parse(e,t){let[n,i]=Nu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Un(o).set(n,e),o}};function Nu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Oe.prefix:{let t=e??Oe;return[Oe.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Tu(r,e,t){let{prefix:n}=t;if(n!==he.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function Du(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var jt=112,Lu=18;function so(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 Fu=Symbol.for("@ipld/js-cid/CID");var Pu=new TextDecoder;function zn(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 vr(r,e){let t;[t,e]=zn(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 ao(r,e){let t;return[t,e]=zn(r,e),[t&7,t>>3,e]}function Uu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=ao(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]=vr(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]=vr(r,n),e.Name=Pu.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=zn(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 co(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=ao(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]=vr(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]=vr(r,t),n.push(Uu(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 fo=new TextEncoder,uo=2**32,zu=2**31;function Ou(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Gt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=fo.encode(r.Name);t-=n.length,e.set(n,t),t=Gt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Gt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function lo(r){let e=$u(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Gt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Ou(r.Links[i],t.subarray(0,n));n-=o,n=Gt(t,n,o)-1,t[n]=18}return t}function Ru(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+pt(t)}if(typeof r.Name=="string"){let t=fo.encode(r.Name).length;e+=1+t+pt(t)}return typeof r.Tsize=="number"&&(e+=1+pt(r.Tsize)),e}function $u(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=Ru(t);e+=1+n+pt(n)}return e}function Gt(r,e,t){e-=pt(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 pt(r){return r%2===0&&r++,Math.floor((Mu(r)+6)/7)}function Mu(r){let e=0;return r>=uo&&(r=Math.floor(r/uo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Vu[r]}var Vu=[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"],ju=["Hash","Name","Tsize"],On=new TextEncoder;function po(r,e){if(r===e)return 0;let t=r.Name?On.encode(r.Name):[],n=e.Name?On.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 ho(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function mo(r){if(typeof r.asCID=="object"){let t=C.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=C.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=C.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=C.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function P(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=On.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(mo),e.Links.sort(po);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Rn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!ho(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(!ho(t,ju))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&po(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function yo(r,e=[]){return P({Data:r,Links:e})}function go(r,e,t){return mo({Hash:t,Name:r,Tsize:e})}function wo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Gu="dag-pb",V=112;function T(r){Rn(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),lo(e)}function R(r){let e=wo(r),t=co(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=C.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var di=O(K(),1);var Wu=Math.pow(2,7),qu=Math.pow(2,14),Xu=Math.pow(2,21),xo=Math.pow(2,28),bo=Math.pow(2,35),_o=Math.pow(2,42),ko=Math.pow(2,49),J=128,Re=127;function Wt(r){if(r<Wu)return 1;if(r<qu)return 2;if(r<Xu)return 3;if(r<xo)return 4;if(r<bo)return 5;if(r<_o)return 6;if(r<ko)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(Wt(r)){case 8:e[t++]=r&255|J,r/=128;case 7:e[t++]=r&255|J,r/=128;case 6:e[t++]=r&255|J,r/=128;case 5:e[t++]=r&255|J,r/=128;case 4:e[t++]=r&255|J,r>>>=7;case 3:e[t++]=r&255|J,r>>>=7;case 2:e[t++]=r&255|J,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function So(r,e){let t=r[e],n=0;if(n+=t&Re,t<J||(t=r[e+1],n+=(t&Re)<<7,t<J)||(t=r[e+2],n+=(t&Re)<<14,t<J)||(t=r[e+3],n+=(t&Re)<<21,t<J)||(t=r[e+4],n+=(t&Re)*xo,t<J)||(t=r[e+5],n+=(t&Re)*bo,t<J)||(t=r[e+6],n+=(t&Re)*_o,t<J)||(t=r[e+7],n+=(t&Re)*ko,t<J))return n;throw new RangeError("Could not decode varint")}var $n=new Float32Array([-0]),$e=new Uint8Array($n.buffer);function Bo(r,e,t){$n[0]=r,e[t]=$e[0],e[t+1]=$e[1],e[t+2]=$e[2],e[t+3]=$e[3]}function vo(r,e){return $e[0]=r[e],$e[1]=r[e+1],$e[2]=r[e+2],$e[3]=r[e+3],$n[0]}var Mn=new Float64Array([-0]),W=new Uint8Array(Mn.buffer);function Ao(r,e,t){Mn[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],Mn[0]}var Ku=BigInt(Number.MAX_SAFE_INTEGER),Ju=BigInt(Number.MIN_SAFE_INTEGER),re=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return Ke;if(e<Ku&&e>Ju)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>Io&&(i=0n,++n>Io&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ke;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ke}},Ke=new re(0,0);Ke.toBigInt=function(){return 0n};Ke.zzEncode=Ke.zzDecode=function(){return this};Ke.length=function(){return 1};var Io=4294967296n;function No(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 To(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 Vn(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 ge(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Ar(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Hn=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,ge(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 ge(this,4);return Ar(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ge(this,4);return Ar(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ge(this,4);let e=vo(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ge(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 ge(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return To(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw ge(this,e);this.pos+=e}else do if(this.pos>=this.len)throw ge(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new re(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw ge(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 ge(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 ge(this,8);let e=Ar(this.buf,this.pos+=4),t=Ar(this.buf,this.pos+=4);return new re(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=So(this.buf,this.pos);return this.pos+=Wt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function jn(r){return new Hn(r instanceof Uint8Array?r:r.subarray())}function qt(r,e,t){let n=jn(r);return e.decode(n,void 0,t)}var Gn={};G(Gn,{base10:()=>Yu});var Yu=ze({prefix:"9",name:"base10",alphabet:"0123456789"});var Wn={};G(Wn,{base16:()=>Qu,base16upper:()=>Zu});var Qu=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Zu=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qn={};G(qn,{base2:()=>ef});var ef=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Xn={};G(Xn,{base256emoji:()=>sf});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}"),tf=Lo.reduce((r,e,t)=>(r[t]=e,r),[]),rf=Lo.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function nf(r){return r.reduce((e,t)=>(e+=tf[t],e),"")}function of(r){let e=[];for(let t of r){let n=rf[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var sf=ut({prefix:"\u{1F680}",name:"base256emoji",encode:nf,decode:of});var Kn={};G(Kn,{base36:()=>af,base36upper:()=>cf});var af=ze({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),cf=ze({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Jn={};G(Jn,{base64:()=>Xt,base64pad:()=>uf,base64url:()=>ff,base64urlpad:()=>lf});var Xt=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),uf=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ff=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),lf=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Yn={};G(Yn,{base8:()=>hf});var hf=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Qn={};G(Qn,{identity:()=>df});var df=ut({prefix:"\0",name:"identity",encode:r=>Cn(r),decode:r=>An(r)});var Ap=new TextEncoder,pf=new TextDecoder;var Fo=512;function Po(r){return JSON.parse(pf.decode(r))}var Be={};G(Be,{code:()=>ee,decode:()=>gf,encode:()=>yf,name:()=>mf});var mf="raw",ee=85;function yf(r){return le(r)}function gf(r){return le(r)}var ti={};G(ti,{identity:()=>ei});var Uo=0,wf="identity",zo=le;function xf(r){return Xe(Uo,zo(r))}var ei={code:Uo,name:wf,encode:zo,digest:xf};var ni={};G(ni,{sha256:()=>ne,sha512:()=>bf});function Je({name:r,code:e,encode:t}){return new ri(r,e,t)}var ri=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Xe(this.code,t):t.then(n=>Xe(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Ro(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ne=Je({name:"sha2-256",code:18,encode:Ro("SHA-256")}),bf=Je({name:"sha2-512",code:19,encode:Ro("SHA-512")});var ii={...Qn,...qn,...Yn,...Gn,...Wn,...Ln,...Kn,...Fn,...Jn,...Xn},$p={...ni,...ti};function Mo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var $o=Mo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),oi=Mo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=te(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),_f={utf8:$o,"utf-8":$o,hex:ii.base16,latin1:oi,ascii:oi,binary:oi,...ii},Cr=_f;function de(r,e="utf8"){let t=Cr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function si(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return te(s);i+s>e&&(n=te(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ye=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ai(){}var ui=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},kf=si();function Ef(r){return globalThis.Buffer!=null?te(r):kf(r)}var Jt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ye(ai,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ye(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new fi((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(Ir,10,re.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=re.fromBigInt(e);return this._push(Ir,t.length(),t)}uint64Number(e){return this._push(Eo,Wt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=re.fromBigInt(e).zzEncode();return this._push(Ir,t.length(),t)}sint64Number(e){let t=re.fromNumber(e).zzEncode();return this._push(Ir,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(ci,1,e?1:0)}fixed32(e){return this._push(Kt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=re.fromBigInt(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64Number(e){let t=re.fromNumber(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(Bo,4,e)}double(e){return this._push(Ao,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(ci,1,0):this.uint32(t)._push(Bf,t,e)}string(e){let t=No(e);return t!==0?this.uint32(t)._push(Vn,t,e):this._push(ci,1,0)}fork(){return this.states=new ui(this),this.head=this.tail=new Ye(ai,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 Ye(ai,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=Ef(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function ci(r,e,t){e[t]=r&255}function Sf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var fi=class extends Ye{next;constructor(e,t){super(Sf,e,t),this.next=void 0}};function Ir(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Kt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function Bf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Jt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(vf,e,r),this},Jt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(Af,e,r),this});function vf(r,e,t){e.set(r,t)}function Af(r,e,t){r.length<40?Vn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(de(r),t)}function li(){return new Jt}function Yt(r,e){let t=li();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 Nr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function hi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Nr("enum",mt.VARINT,t,n)}function Qt(r,e){return Nr("message",mt.LENGTH_DELIMITED,r,e)}var we;(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=()=>hi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Qt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Tr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let u=i.uint32();switch(u>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Tr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Yt(i,r.codec()),r.decode=i=>qt(i,r.codec())})(we||(we={}));var Tr;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Yt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(Tr||(Tr={}));var Vo;(function(r){let e;r.codec=()=>(e==null&&(e=Qt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Yt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(Vo||(Vo={}));var Ho={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},Cf=["directory","hamt-sharded-directory"],jo=parseInt("0644",8),Go=parseInt("0755",8),v=class r{static unmarshal(e){let t=we.decode(e),n=new r({type:Ho[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(Ho).includes(t))throw(0,di.default)(new Error("Type: "+t+" is not valid"),"ERR_INVALID_TYPE");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Go:jo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return Cf.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=we.DataType.Raw;break;case"directory":e=we.DataType.Directory;break;case"file":e=we.DataType.File;break;case"metadata":e=we.DataType.Metadata;break;case"symlink":e=we.DataType.Symlink;break;case"hamt-sharded-directory":e=we.DataType.HAMTShard;break;default:throw(0,di.default)(new Error(`Type: ${e} is not valid`),"ERR_INVALID_TYPE")}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===jo&&!this.isDirectory()&&(n=void 0),n===Go&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),we.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var U=class extends Event{constructor(e,t){super(e),this.detail=t}};var xe=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await ne.digest(r),i=C.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Wo(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=Be,a.cidVersion=1):(s=new v({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await xe(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new U("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var pi=O(K(),1);var qo=async(r,e,t)=>{let n=new v({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(P({Data:n.marshal()})),o=await xe(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*If(r,e,t){let n=-1,i;for await(let o of $t(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 Xo(r){return r.single===!0}var Nf=(r,e,t)=>async function(i){if(i.length===1&&Xo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Xo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new v({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(P(l)),f.cid=await xe(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new v({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===ee&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===ee?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs==null||f.unixfs.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},u=T(P(a)),h=await xe(u,e,t);return t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},Ko=async(r,e,t)=>t.layout(If(r,e,t),Nf(r,e,t));function Tf(r){return Symbol.iterator in r}function Df(r){return Symbol.asyncIterator in r}function Lf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Tf(r))return async function*(){yield*r}();if(Df(r))return r}catch{throw(0,pi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,pi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function Jo(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("/")),Ff(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(Lf(i.content)))){let h=BigInt(u.byteLength);a+=h,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield u}}(),originalPath:o};yield async()=>Ko(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>qo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Ff(r){return r.content!=null}var mi=O(K(),1);var Yo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,mi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof t=="string"||t instanceof String)yield de(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw(0,mi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var Pf=174;function Zt(r){let e=r?.maxChildrenPerNode??Pf;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 Uf(r){return r[Symbol.asyncIterator]!=null}function zf(r){if(Uf(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 Qo=zf;var ve=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},er=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),tr=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Qe=class extends ve{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?tr.bytes.byteLength:er.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof ve)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new v({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(P(i)),s=await xe(o,e,this.options),a=o.length+i.Links.reduce((u,h)=>u+(h.Tsize==null?0:h.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Lr=O(ts(),1);function Of(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 o0=Je({name:"murmur3-32",code:35,encode:r=>Of(Lr.default.x86.hash32(r))}),Ze=Je({name:"murmur3-128",code:34,encode:r=>ct.fromHex(Lr.default.x64.hash128(r))}),s0=Je({name:"murmur3-x64-64",code:34,encode:r=>ct.fromHex(Lr.default.x64.hash128(r)).subarray(0,8)});var is=O(Fr(),1);var ie=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new is.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 os(this,e,t)}toJSON(){return this.serialize(Hf,jf)}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"?de(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(Vf);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 Vf(r){return!!r}function Hf(r,e){return r.key}function jf(r){return r}async function os(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof ie)await os(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Gf=[255,254,252,248,240,224,192,128],Wf=[1,3,7,15,31,63,127,255],Pr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=qf(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function qf(r,e,t){let n=Xf(e,t);return(r&n)>>>e}function Xf(r,e){return Gf[r]&Wf[Math.min(e+r-1,7)]}function ss(r){function e(t){return t instanceof Ur?t:new Ur(t,r)}return e}var Ur=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?qe([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Pr(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:ss(r.hashFn)};return new ie(e)}async function Kf(r){return(await Ze.encode(r)).slice(0,8).reverse()}var as=BigInt(34),Jf=8,yi=class extends ve{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Kf,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()}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=fs(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of us(this._bucket,e,this,this.options))yield{...t,path:this.path}}},cs=yi;async function*us(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof ie){let g;for await(let w of us(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(Yf(m.value)){let g=m.value,w;for await(let k of g.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:as,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),y=await xe(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:c}}function Yf(r){return typeof r.flush=="function"}function fs(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof ie){let y=fs(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?er:tr})}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?er:tr})}else{let y=f.value;if(y.cid==null)continue;let c=l+f.key,d=y.size;o.push({Name:c,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:as,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function gi(r,e,t,n){let i=e;e instanceof Qe&&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 gi(i,o,t,n)}return i}async function Qf(r,e){let t=new cs({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 ls=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Zf(r,e,t){let n=ls(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 gi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof ve))&&(f=new Qe({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*hs(r,e){if(!(r instanceof ve)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function ds(r){return async function*(t,n){let i=new Qe({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 Zf(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*hs(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*hs(a.child,n))}}async function*Me(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,y=t.reduceSingleLeafToSelf??!0,c=t.chunker??Mt(),d=t.chunkValidator??Yo(),m=t.dagBuilder??Jo({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Zt(),bufferImporter:t.bufferImporter??Wo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??ds({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x($t(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function zr(r,e,t={}){let n=await Bn(Me([r],e,t));if(n==null)throw(0,wi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function ps(r,e,t={}){let n=await Bn(Me([r],e,t));if(n==null)throw(0,wi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function ms(r,e,t={}){return zr({content:r},e,t)}async function ys(r,e,t={}){return zr({content:r},e,t)}var nr={cidVersion:1,rawLeaves:!0,layout:Zt({maxChildrenPerNode:1024}),chunker:Mt({chunkSize:1048576})};async function*gs(r,e,t={}){yield*Me(r,e,{...nr,...t})}async function ws(r,e,t={}){let{cid:n}=await ms(r,e,{...nr,...t});return n}async function xs(r,e,t={}){let{cid:n}=await ys(r,e,{...nr,...t});return n}async function bs(r,e,t={}){let{cid:n}=await zr(r,e,{...nr,...t});return n}async function _s(r,e,t={}){let{cid:n}=await ps({...r,path:r.path??"-"},e,{...nr,...t});return n}var on=O(K(),1);function el(r){return r[Symbol.asyncIterator]!=null}function tl(r){if(el(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 Ve=tl;var rl=["string","number","bigint","symbol"],nl=["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 ks(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(rl.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(il(r))return"Buffer";let t=ol(r);return t||"Object"}function il(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function ol(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(nl.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 gt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",sl=new TextDecoder,al=new TextEncoder;function Or(r){return gt&&globalThis.Buffer.isBuffer(r)}function Rr(r){return r instanceof Uint8Array?Or(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var vs=gt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Ss(r,e,t):(r,e,t)=>t-e>64?sl.decode(r.subarray(e,t)):Ss(r,e,t),$r=gt?r=>r.length>64?globalThis.Buffer.from(r):Es(r):r=>r.length>64?al.encode(r):Es(r);var wt=gt?(r,e,t)=>Or(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),As=gt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Rr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Cs=gt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Is(r,e){if(Or(r)&&Or(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 Ss(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 xi(n)}var Bs=4096;function xi(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 cl=256,Mr=class{constructor(e=cl){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=wt(n,0,this.cursor)}else t=As(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",xt="CBOR encode error:",ir=[];ir[23]=1;ir[24]=2;ir[25]=3;ir[26]=5;ir[27]=9;function Le(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var M=[24,256,65536,4294967296,BigInt("18446744073709551616")];function oe(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<M[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function se(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<M[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ae(r,e,t){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<M[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(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<M[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function Ns(r,e,t,n){return new _(p.uint,oe(r,e+1,n),2)}function Ts(r,e,t,n){return new _(p.uint,se(r,e+1,n),3)}function Ds(r,e,t,n){return new _(p.uint,ae(r,e+1,n),5)}function Ls(r,e,t,n){return new _(p.uint,ce(r,e+1,n),9)}function pe(r,e){return H(r,0,e.value)}function H(r,e,t){if(t<M[0]){let n=Number(t);r.push([e|n])}else if(t<M[1]){let n=Number(t);r.push([e|24,n])}else if(t<M[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<M[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<M[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}pe.encodedSize=function(e){return H.encodedSize(e.value)};H.encodedSize=function(e){return e<M[0]?1:e<M[1]?2:e<M[2]?3:e<M[3]?5:9};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-oe(r,e+1,n),2)}function Ps(r,e,t,n){return new _(p.negint,-1-se(r,e+1,n),3)}function Us(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),5)}var bi=BigInt(-1),zs=BigInt(1);function Os(r,e,t,n){let i=ce(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new _(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new _(p.negint,bi-BigInt(i),9)}function Vr(r,e){let t=e.value,n=typeof t=="bigint"?t*bi-zs:t*-1-1;H(r,e.type.majorEncoded,n)}Vr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*bi-zs:t*-1-1;return n<M[0]?1:n<M[1]?2:n<M[2]?3:n<M[3]?5:9};Vr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function or(r,e,t,n){Le(r,e,t+n);let i=wt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Rs(r,e,t,n){return or(r,e,1,t)}function $s(r,e,t,n){return or(r,e,2,oe(r,e+1,n))}function Ms(r,e,t,n){return or(r,e,3,se(r,e+1,n))}function Vs(r,e,t,n){return or(r,e,5,ae(r,e+1,n))}function Hs(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return or(r,e,9,i)}function Hr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?$r(r.value):r.value),r.encodedBytes}function bt(r,e){let t=Hr(e);H(r,e.type.majorEncoded,t.length),r.push(t)}bt.encodedSize=function(e){let t=Hr(e);return H.encodedSize(t.length)+t.length};bt.compareTokens=function(e,t){return fl(Hr(e),Hr(t))};function fl(r,e){return r.length<e.length?-1:r.length>e.length?1:Is(r,e)}function sr(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,vs(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=wt(r,e+t,e+o)),s}function js(r,e,t,n){return sr(r,e,1,t,n)}function Gs(r,e,t,n){return sr(r,e,2,oe(r,e+1,n),n)}function Ws(r,e,t,n){return sr(r,e,3,se(r,e+1,n),n)}function qs(r,e,t,n){return sr(r,e,5,ae(r,e+1,n),n)}function Xs(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return sr(r,e,9,i,n)}var Ks=bt;function _t(r,e,t,n){return new _(p.array,n,t)}function Js(r,e,t,n){return _t(r,e,1,t)}function Ys(r,e,t,n){return _t(r,e,2,oe(r,e+1,n))}function Qs(r,e,t,n){return _t(r,e,3,se(r,e+1,n))}function Zs(r,e,t,n){return _t(r,e,5,ae(r,e+1,n))}function ea(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return _t(r,e,9,i)}function ta(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return _t(r,e,1,1/0)}function jr(r,e){H(r,p.array.majorEncoded,e.value)}jr.compareTokens=pe.compareTokens;jr.encodedSize=function(e){return H.encodedSize(e.value)};function kt(r,e,t,n){return new _(p.map,n,t)}function ra(r,e,t,n){return kt(r,e,1,t)}function na(r,e,t,n){return kt(r,e,2,oe(r,e+1,n))}function ia(r,e,t,n){return kt(r,e,3,se(r,e+1,n))}function oa(r,e,t,n){return kt(r,e,5,ae(r,e+1,n))}function sa(r,e,t,n){let i=ce(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return kt(r,e,9,i)}function aa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return kt(r,e,1,1/0)}function Gr(r,e){H(r,p.map.majorEncoded,e.value)}Gr.compareTokens=pe.compareTokens;Gr.encodedSize=function(e){return H.encodedSize(e.value)};function ca(r,e,t,n){return new _(p.tag,t,1)}function ua(r,e,t,n){return new _(p.tag,oe(r,e+1,n),2)}function fa(r,e,t,n){return new _(p.tag,se(r,e+1,n),3)}function la(r,e,t,n){return new _(p.tag,ae(r,e+1,n),5)}function ha(r,e,t,n){return new _(p.tag,ce(r,e+1,n),9)}function Wr(r,e){H(r,p.tag.majorEncoded,e.value)}Wr.compareTokens=pe.compareTokens;Wr.encodedSize=function(e){return H.encodedSize(e.value)};var yl=20,gl=21,wl=22,xl=23;function da(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 pa(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 _i(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 ma(r,e,t,n){return _i(ki(r,e+1),3,n)}function ya(r,e,t,n){return _i(Ei(r,e+1),5,n)}function ga(r,e,t,n){return _i(_a(r,e+1),9,n)}function qr(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|yl]);else if(n===!0)r.push([p.float.majorEncoded|gl]);else if(n===null)r.push([p.float.majorEncoded|wl]);else if(n===void 0)r.push([p.float.majorEncoded|xl]);else{let i,o=!1;(!t||t.float64!==!0)&&(xa(n),i=ki(be,1),n===i||Number.isNaN(n)?(be[0]=249,r.push(be.slice(0,3)),o=!0):(ba(n),i=Ei(be,1),n===i&&(be[0]=250,r.push(be.slice(0,5)),o=!0))),o||(bl(n),i=_a(be,1),be[0]=251,r.push(be.slice(0,9)))}}qr.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){xa(n);let i=ki(be,1);if(n===i||Number.isNaN(n))return 3;if(ba(n),i=Ei(be,1),n===i)return 5}return 9};var wa=new ArrayBuffer(9),me=new DataView(wa,1),be=new Uint8Array(wa,0);function xa(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 ki(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 ba(r){me.setFloat32(0,r,!1)}function Ei(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 bl(r){me.setFloat64(0,r,!1)}function _a(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)}qr.compareTokens=pe.compareTokens;function L(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Xr(r){return()=>{throw new Error(`${B} ${r}`)}}var E=[];for(let r=0;r<=23;r++)E[r]=L;E[24]=Ns;E[25]=Ts;E[26]=Ds;E[27]=Ls;E[28]=L;E[29]=L;E[30]=L;E[31]=L;for(let r=32;r<=55;r++)E[r]=L;E[56]=Fs;E[57]=Ps;E[58]=Us;E[59]=Os;E[60]=L;E[61]=L;E[62]=L;E[63]=L;for(let r=64;r<=87;r++)E[r]=Rs;E[88]=$s;E[89]=Ms;E[90]=Vs;E[91]=Hs;E[92]=L;E[93]=L;E[94]=L;E[95]=Xr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)E[r]=js;E[120]=Gs;E[121]=Ws;E[122]=qs;E[123]=Xs;E[124]=L;E[125]=L;E[126]=L;E[127]=Xr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)E[r]=Js;E[152]=Ys;E[153]=Qs;E[154]=Zs;E[155]=ea;E[156]=L;E[157]=L;E[158]=L;E[159]=ta;for(let r=160;r<=183;r++)E[r]=ra;E[184]=na;E[185]=ia;E[186]=oa;E[187]=sa;E[188]=L;E[189]=L;E[190]=L;E[191]=aa;for(let r=192;r<=215;r++)E[r]=ca;E[216]=ua;E[217]=fa;E[218]=la;E[219]=ha;E[220]=L;E[221]=L;E[222]=L;E[223]=L;for(let r=224;r<=243;r++)E[r]=Xr("simple values are not supported");E[244]=L;E[245]=L;E[246]=L;E[247]=da;E[248]=Xr("simple values are not supported");E[249]=ma;E[250]=ya;E[251]=ga;E[252]=L;E[253]=L;E[254]=L;E[255]=pa;var _e=[];for(let r=0;r<24;r++)_e[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)_e[31-r]=new _(p.negint,r,1);_e[64]=new _(p.bytes,new Uint8Array(0),1);_e[96]=new _(p.string,"",1);_e[128]=new _(p.array,0,1);_e[160]=new _(p.map,0,1);_e[244]=new _(p.false,!1,1);_e[245]=new _(p.true,!0,1);_e[246]=new _(p.null,null,1);function kl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Vr,r[p.bytes.major]=bt,r[p.string.major]=Ks,r[p.array.major]=jr,r[p.map.major]=Gr,r[p.tag.major]=Wr,r[p.float.major]=qr,r}var Vy=kl(),Hy=new Mr,Kr=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${xt} object contains circular references`);return new r(t,e)}},He={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},je={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?He.true:He.false},null(r,e,t,n){return He.null},undefined(r,e,t,n){return He.undefined},ArrayBuffer(r,e,t,n){return new _(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?[He.emptyArray,new _(p.break)]:He.emptyArray;n=Kr.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Si(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?[He.emptyMap,new _(p.break)]:He.emptyMap;n=Kr.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Si(h,t,n),Si(i?r.get(h):r[h],t,n)];return El(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(p.map,s),a]}};je.Map=je.Object;je.Buffer=je.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))je[`${r}Array`]=je.DataView;function Si(r,e={},t){let n=ks(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||je[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=je[n];if(!o)throw new Error(`${xt} unsupported type: ${n}`);return o(r,n,e,t)}function El(r,e){e.mapSorter&&r.sort(e.mapSorter)}var Sl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Jr=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=_e[e];if(t===void 0){let n=E[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},ar=Symbol.for("DONE"),Yr=Symbol.for("BREAK");function Bl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Et(e,t);if(o===Yr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===ar)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function vl(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===Yr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let u=Et(e,t);if(u===ar)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 Et(r,e){if(r.done())return ar;let t=r.next();if(t.type===p.break)return Yr;if(t.type.terminal)return t.value;if(t.type===p.array)return Bl(t,r,e);if(t.type===p.map)return vl(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(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Bi(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 Jr(r,e),n=Et(t,e);if(n===ar)throw new Error(`${B} did not find any content to decode`);if(n===Yr)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function cr(r,e){let[t,n]=Bi(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Ea=42;function Il(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function Nl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=C.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Ea),new _(p.bytes,t)]}function Tl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Dl(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 ka={float64:!0,typeEncoders:{Object:Nl,undefined:Tl,number:Dl}},Zy={...ka,typeEncoders:{...ka.typeEncoders}};function Ll(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return C.decode(r.subarray(1))}var Qr={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Qr.tags[Ea]=Ll;var eg={...Qr,tags:Qr.tags.slice()};var Sa=113;var Ba=r=>cr(Il(r),Qr);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(`${xt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=$r(JSON.stringify(t.value));e.push(n.length>32?Rr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${xt} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var St=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,xi(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 vi(r,e){return e=Object.assign({tokenizer:new St(r,e)},e),cr(r,e)}function Ul(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ai=class extends St{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=Xt.decode(`m${o.value}`);return new _(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},Ci={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Ci.tags[42]=C.parse;var Ca=297;var Ia=r=>{let e=Ul(r),t=Object.assign(Ci,{tokenizer:new Ai(e,Ci)});return vi(e,t)};var wg=new TextDecoder;var xg=new TextEncoder;var tc=O(K(),1);var Ta=O(K(),1);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=C.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:u,toResolve:o}};a=a[h]}else throw(0,Ta.default)(new Error(`No property named ${h} found in node ${t}`),"ERR_NO_PROP")}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var zl=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=zl;var Ol=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Ia(u);return Bt(h,u,r,e,t,n,o)},La=Ol;var Fa=O(K(),1);function Rl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var tt=Rl;var ur=O(K(),1),$l=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw(0,ur.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,ur.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,ur.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,ur.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},vt=$l;var Ml=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Vl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Fa.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let u=Br(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Ml(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},Pa=Vl;var Hl=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)},Ua=Hl;var za=O(K(),1);var jl=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Gl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,za.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:jl(u),depth:o,size:BigInt(u.length),node:u}}},Oa=Gl;var mr=O(K(),1);var fr=O(K(),1);var Wl=async function(r){return(await Ze.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 ie({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Ra=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Xl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},$a=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw(0,fr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let l;try{l=v.unmarshal(r.Data)}catch(c){throw(0,fr.default)(c,"ERR_NOT_UNIXFS")}if(l.type!=="hamt-sharded-directory")throw(0,fr.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(l.fanout==null)throw(0,fr.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let y=yt({hashFn:Wl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}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=Ra(s.pos,o),u=Xl(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=Ra(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let y=l.Name.substring(0,o),c=l.Name.substring(o);return!(y!==a||c!==""&&c!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=R(f),$a(r,e,t,n,i)},Ma=$a;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 Zr=Kl;function Jl(r){return r[Symbol.asyncIterator]!=null}function Yl(r,e){if(Jl(r))return async function*(){for await(let a of r)await e(a)&&(yield a)}();let t=Zr(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){await o&&(yield n);for await(let a of t)await e(a)&&(yield a)}();let s=e;return function*(){o===!0&&(yield n);for(let a of t)s(a)&&(yield a)}()}var Va=Yl;function Ql(r){return r[Symbol.asyncIterator]!=null}function Zl(r,e){if(Ql(r))return async function*(){for await(let a of r)yield e(a)}();let t=Zr(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){yield await o;for await(let a of t)yield e(a)}();let s=e;return function*(){yield o;for(let a of t)yield s(a)}()}var At=Zl;function Fe(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var en=globalThis.CustomEvent??Event;async function*rt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=Fe(),a=Fe(),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=Fe(),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 en("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new en("task-complete"))})}u=!0,i.dispatchEvent(new en("task-complete"))}catch(d){h=d,i.dispatchEvent(new en("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*c(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=Fe(),await a.promise),h!=null)throw h;if(n?yield*y():yield*c(),u&&o.length===0)break}}var tn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Ct=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new tn(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 tn(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 Ii=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function It(r={}){return eh(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 eh(r,e){e=e??{};let t=e.onEnd,n=new Ct,i,o,s,a=Fe(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Fe()})}},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})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Ct,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((k,A)=>{b=()=>{A(new Ii)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}function th(r){return r[Symbol.asyncIterator]!=null}function rh(...r){let e=[];for(let t of r)th(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=It({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var Ha=rh;function Ae(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ni(r)){let n=r;r=()=>n.source}else if(Ga(r)||ja(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ni(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++)Ni(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,Ga=r=>r?.[Symbol.iterator]!=null,Ni=r=>r==null?!1:r.sink!=null&&r.source!=null,ih=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=It({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(Ga(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ha(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 U("unixfs:exporter:walk:directory",{cid:r})),yield*Ae(l,y=>At(y,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return(await i(c.Hash,d,m,[],o+1,s,u)).entry}),y=>rt(y,{ordered:!0,concurrency:u.blockReadConcurrency}),y=>Va(y,c=>c!=null))}return a},Wa=oh;var nt=O(K(),1);var Di=O(Xa(),1);var hr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Li=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ka=r=>globalThis.DOMException===void 0?new Li(r):new DOMException(r),Ja=r=>{let e=r.reason===void 0?Ka("This operation was aborted."):r.reason;return e instanceof Error?e:Ka(e)};function Fi(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,u=new Promise((h,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:y}=e;y.aborted&&f(Ja(y)),y.addEventListener("abort",()=>{f(Ja(y))})}if(t===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new hr;s=o.setTimeout.call(void 0,()=>{if(n){try{h(n())}catch(y){f(y)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?h():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${t} milliseconds`,f(l))},t),(async()=>{try{h(await r)}catch(y){f(y)}})()}).finally(()=>{u.clear()});return u.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},u}function Pi(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 dr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Pi(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var pr=class extends Di.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:dr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#_(){this.#o--,this.#h(),this.emit("next")}#k(){this.#w(),this.#g(),this.#f=void 0}get#E(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#k()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#E;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#S(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Fi(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#S(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof hr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#_()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function Ya(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=tt(e,n,i,o);t.push(h);return}if(e.Data==null)throw(0,nt.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(e.Data)}catch(h){throw(0,nt.default)(h,"ERR_NOT_UNIXFS")}if(a.data!=null){let h=a.data,f=tt(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw(0,nt.default)(new Error("Inconsistent block sizes and dag links"),"ERR_NOT_UNIXFS");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&u.push({link:f,blockStart:n}),n=y,n>o)break}await Ae(u,h=>At(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>rt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let c;switch(f.Hash.code){case V:c=R(l);break;case ee:c=l;break;default:t.end((0,nt.default)(new Error(`Unsupported codec: ${f.Hash.code}`),"ERR_NOT_UNIXFS"));return}let d=new pr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new U("unixfs:exporter:walk:file",{cid:f.Hash})),await Ya(r,c,t,y,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}=vt(h,u.offset,u.length);if(l===0n)return;let y=0n,c=l-f,d=It();u.onProgress?.(new U("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(y+=BigInt(m.byteLength),y>c)throw d.end(),(0,nt.default)(new Error("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect"),"ERR_OVER_READ");y===c&&d.end(),u.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:c,fileSize:h})),yield m}if(y<c)throw(0,nt.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},Ui=ch;var nn=O(K(),1);var uh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Qa(e,n,i,o,s,u)}return a};async function*Qa(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw(0,nn.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(r.Data)}catch(f){throw(0,nn.default)(f,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,nn.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let u=(a.fanout-1n).toString(16).length,h=Ae(s,f=>At(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(u):null;if(y!=null&&y!==""){let c=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:c.entry==null?[]:[c.entry]}}else{let c=await i.get(l.Hash,o);return r=R(c),o.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Qa(r,e,t,n,i,o)}}}),f=>rt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Za=uh;var fh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,lh={raw:Ui,file:Ui,directory:Wa,"hamt-sharded-directory":Za,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=R(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw(0,mr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{f=v.unmarshal(h.Data)}catch(c){throw(0,mr.default)(c,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await Ma(h,n[0],s):c=fh(h,n[0]),c==null)throw(0,mr.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let y=lh[f.type](r,h,f,t,i,o,s);if(y==null)throw(0,mr.default)(new Error("could not find content exporter"),"ERR_NOT_FOUND");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},ec=hh;var dh={[V]:ec,[ee]:Oa,[Sa]:Da,[Ca]:La,[ei.code]:Pa,[Fo]:Ua},rc=async(r,e,t,n,i,o,s)=>{let a=dh[r.code];if(a==null)throw(0,tc.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,e,t,n,rc,i,o,s)},nc=rc;var ph=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),mh=r=>{if(r instanceof Uint8Array)return{cid:C.decode(r),toResolve:[]};let e=C.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=ph(r);return{cid:C.parse(t[0]),toResolve:t.slice(1)}}throw(0,on.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*zi(r,e,t={}){let{cid:n,toResolve:i}=mh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await nc(n,o,s,i,a,e,t);if(u.entry==null&&u.next==null)throw(0,on.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");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 Q(r,e,t={}){let n=await Ve(zi(r,e,t));if(n==null)throw(0,on.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*sn(r,e,t={}){let n=await Q(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var hc=O(lc(),1),X=hc.default;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")}},Z=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},Ge=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},it=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Pe=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Dt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},un=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ie=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},j=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var fe=O(gc(),1);fe.default.formatters.b=r=>r==null?"undefined":he.baseEncode(r);fe.default.formatters.t=r=>r==null?"undefined":Oe.baseEncode(r);fe.default.formatters.m=r=>r==null?"undefined":Xt.baseEncode(r);fe.default.formatters.p=r=>r==null?"undefined":r.toString();fe.default.formatters.c=r=>r==null?"undefined":r.toString();fe.default.formatters.k=r=>r==null?"undefined":r.toString();fe.default.formatters.a=r=>r==null?"undefined":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 z(r){let e=Lh(`${r}:trace`);return fe.default.enabled(`${r}:trace`)&&fe.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,fe.default)(`${r}:trace`)),Object.assign((0,fe.default)(r),{error:(0,fe.default)(`${r}:error`),trace:e})}var Vi=O(Fr(),1);function dn(r){function e(t){return t instanceof hn?t:new hn(t,r)}return e}var hn=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?qe([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Ri(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],Ri=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=zh(e,t);return(r&n)>>>e}function zh(r,e){return Fh[r]&Ph[Math.min(e+r-1,7)]}var yr=BigInt(Ze.code),st=8;async function Ut(r){return(await Ze.encode(r)).subarray(0,8).reverse()}var bc=O(Fr(),1);var Ee=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await ne.digest(r),i=C.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var $i=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},pn=class extends $i{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Ut,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=xc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of wc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*wc(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 ie){let x;for await(let g of wc(d,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Oh(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:yr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(P(h)),l=await Ee(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:y}}function Oh(r){return typeof r.flush=="function"}function xc(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 ie){let l=xc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?mn:yn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?mn:yn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,c=l.size;i.push({Name:y,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:yr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var mn=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),yn=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Mi=z("helia:unixfs:commands:utils:hamt-utils"),gn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),_c=async(r,e,t)=>{let n=new pn({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 Ve(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},wn=async(r,e,t)=>{let n=v.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,st));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:yr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(P(s));if(o=await Ee(y,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");Mi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},xn=async(r,e,t,n)=>{let o=dn(Ut)(de(e)),s=[];for(;;){let a=await t.get(r,n),u=R(a),h=new bc.default,f=await o.take(st),l=gn(f);s.push({prefix:l,children:h,node:u});let y;for(let d of u.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Mi("no link found with prefix %s for %s",l,e);break}let c=y.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=y.Hash,Mi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function bn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=v.unmarshal(r.Data),o;if(i.type==="directory")o=Rh(r);else if(i.type==="hamt-sharded-directory")o=await kc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Rh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?yn.bytes.byteLength:mn.bytes.byteLength;return e}async function kc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!v.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===V){let u=await n.get(s.Hash,i),h=R(u);e+=await kc(h,e,t,n,i)}}return e}var Ne=z("helia:unixfs:components:utils:add-link");async function zt(r,e,t,n){if(r.node.Data==null)throw new j("Invalid parent passed to addLink");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Ne("adding link to sharded directory"),Vh(r,e,t,n);Ne(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Mh(r,e,t,n);if(await bn(o.node,t,n.shardSplitThresholdBytes,n)){Ne("converting directory to sharded directory");let s=await $h(o,t);o.cid=s.cid,o.node=R(await t.get(s.cid,n))}return o}var $h=async(r,e)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToShardedDirectory");let t=v.unmarshal(r.node.Data),n=await _c(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 Ne(`converted directory to sharded directory ${n.cid}`),n},Mh=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new it;return!l});if(i.push(e),r.node.Data==null)throw new Z("Parent node with no data passed to addToDirectory");let o=v.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=P({Data:s,Links:i});let a=T(r.node),u=await ne.digest(a),h=C.create(r.cid.version,V,u);return await t.put(h,a),{node:r.node,cid:h}},Vh=async(r,e,t,n)=>{let{path:i,hash:o}=await xn(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);Ne("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(Ne("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new it;Ne("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was subshard?!");{Ne("prefix %s already exists, creating new subshard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),y=s.node.Links.splice(l,1)[0],c=(y.Name??"").substring(2),m=dn(Ut)(de(c));for(let x=0;x<i.length;x++)await m.take(st);for(;;){let x=await m.take(st),g=gn(x);y.Name=`${g}${c}`;let w=await o.take(st),b=gn(w);if(g===b){let A=new Vi.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let k=new Vi.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Ne("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),Ne("adding %s to existing sub-shard",h);return wn(i,t,n)};async function We(r,e,t={}){let n=await Q(r,e,t);if(n.type!=="directory")throw new Ie(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ot(r,e,t,n){let i=await Q(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:Hh(i.node),Hash:r}}function Hh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var jh=z("helia:unixfs:components:utils:resolve");async function Te(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await Qo(zi(i,t,n));if(o.length===0)throw new Pe("Could not find path in directory");return jh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Rt(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([We(o.cid,t,n),Ot(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*Ec(r,e,t={}){let n=Gh(Wh,t),i=await Te(r,n.path,e,n),o=await Q(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new un;if(o.content==null)throw new Dt;yield*o.content(n)}var qh=X.bind({ignoreUndefined:!0}),Xh=z("helia:unixfs:chmod"),Kh={recursive:!1,shardSplitThresholdBytes:262144};async function Sc(r,e,t,n={}){let i=qh(Kh,n),o=await Te(r,i.path,t,n);if(Xh("chmod %c %d",o.cid,e),i.recursive){let y=await Ae(async function*(){for await(let c of sn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new v({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Me(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Ee(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>Ve(c));if(y==null)throw new Ge(`Could not chmod ${o.cid.toString()}`);return Rt(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===ee)a=new v({type:"file",data:s});else{let y=R(s);if(y.Data==null)throw new Z(`${o.cid.toString()} had no data`);u=y.Links,a=v.unmarshal(y.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await ne.digest(h),l=C.create(o.cid.version,V,f);return await t.put(l,h),Rt(l,o,t,i)}var Jh=X.bind({ignoreUndefined:!0}),Yh=z("helia:unixfs:cp"),Qh={force:!1,shardSplitThresholdBytes:262144};async function Bc(r,e,t,n,i={}){let o=Jh(Qh,i);if(t.includes("/"))throw new j("Name must not have slashes");let[s,a]=await Promise.all([We(e,n,o),Ot(r,t,n,o)]);return Yh('Adding %c as "%s" to %c',r,t,e),(await zt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Zh=X.bind({ignoreUndefined:!0}),ed={};async function*vc(r,e,t={}){let n=Zh(ed,t),i=await Te(r,n.path,e,n),o=await Q(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Dt;if(o.type!=="directory")throw new Ie;yield*o.content({offset:t.offset,length:t.length})}var td=X.bind({ignoreUndefined:!0}),Ac=z("helia:unixfs:mkdir"),rd={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function Cc(r,e,t,n={}){let i=td(rd,n);if(e.includes("/"))throw new j("Path must not have slashes");if((await Q(r,t,n)).type!=="directory")throw new Ie(`${r.toString()} was not a UnixFS directory`);Ac("creating %s",e);let a={Data:new v({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await ne.digest(u),f=C.create(i.cidVersion,V,h);await t.put(f,u);let[l,y]=await Promise.all([We(r,t,i),Ot(f,e,t,i)]);return Ac("adding empty dir called %s to %c",e,r),(await zt(l,y,t,{...i,allowOverwriting:i.force})).cid}var kn=z("helia:unixfs:utils:remove-link");async function Ic(r,e,t,n){if(r.node.Data==null)throw new Z("Parent node had no data");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory"){kn(`removing ${e} from sharded directory`);let o=await id(r,e,t,n);return await bn(o.node,t,n.shardSplitThresholdBytes,n)?o:(kn("converting shard to flat directory %c",r.cid),od(o,t,n))}return kn(`removing link ${e} regular directory`),nd(r,e,t,n)}var nd=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await Ee(i,t,{...n,cidVersion:r.cid.version});return kn(`Updated regular directory ${o}`),{node:r.node,cid:o}},id=async(r,e,t,n)=>{let{path:i}=await xn(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return wn(i,t,n)},od=async(r,e,t)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Q(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await Ee(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var sd=X.bind({ignoreUndefined:!0}),ad=z("helia:unixfs:rm"),cd={shardSplitThresholdBytes:262144};async function Nc(r,e,t,n={}){let i=sd(cd,n);if(e.includes("/"))throw new j("Name must not have slashes");let o=await We(r,t,i);return ad("Removing %s from %c",e,r),(await Ic(o,e,t,{...i,cidVersion:r.version})).cid}var ud=X.bind({ignoreUndefined:!0}),fd=z("helia:unixfs:stat"),ld={};async function Tc(r,e,t={}){let n=ud(ld,t),i=await Te(r,t.path,e,n);fd("stat %c",i.cid);let o=await Q(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new Ce;let s=0n,a=0n,u=0n,h=0n,f=0,l,y,c=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),u=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),u=0n,h=a,f=1,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let m=await Dc(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((x,g)=>x+(g.Tsize??0),0)),u=BigInt(m.localFileSize),h=BigInt(m.localDagSize),f=m.blocks,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:y,fileSize:s,dagSize:a,localFileSize:u,localDagSize:h,blocks:f,type:c,unixfs:d}}async function Dc(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===ee)n.localFileSize+=i.byteLength;else if(r.code===V){let o=R(i);if(o.Links.length>0)for(let s of o.Links){let a=await Dc(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new Z(`PBNode ${r.toString()} had no data`);let s=v.unmarshal(o.Data);if(s.data==null)throw new Z(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new Ge(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var hd=X.bind({ignoreUndefined:!0}),dd=z("helia:unixfs:touch"),pd={recursive:!1,shardSplitThresholdBytes:262144};async function Lc(r,e,t={}){let n=hd(pd,t),i=await Te(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(dd("touch %c %o",i.cid,o),n.recursive){let y=await Ae(async function*(){for await(let c of sn(i.cid,e)){let d,m;if(c.type==="raw")d=new v({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Me(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Ee(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>Ve(c));if(y==null)throw new Ge(`Could not chmod ${i.cid.toString()}`);return Rt(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===ee)a=new v({data:s});else{let y=R(s);if(u=y.Links,y.Data==null)throw new Z(`${i.cid.toString()} had no data`);a=v.unmarshal(y.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await ne.digest(h),l=C.create(i.cid.version,V,f);return await e.put(l,h),Rt(l,i,e,n)}var Hi=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*gs(e,this.components.blockstore,t)}async addBytes(e,t={}){return ws(e,this.components.blockstore,t)}async addByteStream(e,t={}){return xs(e,this.components.blockstore,t)}async addFile(e,t={}){return bs(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return _s(e,this.components.blockstore,t)}async*cat(e,t={}){yield*Ec(e,this.components.blockstore,t)}async chmod(e,t,n={}){return Sc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return Bc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*vc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return Cc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return Nc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Tc(e,this.components.blockstore,t)}async touch(e,t={}){return Lc(e,this.components.blockstore,t)}};function Fc(r){return new Hi(r)}function Pc(r,e="utf8"){let t=Cr[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Ue="/",Uc=new TextEncoder().encode(Ue),En=Uc[0],gr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=de(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==En)throw new Error("Invalid key")}toString(e="utf8"){return Pc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Ue))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Uc),this._buf[0]!==En){let e=new Uint8Array(this._buf.byteLength+1);e.fill(En,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===En;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Ue).slice(1)}type(){return md(this.baseNamespace())}name(){return yd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Ue)||(e+=Ue),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Ue):new r(e.slice(0,-1).join(Ue))}child(e){return this.toString()===Ue?e:e.toString()===Ue?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...gd(e.map(t=>t.namespaces()))])}};function md(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function yd(r){let e=r.split(":");return e[e.length-1]}function gd(r){return[].concat(...r)}function Sn(r){return r.split("/").pop()??""}var wd=z("helia:mfs"),ji=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new gr(t.key??"/locals/filesroot"),this.unixfs=Fc(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=C.decode(e)}catch(e){if(e.code!=="ERR_NOT_FOUND")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=Sn(t),a=t.substring(0,t.length-`/${s}`.length),u=[{cid:i,name:""}];a!==""&&(u=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),u.push({cid:e,name:s}),this.root=await this.#n(u,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=Sn(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:Sn(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new j("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Pe;return this.unixfs.stat(o.cid,{...t})}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Pe;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new j("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(wd.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new v({type:"directory"})})}else throw new Pe(`${t} does not exist`)}}let u=o[o.length-1];if(n.finalSegmentMustBeDirectory&&u.unixfs?.isDirectory()!==!0)throw new Ie(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new j("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Pe}async#s(e,t={}){if(await this.#c(e,t))throw new it}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function xd(r,e={}){return new ji(r,e)}return Vc(bd);})();
3
3
  return HeliaMfs}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helia/mfs",
3
- "version": "3.0.3",
3
+ "version": "3.0.4",
4
4
  "description": "A mutable filesystem powered by Helia",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/ipfs/helia/tree/main/packages/mfs#readme",
@@ -139,7 +139,7 @@
139
139
  "release": "aegir release"
140
140
  },
141
141
  "dependencies": {
142
- "@helia/unixfs": "^3.0.3",
142
+ "@helia/unixfs": "^3.0.4",
143
143
  "@libp2p/interfaces": "^3.3.2",
144
144
  "@libp2p/logger": "^4.0.7",
145
145
  "interface-blockstore": "^5.2.10",
@@ -161,5 +161,6 @@
161
161
  "it-last": "^3.0.4",
162
162
  "it-to-buffer": "^4.0.5",
163
163
  "uint8arrays": "^5.0.2"
164
- }
164
+ },
165
+ "sideEffects": false
165
166
  }