@helia/mfs 3.0.7 → 3.0.8

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 zc=Object.create;var _r=Object.defineProperty;var Oc=Object.getOwnPropertyDescriptor;var Rc=Object.getOwnPropertyNames;var $c=Object.getPrototypeOf,Mc=Object.prototype.hasOwnProperty;var Ee=(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=Ee((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=Ee((rr,Dr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(u){if(!Array.isArray(u)&&!ArrayBuffer.isView(u))return!1;for(var d=0;d<u.length;d++)if(!Number.isInteger(u[d])||u[d]<0||u[d]>255)return!1;return!0}function i(u,d){return(u&65535)*d+(((u>>>16)*d&65535)<<16)}function o(u,d){return u<<d|u>>>32-d}function s(u){return u^=u>>>16,u=i(u,2246822507),u^=u>>>13,u=i(u,3266489909),u^=u>>>16,u}function a(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function c(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=u[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]*d[3]+u[1]*d[2]+u[2]*d[1]+u[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(u,d){return d%=64,d===32?[u[1],u[0]]:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d|u[0]>>>32-d]:(d-=32,[u[1]<<d|u[0]>>>32-d,u[0]<<d|u[1]>>>32-d])}function f(u,d){return d%=64,d===0?u:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d]:[u[1]<<d-32,0]}function l(u,d){return[u[0]^d[0],u[1]^d[1]]}function y(u){return u=l(u,[0,u[0]>>>1]),u=c(u,[4283543511,3981806797]),u=l(u,[0,u[0]>>>1]),u=c(u,[3301882366,444984403]),u=l(u,[0,u[0]>>>1]),u}t.x86.hash32=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%4,x=u.length-m,g=d,w=0,b=3432918353,k=461845907,A=0;A<x;A=A+4)w=u[A]|u[A+1]<<8|u[A+2]<<16|u[A+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=u[A+2]<<16;case 2:w^=u[A+1]<<8;case 1:w^=u[A],w=i(w,b),w=o(w,15),w=i(w,k),g^=w}return g^=u.length,g=s(g),g>>>0},t.x86.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=d,w=d,b=d,k=d,A=0,I=0,E=0,D=0,ye=597399067,wr=2869860233,xr=951274213,br=2716044179,N=0;N<x;N=N+16)A=u[N]|u[N+1]<<8|u[N+2]<<16|u[N+3]<<24,I=u[N+4]|u[N+5]<<8|u[N+6]<<16|u[N+7]<<24,E=u[N+8]|u[N+9]<<8|u[N+10]<<16|u[N+11]<<24,D=u[N+12]|u[N+13]<<8|u[N+14]<<16|u[N+15]<<24,A=i(A,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,E=i(E,xr),E=o(E,17),E=i(E,br),b^=E,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,E=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,br),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=u[N+11]<<24;case 11:E^=u[N+10]<<16;case 10:E^=u[N+9]<<8;case 9:E^=u[N+8],E=i(E,xr),E=o(E,17),E=i(E,br),b^=E;case 8:I^=u[N+7]<<24;case 7:I^=u[N+6]<<16;case 6:I^=u[N+5]<<8;case 5:I^=u[N+4],I=i(I,wr),I=o(I,16),I=i(I,xr),w^=I;case 4:A^=u[N+3]<<24;case 3:A^=u[N+2]<<16;case 2:A^=u[N+1]<<8;case 1:A^=u[N],A=i(A,ye),A=o(A,15),A=i(A,wr),g^=A}return g^=u.length,w^=u.length,b^=u.length,k^=u.length,g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,g=s(g),w=s(w),b=s(b),k=s(k),g+=w,g+=b,g+=k,w+=g,b+=g,k+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=[0,d],w=[0,d],b=[0,0],k=[0,0],A=[2277735313,289559509],I=[1291169091,658871167],E=0;E<x;E=E+16)b=[u[E+4]|u[E+5]<<8|u[E+6]<<16|u[E+7]<<24,u[E]|u[E+1]<<8|u[E+2]<<16|u[E+3]<<24],k=[u[E+12]|u[E+13]<<8|u[E+14]<<16|u[E+15]<<24,u[E+8]|u[E+9]<<8|u[E+10]<<16|u[E+11]<<24],b=c(b,A),b=h(b,31),b=c(b,I),g=l(g,b),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),k=c(k,I),k=h(k,33),k=c(k,A),w=l(w,k),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,u[E+14]],48));case 14:k=l(k,f([0,u[E+13]],40));case 13:k=l(k,f([0,u[E+12]],32));case 12:k=l(k,f([0,u[E+11]],24));case 11:k=l(k,f([0,u[E+10]],16));case 10:k=l(k,f([0,u[E+9]],8));case 9:k=l(k,[0,u[E+8]]),k=c(k,I),k=h(k,33),k=c(k,A),w=l(w,k);case 8:b=l(b,f([0,u[E+7]],56));case 7:b=l(b,f([0,u[E+6]],48));case 6:b=l(b,f([0,u[E+5]],40));case 5:b=l(b,f([0,u[E+4]],32));case 4:b=l(b,f([0,u[E+3]],24));case 3:b=l(b,f([0,u[E+2]],16));case 2:b=l(b,f([0,u[E+1]],8));case 1:b=l(b,[0,u[E]]),b=c(b,A),b=h(b,31),b=c(b,I),g=l(g,b)}return g=l(g,[0,u.length]),w=l(w,[0,u.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof 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=Ee((r0,es)=>{es.exports=Zo()});var Fr=Ee((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),c=~(4294967295<<o+1),h=rs(i&c);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort($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 c=Math.min(n,t),h=~(255<<c),f=o&h;i|=f<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(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=Ee((hw,Di)=>{"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 c=this._events[a],h=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var y=c.length,u;for(l=0;l<y;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),h){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,i);break;default:if(!f)for(u=1,f=new Array(h-1);u<h;u++)f[u-1]=arguments[u];c[l].fn.apply(c[l].context,f)}}return!0};q.prototype.on=function(e,t,n){return 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,c=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c: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 Di<"u"&&(Di.exports=q)});var oc=Ee((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=Ee((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,Ri(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 Ri(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=Ri(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=Ri(t,{_:n},e)}return t._}});var pc=Ee((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 Sh(r);if(t==="number"&&isFinite(r))return e.long?Bh(r):Eh(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Sh(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 Eh(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=Ee((cx,mc)=>{function vh(r){t.debug=t,t.default=t,t.coerce=c,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,u,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(I,E)=>{if(I==="%%")return"%";k++;let D=t.formatters[E];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:(u!==t.namespaces&&(u=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),u=y.length;for(l=0;l<u;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.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 c(f){return f instanceof Error?f.stack||f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}mc.exports=vh});var gc=Ee((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(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let r;return 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&&(r=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(r[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 xi=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 vn=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 Sr(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(Sr(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(Sr(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=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(Sr(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return 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,c=a+s.byteLength;if(i=c,e>=c)continue;let h=e>=a&&e<c,f=t>a&&t<=c;if(h&&f){if(e===a&&t===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!Sr(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=c;l+=f){f=0;for(let y=h;y>=0;y--){let u=this.get(l+y);if(n[y]!==u){f=Math.max(1,y-a[u]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=te(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=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 c=new at;c.append(i.sublist(e)),i=c,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:()=>$n});var Fn={};G(Fn,{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:()=>An,fromHex:()=>Jc,fromString:()=>Cn,isBinary:()=>Yc,toHex:()=>Kc,toString:()=>In});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 An(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 Cn(r){return new TextEncoder().encode(r)}function In(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,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,k=new Uint8Array(b);g!==w;){for(var A=d[g],I=0,E=b-1;(A!==0||I<x)&&E!==-1;E--,I++)A+=256*k[E]>>>0,k[E]=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=c.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]===c;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var A=0,I=w-1;(k!==0||A<g)&&I!==-1;I--,A++)k+=a*b[I]>>>0,b[I]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var E=w-g;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function u(d){var m=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:u}}var Zc=Qc,eu=Zc,Qi=eu;var Nn=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")}},Tn=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)}},Dn=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 Dn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Ln=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 Nn(e,t,n),this.decoder=new Tn(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 Ln(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,c=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|l,a+=t,a>=8&&(a-=8,s[h++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function ru(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function F({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return 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 Pn={};G(Pn,{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=Un,gu=128,to=127;function Un(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Un.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 Un.bytes=o-n,t}var wu=Math.pow(2,7),xu=Math.pow(2,14),bu=Math.pow(2,21),_u=Math.pow(2,28),ku=Math.pow(2,35),Su=Math.pow(2,42),Eu=Math.pow(2,49),Bu=Math.pow(2,56),vu=Math.pow(2,63),Au=function(r){return r<wu?1:r<xu?2:r<bu?3:r<_u?4:r<ku?5:r<Su?6:r<Eu?7:r<Bu?8:r<vu?9:10},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&&An(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,zn(r),e??he.encoder);default:return Du(t,zn(r),e??Oe.encoder)}}var oo=new WeakMap;function zn(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(),c=n(),h=t+c,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(e,t){let[n,i]=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 zn(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 On(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]=On(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]=On(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]=On(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,c;if([a,c,t]=ao(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=vr(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=vr(r,t),n.push(Uu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var 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"],Rn=new TextEncoder;function po(r,e){if(r===e)return 0;let t=r.Name?Rn.encode(r.Name):[],n=e.Name?Rn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function 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=Rn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(mo),e.Links.sort(po);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function $n(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){$n(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 pi=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 So(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 Eo(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 Mn=new Float32Array([-0]),$e=new Uint8Array(Mn.buffer);function Bo(r,e,t){Mn[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],Mn[0]}var Vn=new Float64Array([-0]),W=new Uint8Array(Vn.buffer);function Ao(r,e,t){Vn[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],Vn[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 Hn(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 jn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,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=Eo(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 Gn(r){return new jn(r instanceof Uint8Array?r:r.subarray())}function qt(r,e,t){let n=Gn(r);return e.decode(n,void 0,t)}var Wn={};G(Wn,{base10:()=>Yu});var Yu=ze({prefix:"9",name:"base10",alphabet:"0123456789"});var qn={};G(qn,{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 Xn={};G(Xn,{base2:()=>ef});var ef=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Kn={};G(Kn,{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 Jn={};G(Jn,{base36:()=>af,base36upper:()=>cf});var af=ze({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),cf=ze({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Yn={};G(Yn,{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 Qn={};G(Qn,{base8:()=>hf});var hf=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Zn={};G(Zn,{identity:()=>df});var df=ut({prefix:"\0",name:"identity",encode:r=>In(r),decode:r=>Cn(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 ri={};G(ri,{identity:()=>ti});var Uo=0,wf="identity",zo=le;function xf(r){return Xe(Uo,zo(r))}var ti={code:Uo,name:wf,encode:zo,digest:xf};var ii={};G(ii,{sha256:()=>ne,sha512:()=>bf});function Je({name:r,code:e,encode:t}){return new ni(r,e,t)}var ni=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 oi={...Zn,...Xn,...Qn,...Wn,...qn,...Fn,...Jn,...Pn,...Yn,...Kn},$p={...ii,...ri};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))),si=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:oi.base16,latin1:si,ascii:si,binary:si,...oi},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 ai(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 ci(){}var fi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},kf=ai();function Sf(r){return globalThis.Buffer!=null?te(r):kf(r)}var Jt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ye(ci,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 li((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(So,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(ui,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(ui,1,0):this.uint32(t)._push(Bf,t,e)}string(e){let t=No(e);return t!==0?this.uint32(t)._push(Hn,t,e):this._push(ui,1,0)}fork(){return this.states=new fi(this),this.head=this.tail=new Ye(ci,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(ci,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=Sf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function ui(r,e,t){e[t]=r&255}function Ef(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var li=class extends Ye{next;constructor(e,t){super(Ef,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?Hn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(de(r),t)}function hi(){return new Jt}function Yt(r,e){let t=hi();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 di(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=()=>di(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 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=Tr.codec().decode(i,i.uint32());break;default:i.skipType(c&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:c}=e;if(t!=null&&!Object.values(Ho).includes(t))throw(0,pi.default)(new Error("Type: "+t+" is not valid"),"ERR_INVALID_TYPE");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?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,pi.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{type;detail;constructor(e,t){super(e),this.type=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 c=await xe(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new U("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var mi=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},c=T(P(a)),h=await xe(c,e,t);return t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:c}},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,mi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,mi.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 c of r.chunker(r.chunkValidator(Lf(i.content)))){let h=BigInt(c.byteLength);a+=h,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield c}}(),originalPath:o};yield async()=>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 yi=O(K(),1);var Yo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,yi.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,yi.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[c,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:c,Tsize:Number(f.size),Hash:f.cid})}let n=new v({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(P(i)),s=await xe(o,e,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize==null?0:h.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var 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,gi=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=gi;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 c=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:c,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),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}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 u=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(u),Hash:t.cidVersion===0?er:tr})}else{let y=f.value;if(y.cid==null)continue;let u=l+f.key,d=y.size;o.push({Name:u,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:as,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function wi(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 wi(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 c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),e=await wi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof ve))&&(f=new Qe({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(c,f),o=f}}return e}async function*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 c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(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,c=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,y=t.reduceSingleLeafToSelf??!0,u=t.chunker??Mt(),d=t.chunkValidator??Yo(),m=t.dagBuilder??Jo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Zt(),bufferImporter:t.bufferImporter??Wo({cidVersion:a,rawLeaves:c,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 vn(Me([r],e,t));if(n==null)throw(0,xi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function ps(r,e,t={}){let n=await vn(Me([r],e,t));if(n==null)throw(0,xi.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"):Es(r,e,t):(r,e,t)=>t-e>64?sl.decode(r.subarray(e,t)):Es(r,e,t),$r=gt?r=>r.length>64?globalThis.Buffer.from(r):Ss(r):r=>r.length>64?al.encode(r):Ss(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 Ss(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 Es(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],c=r[e+2],h=r[e+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return bi(n)}var Bs=4096;function bi(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 _i=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,_i-BigInt(i),9)}function Vr(r,e){let t=e.value,n=typeof t=="bigint"?t*_i-zs:t*-1-1;H(r,e.type.majorEncoded,n)}Vr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*_i-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 ki(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 ki(Si(r,e+1),3,n)}function ya(r,e,t,n){return ki(Ei(r,e+1),5,n)}function ga(r,e,t,n){return ki(_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=Si(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=Si(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 Si(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 S=[];for(let r=0;r<=23;r++)S[r]=L;S[24]=Ns;S[25]=Ts;S[26]=Ds;S[27]=Ls;S[28]=L;S[29]=L;S[30]=L;S[31]=L;for(let r=32;r<=55;r++)S[r]=L;S[56]=Fs;S[57]=Ps;S[58]=Us;S[59]=Os;S[60]=L;S[61]=L;S[62]=L;S[63]=L;for(let r=64;r<=87;r++)S[r]=Rs;S[88]=$s;S[89]=Ms;S[90]=Vs;S[91]=Hs;S[92]=L;S[93]=L;S[94]=L;S[95]=Xr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=js;S[120]=Gs;S[121]=Ws;S[122]=qs;S[123]=Xs;S[124]=L;S[125]=L;S[126]=L;S[127]=Xr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=Js;S[152]=Ys;S[153]=Qs;S[154]=Zs;S[155]=ea;S[156]=L;S[157]=L;S[158]=L;S[159]=ta;for(let r=160;r<=183;r++)S[r]=ra;S[184]=na;S[185]=ia;S[186]=oa;S[187]=sa;S[188]=L;S[189]=L;S[190]=L;S[191]=aa;for(let r=192;r<=215;r++)S[r]=ca;S[216]=ua;S[217]=fa;S[218]=la;S[219]=ha;S[220]=L;S[221]=L;S[222]=L;S[223]=L;for(let r=224;r<=243;r++)S[r]=Xr("simple values are not supported");S[244]=L;S[245]=L;S[246]=L;S[247]=da;S[248]=Xr("simple values are not supported");S[249]=ma;S[250]=ya;S[251]=ga;S[252]=L;S[253]=L;S[254]=L;S[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++]=Bi(s,t,n);return t.addBreakTokens?[new _(p.array,r.length),i,new _(p.break)]:[new _(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[He.emptyMap,new _(p.break)]:He.emptyMap;n=Kr.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[Bi(h,t,n),Bi(i?r.get(h):r[h],t,n)];return Sl(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 Bi(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 Sl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var El={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=S[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},ar=Symbol.for("DONE"),Yr=Symbol.for("BREAK");function Bl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=St(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=St(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 c=St(e,t);if(c===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function St(r,e){if(r.done())return ar;let t=r.next();if(t.type===p.break)return 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=St(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function vi(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},El,e);let t=e.tokenizer||new Jr(r,e),n=St(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]=vi(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Sa=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,Sa),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[Sa]=Ll;var eg={...Qr,tags:Qr.tags.slice()};var Ea=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 Et=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new _(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new _(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new _(s>=0?p.uint:p.negint,s,this._pos-e):new _(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let c,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(l=(o&31)<<6|c&63,l>127&&(s=l));break;case 3:c=this.data[this._pos+1],h=this.data[this._pos+2],(c&192)===128&&(h&192)===128&&(l=(o&15)<<12|(c&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:c=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(c&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(c&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new _(p.string,bi(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 Ai(r,e){return e=Object.assign({tokenizer:new Et(r,e)},e),cr(r,e)}function Ul(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ci=class extends Et{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(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}},Ii={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Ii.tags[42]=C.parse;var Ca=297;var Ia=r=>{let e=Ul(r),t=Object.assign(Ii,{tokenizer:new Ci(e,Ii)});return Ai(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,c=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),c=`${c}/${h}`;let f=C.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw(0,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 c=await s.get(r,a),h=Ba(c);return Bt(h,c,r,e,t,n,o)},Da=zl;var Ol=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Ia(c);return Bt(h,c,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 c=Br(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Ml(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Pa=Vl;var Hl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Po(c);return Bt(h,c,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 c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:jl(c),depth:o,size:BigInt(c.length),node:c}}},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(u){throw(0,fr.default)(u,"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),c=Xl(s);c.length>n.hamtDepth&&(n.lastBucket=c[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),u=l.Name.substring(o);return!(y!==a||u!==""&&u!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=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){let t=0;if(Jl(r))return async function*(){for await(let c of r)await e(c,t++)&&(yield c)}();let n=Zr(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for await(let c of n)await e(c,t++)&&(yield c)}();let a=e;return function*(){s===!0&&(yield i);for(let c of n)a(c,t++)&&(yield c)}()}var Va=Yl;function Ql(r){return r[Symbol.asyncIterator]!=null}function Zl(r,e){let t=0;if(Ql(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=Zr(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield s;for(let c of n)yield a(c,t++)}()}var At=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(),c=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=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"))})}c=!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*u(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=Fe(),await a.promise),h!=null)throw h;if(n?yield*y():yield*u(),c&&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 Ni=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(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=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})),u=()=>(n=new Ct,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:u,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((k,A)=>{b=()=>{A(new Ni)},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(Ti(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&&Ti(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++)Ti(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,Ti=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(c={}){let h=c.offset??0,f=c.length??e.Links.length,l=e.Links.slice(h,f);c.onProgress?.(new U("unixfs:exporter:walk:directory",{cid:r})),yield*Ae(l,y=>At(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>rt(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Va(y,u=>u!=null))}return a},Wa=oh;var nt=O(K(),1);var Li=O(Xa(),1);var hr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Fi=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ka=r=>globalThis.DOMException===void 0?new Fi(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 Pi(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((h,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:y}=e;y.aborted&&f(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(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function Ui(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=Ui(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 Li.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#S(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#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.#S;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#E(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Pi(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#E(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof 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 c=[];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)&&c.push({link:f,blockStart:n}),n=y,n>o)break}await Ae(c,h=>At(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>rt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let u;switch(f.Hash.code){case V:u=R(l);break;case ee:u=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,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var ch=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=vt(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=It();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),Ya(s,e,d,0n,f,l,c).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>u)throw d.end(),(0,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===u&&d.end(),c.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:u,fileSize:h})),yield m}if(y<u)throw(0,nt.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},zi=ch;var nn=O(K(),1);var uh=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Qa(e,n,i,o,s,c)}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 c=(a.fanout-1n).toString(16).length,h=Ae(s,f=>At(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(c):null;if(y!=null&&y!==""){let u=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:u.entry==null?[]:[u.entry]}}else{let u=await i.get(l.Hash,o);return r=R(u),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:zi,file:zi,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 c=await s.get(r,a),h=R(c),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(u){throw(0,mr.default)(u,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Ma(h,n[0],s):u=fh(h,n[0]),u==null)throw(0,mr.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let d=n.shift(),m=`${t}/${d}`;l={cid:u,toResolve:n,name:d??"",path:m}}let y=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,[Ea]:Da,[Ca]:La,[ti.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*Oi(r,e,t={}){let{cid:n,toResolve:i}=mh(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await nc(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw(0,on.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Q(r,e,t={}){let n=await Ve(Oi(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 Hi=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 $i(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],$i=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 Se=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 Mi=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 Mi{_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 u=0;u<i.length;u++){let d=i.get(u);if(d==null)continue;let m=u.toString(16).toUpperCase().padStart(2,"0");if(d instanceof ie){let x;for await(let g of 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()),c=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:yr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(P(h)),l=await Se(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Oh(r){return typeof r.flush=="function"}function xc(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let h=n.get(c);if(h==null)continue;let f=c.toString(16).toUpperCase().padStart(2,"0");if(h instanceof ie){let l=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,u=l.size;i.push({Name:y,Tsize:Number(u),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType: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 Vi=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 c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:yr});c&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(P(s));if(o=await Se(y,e,t),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Vi("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},xn=async(r,e,t,n)=>{let o=dn(Ut)(de(e)),s=[];for(;;){let a=await t.get(r,n),c=R(a),h=new bc.default,f=await o.take(st),l=gn(f);s.push({prefix:l,children:h,node:c});let y;for(let d of c.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Vi("no link found with prefix %s for %s",l,e);break}let u=y.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=y.Hash,Vi("descend into sub-shard with prefix %s",u);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 c=await n.get(s.Hash,i),h=R(c);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),c=await ne.digest(a),h=C.create(r.cid.version,V,c);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,c=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],u=(y.Name??"").substring(2),m=dn(Ut)(de(u));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}${u}`;let w=await o.take(st),b=gn(w);if(g===b){let A=new Hi.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let k=new Hi.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(c,!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(Oi(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*Sc(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 Ec(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 u of sn(o.cid,t,n)){let d,m=[];if(u.type==="raw")d=new v({type:"file",data:u.node});else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Se(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async u=>Ve(u));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,c=[];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`);c=y.Links,a=v.unmarshal(y.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:c}),f=await ne.digest(h),l=C.create(o.cid.version,V,f);return await t.put(l,h),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:[]},c=T(a),h=await ne.digest(c),f=C.create(i.cidVersion,V,h);await t.put(f,c);let[l,y]=await Promise.all([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 Se(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),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return 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 c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=T(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await Se(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,c=0n,h=0n,f=0,l,y,u=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,h=a,f=1,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let m=await 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)),c=BigInt(m.localFileSize),h=BigInt(m.localDagSize),f=m.blocks,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:y,fileSize:s,dagSize:a,localFileSize:c,localDagSize:h,blocks:f,type:u,unixfs:d}}async function 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 u of sn(i.cid,e)){let d,m;if(u.type==="raw")d=new v({data:u.node}),m=[];else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await Se(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new Z(`${b} had no data`);let k=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async u=>Ve(u));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,c=[];if(i.cid.code===ee)a=new v({data:s});else{let y=R(s);if(c=y.Links,y.Data==null)throw new Z(`${i.cid.toString()} had no data`);a=v.unmarshal(y.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:c}),f=await ne.digest(h),l=C.create(i.cid.version,V,f);return await e.put(l,h),Rt(l,i,e,n)}var Sn=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*Sc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return Ec(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 Sn(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 Bn(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=Bn(t),a=t.substring(0,t.length-`/${s}`.length),c=[{cid:i,name:""}];a!==""&&(c=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),c.push({cid:e,name:s}),this.root=await this.#n(c,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=Bn(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:Bn(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 c=o[o.length-1];if(n.finalSegmentMustBeDirectory&&c.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);})();
2
+ "use strict";var HeliaMfs=(()=>{var Bc=Object.create;var wr=Object.defineProperty;var vc=Object.getOwnPropertyDescriptor;var Ac=Object.getOwnPropertyNames;var Ic=Object.getPrototypeOf,Cc=Object.prototype.hasOwnProperty;var ot=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)wr(r,t,{get:e[t],enumerable:!0})},Vi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ac(e))!Cc.call(r,i)&&i!==t&&wr(r,i,{get:()=>e[i],enumerable:!(n=vc(e,i))||n.enumerable});return r};var st=(r,e,t)=>(t=r!=null?Bc(Ic(r)):{},Vi(e||!r||!r.__esModule?wr(t,"default",{value:r,enumerable:!0}):t,r)),Nc=r=>Vi(wr({},"__esModule",{value:!0}),r);var Xo=ot((rr,Cr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(u){if(!Array.isArray(u)&&!ArrayBuffer.isView(u))return!1;for(var d=0;d<u.length;d++)if(!Number.isInteger(u[d])||u[d]<0||u[d]>255)return!1;return!0}function i(u,d){return(u&65535)*d+(((u>>>16)*d&65535)<<16)}function o(u,d){return u<<d|u>>>32-d}function s(u){return u^=u>>>16,u=i(u,2246822507),u^=u>>>13,u=i(u,3266489909),u^=u>>>16,u}function a(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function c(u,d){u=[u[0]>>>16,u[0]&65535,u[1]>>>16,u[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=u[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=u[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=u[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=u[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=u[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=u[0]*d[3]+u[1]*d[2]+u[2]*d[1]+u[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(u,d){return d%=64,d===32?[u[1],u[0]]:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d|u[0]>>>32-d]:(d-=32,[u[1]<<d|u[0]>>>32-d,u[0]<<d|u[1]>>>32-d])}function f(u,d){return d%=64,d===0?u:d<32?[u[0]<<d|u[1]>>>32-d,u[1]<<d]:[u[1]<<d-32,0]}function l(u,d){return[u[0]^d[0],u[1]^d[1]]}function y(u){return u=l(u,[0,u[0]>>>1]),u=c(u,[4283543511,3981806797]),u=l(u,[0,u[0]>>>1]),u=c(u,[3301882366,444984403]),u=l(u,[0,u[0]>>>1]),u}t.x86.hash32=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%4,x=u.length-m,g=d,w=0,b=3432918353,_=461845907,A=0;A<x;A=A+4)w=u[A]|u[A+1]<<8|u[A+2]<<16|u[A+3]<<24,w=i(w,b),w=o(w,15),w=i(w,_),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=u[A+2]<<16;case 2:w^=u[A+1]<<8;case 1:w^=u[A],w=i(w,b),w=o(w,15),w=i(w,_),g^=w}return g^=u.length,g=s(g),g>>>0},t.x86.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=d,w=d,b=d,_=d,A=0,C=0,E=0,D=0,me=597399067,mr=2869860233,yr=951274213,gr=2716044179,N=0;N<x;N=N+16)A=u[N]|u[N+1]<<8|u[N+2]<<16|u[N+3]<<24,C=u[N+4]|u[N+5]<<8|u[N+6]<<16|u[N+7]<<24,E=u[N+8]|u[N+9]<<8|u[N+10]<<16|u[N+11]<<24,D=u[N+12]|u[N+13]<<8|u[N+14]<<16|u[N+15]<<24,A=i(A,me),A=o(A,15),A=i(A,mr),g^=A,g=o(g,19),g+=w,g=i(g,5)+1444728091,C=i(C,mr),C=o(C,16),C=i(C,yr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,yr),E=o(E,17),E=i(E,gr),b^=E,b=o(b,15),b+=_,b=i(b,5)+2530024501,D=i(D,gr),D=o(D,18),D=i(D,me),_^=D,_=o(_,13),_+=g,_=i(_,5)+850148119;switch(A=0,C=0,E=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,gr),D=o(D,18),D=i(D,me),_^=D;case 12:E^=u[N+11]<<24;case 11:E^=u[N+10]<<16;case 10:E^=u[N+9]<<8;case 9:E^=u[N+8],E=i(E,yr),E=o(E,17),E=i(E,gr),b^=E;case 8:C^=u[N+7]<<24;case 7:C^=u[N+6]<<16;case 6:C^=u[N+5]<<8;case 5:C^=u[N+4],C=i(C,mr),C=o(C,16),C=i(C,yr),w^=C;case 4:A^=u[N+3]<<24;case 3:A^=u[N+2]<<16;case 2:A^=u[N+1]<<8;case 1:A^=u[N],A=i(A,me),A=o(A,15),A=i(A,mr),g^=A}return g^=u.length,w^=u.length,b^=u.length,_^=u.length,g+=w,g+=b,g+=_,w+=g,b+=g,_+=g,g=s(g),w=s(w),b=s(b),_=s(_),g+=w,g+=b,g+=_,w+=g,b+=g,_+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(_>>>0).toString(16)).slice(-8)},t.x64.hash128=function(u,d){if(t.inputValidation&&!n(u))return e;d=d||0;for(var m=u.length%16,x=u.length-m,g=[0,d],w=[0,d],b=[0,0],_=[0,0],A=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[u[E+4]|u[E+5]<<8|u[E+6]<<16|u[E+7]<<24,u[E]|u[E+1]<<8|u[E+2]<<16|u[E+3]<<24],_=[u[E+12]|u[E+13]<<8|u[E+14]<<16|u[E+15]<<24,u[E+8]|u[E+9]<<8|u[E+10]<<16|u[E+11]<<24],b=c(b,A),b=h(b,31),b=c(b,C),g=l(g,b),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),_=c(_,C),_=h(_,33),_=c(_,A),w=l(w,_),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(b=[0,0],_=[0,0],m){case 15:_=l(_,f([0,u[E+14]],48));case 14:_=l(_,f([0,u[E+13]],40));case 13:_=l(_,f([0,u[E+12]],32));case 12:_=l(_,f([0,u[E+11]],24));case 11:_=l(_,f([0,u[E+10]],16));case 10:_=l(_,f([0,u[E+9]],8));case 9:_=l(_,[0,u[E+8]]),_=c(_,C),_=h(_,33),_=c(_,A),w=l(w,_);case 8:b=l(b,f([0,u[E+7]],56));case 7:b=l(b,f([0,u[E+6]],48));case 6:b=l(b,f([0,u[E+5]],40));case 5:b=l(b,f([0,u[E+4]],32));case 4:b=l(b,f([0,u[E+3]],24));case 3:b=l(b,f([0,u[E+2]],16));case 2:b=l(b,f([0,u[E+1]],8));case 1:b=l(b,[0,u[E]]),b=c(b,A),b=h(b,31),b=c(b,C),g=l(g,b)}return g=l(g,[0,u.length]),w=l(w,[0,u.length]),g=a(g,w),w=a(w,g),g=y(g),w=y(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof rr<"u"?(typeof Cr<"u"&&Cr.exports&&(rr=Cr.exports=t),rr.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(rr)});var Yo=ot((Xm,Jo)=>{Jo.exports=Xo()});var Tr=ot((r0,Zo)=>{"use strict";Zo.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(Bf,0),c=~(4294967295<<o+1),h=Qo(i&c);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(vf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,t),h=~(255<<c),f=o&h;i|=f<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(Af)}};function Bf(r,e){return r+Qo(e)}function Qo(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function vf(r,e){return r[0]-e[0]}function Af(r){return r[1]}});var Ra=ot((dw,Ci)=>{"use strict";var Wl=Object.prototype.hasOwnProperty,J="~";function ur(){}Object.create&&(ur.prototype=Object.create(null),new ur().__proto__||(J=!1));function ql(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Ma(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new ql(t,n||r,i),s=J?J+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function on(r,e){--r._eventsCount===0?r._events=new ur:delete r._events[e]}function q(){this._events=new ur,this._eventsCount=0}q.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Wl.call(t,n)&&e.push(J?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};q.prototype.listeners=function(e){var t=J?J+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};q.prototype.listenerCount=function(e){var t=J?J+e:e,n=this._events[t];return n?n.fn?1:n.length:0};q.prototype.emit=function(e,t,n,i,o,s){var a=J?J+e:e;if(!this._events[a])return!1;var c=this._events[a],h=arguments.length,f,l;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),h){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];c.fn.apply(c.context,f)}else{var y=c.length,u;for(l=0;l<y;l++)switch(c[l].once&&this.removeListener(e,c[l].fn,void 0,!0),h){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,t);break;case 3:c[l].fn.call(c[l].context,t,n);break;case 4:c[l].fn.call(c[l].context,t,n,i);break;default:if(!f)for(u=1,f=new Array(h-1);u<h;u++)f[u-1]=arguments[u];c[l].fn.apply(c[l].context,f)}}return!0};q.prototype.on=function(e,t,n){return Ma(this,e,t,n,!1)};q.prototype.once=function(e,t,n){return Ma(this,e,t,n,!0)};q.prototype.removeListener=function(e,t,n,i){var o=J?J+e:e;if(!this._events[o])return this;if(!t)return on(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&on(this,o);else{for(var a=0,c=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:on(this,o)}return this};q.prototype.removeAllListeners=function(e){var t;return e?(t=J?J+e:e,this._events[t]&&on(this,t)):(this._events=new ur,this._eventsCount=0),this};q.prototype.off=q.prototype.removeListener;q.prototype.addListener=q.prototype.on;q.prefixed=J;q.EventEmitter=q;typeof Ci<"u"&&(Ci.exports=q)});var Ya=ot((lx,Ja)=>{"use strict";Ja.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var nc=ot((tc,rc)=>{"use strict";var an=Ya(),{hasOwnProperty:Za}=Object.prototype,{propertyIsEnumerable:rh}=Object,Nt=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),nh=tc,Qa={concatArrays:!1,ignoreUndefined:!1},cn=r=>{let e=[];for(let t in r)Za.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)rh.call(r,n)&&e.push(n)}return e};function Tt(r){return Array.isArray(r)?ih(r):an(r)?oh(r):r}function ih(r){let e=r.slice(0,0);return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}function oh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return cn(r).forEach(t=>{Nt(e,t,Tt(r[t]))}),e}var ec=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Nt(r,i,Ui(r[i],e[i],n)):Nt(r,i,Tt(e[i])))}),r),sh=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)Za.call(o,a)&&(s.push(String(a)),o===r?Nt(n,i++,o[a]):Nt(n,i++,Tt(o[a])));n=ec(n,o,cn(o).filter(a=>!s.includes(a)),t)}),n};function Ui(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?sh(r,e,t):!an(e)||!an(r)?Tt(e):ec(r,e,cn(e),t)}rc.exports=function(...r){let e=Ui(Tt(Qa),this!==nh&&this||{},Qa),t={_:{}};for(let n of r)if(n!==void 0){if(!an(n))throw new TypeError("`"+n+"` is not an Option Object");t=Ui(t,{_:n},e)}return t._}});var ad={};G(ad,{mfs:()=>sd});function Tc(r){return r[Symbol.asyncIterator]!=null}function Dc(r){if(Tc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var An=Dc;function Lc(r){return r[Symbol.asyncIterator]!=null}function Pc(r,e=1){return e=Number(e),Lc(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var xr=Pc;async function*zt(r,e=1){for await(let t of xr(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function Ne(r=0){return new Uint8Array(r)}function ee(r=0){return new Uint8Array(r)}function We(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ee(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function ji(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var Wi=Symbol.for("@achingbrain/uint8arraylist");function Gi(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function br(r){return!!r?.[Wi]}var at=class r{bufs;length;[Wi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(br(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(br(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Gi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Gi(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(br(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return We(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:We(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let h=e>=a&&e<c,f=t>a&&t<=c;if(h&&f){if(e===a&&t===c){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!br(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=c;l+=f){f=0;for(let y=h;y>=0;y--){let u=this.get(l+y);if(n[y]!==u){f=Math.max(1,y-a[u]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=ee(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ee(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=Ne(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=Ne(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=Ne(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!ji(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};var Fc=262144,Ot=(r={})=>{let e=r.chunkSize??Fc;return async function*(n){let i=new at,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new at,o=0;else{let c=new at;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>H,createLink:()=>ho,createNode:()=>lo,decode:()=>O,encode:()=>T,name:()=>Lu,prepare:()=>F,validate:()=>Hn});var Fn={};G(Fn,{base32:()=>Ue,base32hex:()=>qc,base32hexpad:()=>Xc,base32hexpadupper:()=>Jc,base32hexupper:()=>Kc,base32pad:()=>Gc,base32padupper:()=>Wc,base32upper:()=>jc,base32z:()=>Yc});var ct={};G(ct,{coerce:()=>ue,empty:()=>qi,equals:()=>In,fromHex:()=>zc,fromString:()=>Cn,isBinary:()=>Oc,toHex:()=>Uc,toString:()=>Nn});var qi=new Uint8Array(0);function Uc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function zc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):qi}function In(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function ue(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return r;if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(r.buffer,r.byteOffset,r.byteLength);throw new Error("Unknown type, must be binary type")}function Oc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Cn(r){return new TextEncoder().encode(r)}function Nn(r){return new TextDecoder().decode(r)}function $c(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,g=0,w=d.length;g!==w&&d[g]===0;)g++,m++;for(var b=(w-g)*f+1>>>0,_=new Uint8Array(b);g!==w;){for(var A=d[g],C=0,E=b-1;(A!==0||C<x)&&E!==-1;E--,C++)A+=256*_[E]>>>0,_[E]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");x=C,g++}for(var D=b-x;D!==b&&_[D]===0;)D++;for(var me=c.repeat(m);D<b;++D)me+=r.charAt(_[D]);return me}function y(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,g=0;d[m]===c;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var _=t[d.charCodeAt(m)];if(_===255)return;for(var A=0,C=w-1;(_!==0||A<g)&&C!==-1;C--,A++)_+=a*b[C]>>>0,b[C]=_%256>>>0,_=_/256>>>0;if(_!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var E=w-g;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),me=x;E!==w;)D[me++]=b[E++];return D}}}function u(d){var m=y(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:y,decode:u}}var Mc=$c,Rc=Mc,Ki=Rc;var Tn=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Dn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Xi(this,e)}},Ln=class{decoders;constructor(e){this.decoders=e}or(e){return Xi(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Xi(r,e){return new Ln({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Pn=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Tn(e,t,n),this.decoder=new Dn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function ut({name:r,prefix:e,encode:t,decode:n}){return new Pn(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Ki(t,r);return ut({prefix:e,name:r,encode:n,decode:o=>ue(i(o))})}function Hc(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,h=0;for(let f=0;f<o;++f){let l=i[r[f]];if(l===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|l,a+=t,a>=8&&(a-=8,s[h++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Vc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function P({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return ut({prefix:e,name:r,encode(i){return Vc(i,n,t)},decode(i){return Hc(i,n,t,r)}})}var Ue=P({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),jc=P({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Gc=P({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Wc=P({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),qc=P({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Kc=P({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Xc=P({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Jc=P({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Yc=P({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Un={};G(Un,{base36:()=>$t,base36upper:()=>Qc});var $t=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Qc=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var zn={};G(zn,{base58btc:()=>fe,base58flickr:()=>Zc});var fe=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Zc=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var eu=Qi,Ji=128,tu=127,ru=~tu,nu=Math.pow(2,31);function Qi(r,e,t){e=e||[],t=t||0;for(var n=t;r>=nu;)e[t++]=r&255|Ji,r/=128;for(;r&ru;)e[t++]=r&255|Ji,r>>>=7;return e[t]=r|0,Qi.bytes=t-n+1,e}var iu=On,ou=128,Yi=127;function On(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw On.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Yi)<<i:(s&Yi)*Math.pow(2,i),i+=7}while(s>=ou);return On.bytes=o-n,t}var su=Math.pow(2,7),au=Math.pow(2,14),cu=Math.pow(2,21),uu=Math.pow(2,28),fu=Math.pow(2,35),lu=Math.pow(2,42),hu=Math.pow(2,49),du=Math.pow(2,56),pu=Math.pow(2,63),mu=function(r){return r<su?1:r<au?2:r<cu?3:r<uu?4:r<fu?5:r<lu?6:r<hu?7:r<du?8:r<pu?9:10},yu={encode:eu,decode:iu,encodingLength:mu},gu=yu,Mt=gu;function Rt(r,e=0){return[Mt.decode(r,e),Mt.decode.bytes]}function ft(r,e,t=0){return Mt.encode(r,e,t),e}function lt(r){return Mt.encodingLength(r)}function qe(r,e){let t=e.byteLength,n=lt(r),i=n+lt(t),o=new Uint8Array(i+t);return ft(r,o,0),ft(t,o,n),o.set(e,i),new ht(r,t,e,o)}function _r(r){let e=ue(r),[t,n]=Rt(e),[i,o]=Rt(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ht(t,i,s,e)}function Zi(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&In(r.bytes,t.bytes)}}var ht=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function eo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return xu(t,$n(r),e??fe.encoder);default:return bu(t,$n(r),e??Ue.encoder)}}var to=new WeakMap;function $n(r){let e=to.get(r);if(e==null){let t=new Map;return to.set(r,t),t}return e}var I=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Ht)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==ku)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=qe(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&Zi(e.multihash,n.multihash)}toString(e){return eo(this,e)}toJSON(){return{"/":eo(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??ro(n,i,o.bytes))}else if(t[_u]===!0){let{version:n,multihash:i,code:o}=t,s=_r(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Ht)throw new Error(`Version 0 CID must use dag-pb (code: ${Ht}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=ro(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Ht,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=ue(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ht(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Rt(e.subarray(t));return t+=y,l},i=n(),o=Ht;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),h=t+c,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:f,size:h}}static parse(e,t){let[n,i]=wu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return $n(o).set(n,e),o}};function wu(r,e){switch(r[0]){case"Q":{let t=e??fe;return[fe.prefix,t.decode(`${fe.prefix}${r}`)]}case fe.prefix:{let t=e??fe;return[fe.prefix,t.decode(r)]}case Ue.prefix:{let t=e??Ue;return[Ue.prefix,t.decode(r)]}case $t.prefix:{let t=e??$t;return[$t.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function xu(r,e,t){let{prefix:n}=t;if(n!==fe.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function bu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Ht=112,ku=18;function ro(r,e,t){let n=lt(r),i=n+lt(e),o=new Uint8Array(i+t.byteLength);return ft(r,o,0),ft(e,o,n),o.set(t,i),o}var _u=Symbol.for("@ipld/js-cid/CID");var Su=new TextDecoder;function Mn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function Sr(r,e){let t;[t,e]=Mn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function no(r,e){let t;return[t,e]=Mn(r,e),[t&7,t>>3,e]}function Eu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=no(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=Sr(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=Sr(r,n),e.Name=Su.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Mn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function io(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=no(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Sr(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Sr(r,t),n.push(Eu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var so=new TextEncoder,oo=2**32,Bu=2**31;function vu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Vt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=so.encode(r.Name);t-=n.length,e.set(n,t),t=Vt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Vt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function ao(r){let e=Iu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Vt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=vu(r.Links[i],t.subarray(0,n));n-=o,n=Vt(t,n,o)-1,t[n]=18}return t}function Au(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+pt(t)}if(typeof r.Name=="string"){let t=so.encode(r.Name).length;e+=1+t+pt(t)}return typeof r.Tsize=="number"&&(e+=1+pt(r.Tsize)),e}function Iu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+pt(t)}if(r.Links)for(let t of r.Links){let n=Au(t);e+=1+n+pt(n)}return e}function Vt(r,e,t){e-=pt(t);let n=e;for(;t>=Bu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function pt(r){return r%2===0&&r++,Math.floor((Cu(r)+6)/7)}function Cu(r){let e=0;return r>=oo&&(r=Math.floor(r/oo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Nu[r]}var Nu=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var Tu=["Data","Links"],Du=["Hash","Name","Tsize"],Rn=new TextEncoder;function uo(r,e){if(r===e)return 0;let t=r.Name?Rn.encode(r.Name):[],n=e.Name?Rn.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function co(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function fo(r){if(typeof r.asCID=="object"){let t=I.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=I.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=I.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=I.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function F(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=Rn.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(fo),e.Links.sort(uo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Hn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!co(r,Tu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!co(t,Du))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&uo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function lo(r,e=[]){return F({Data:r,Links:e})}function ho(r,e,t){return fo({Hash:t,Name:r,Tsize:e})}function po(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Lu="dag-pb",H=112;function T(r){Hn(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),ao(e)}function O(r){let e=po(r),t=io(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=I.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var jt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}};var Pu=Math.pow(2,7),Fu=Math.pow(2,14),Uu=Math.pow(2,21),mo=Math.pow(2,28),yo=Math.pow(2,35),go=Math.pow(2,42),wo=Math.pow(2,49),X=128,ze=127;function Gt(r){if(r<Pu)return 1;if(r<Fu)return 2;if(r<Uu)return 3;if(r<mo)return 4;if(r<yo)return 5;if(r<go)return 6;if(r<wo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function xo(r,e,t=0){switch(Gt(r)){case 8:e[t++]=r&255|X,r/=128;case 7:e[t++]=r&255|X,r/=128;case 6:e[t++]=r&255|X,r/=128;case 5:e[t++]=r&255|X,r/=128;case 4:e[t++]=r&255|X,r>>>=7;case 3:e[t++]=r&255|X,r>>>=7;case 2:e[t++]=r&255|X,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function bo(r,e){let t=r[e],n=0;if(n+=t&ze,t<X||(t=r[e+1],n+=(t&ze)<<7,t<X)||(t=r[e+2],n+=(t&ze)<<14,t<X)||(t=r[e+3],n+=(t&ze)<<21,t<X)||(t=r[e+4],n+=(t&ze)*mo,t<X)||(t=r[e+5],n+=(t&ze)*yo,t<X)||(t=r[e+6],n+=(t&ze)*go,t<X)||(t=r[e+7],n+=(t&ze)*wo,t<X))return n;throw new RangeError("Could not decode varint")}var Vn=new Float32Array([-0]),Oe=new Uint8Array(Vn.buffer);function ko(r,e,t){Vn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function _o(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Vn[0]}var jn=new Float64Array([-0]),W=new Uint8Array(jn.buffer);function So(r,e,t){jn[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function Eo(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],jn[0]}var zu=BigInt(Number.MAX_SAFE_INTEGER),Ou=BigInt(Number.MIN_SAFE_INTEGER),te=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return Ke;if(e<zu&&e>Ou)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>Bo&&(i=0n,++n>Bo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return Ke;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):Ke}},Ke=new te(0,0);Ke.toBigInt=function(){return 0n};Ke.zzEncode=Ke.zzDecode=function(){return this};Ke.length=function(){return 1};var Bo=4294967296n;function vo(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function Ao(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Gn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function ye(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Er(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Wn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,ye(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw ye(this,4);return Er(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ye(this,4);return Er(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ye(this,4);let e=_o(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ye(this,4);let e=Eo(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw ye(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Ao(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw ye(this,e);this.pos+=e}else do if(this.pos>=this.len)throw ye(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new te(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw ye(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw ye(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw ye(this,8);let e=Er(this.buf,this.pos+=4),t=Er(this.buf,this.pos+=4);return new te(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=bo(this.buf,this.pos);return this.pos+=Gt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function qn(r){return new Wn(r instanceof Uint8Array?r:r.subarray())}function Wt(r,e,t){let n=qn(r);return e.decode(n,void 0,t)}var Kn={};G(Kn,{base10:()=>$u});var $u=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var Xn={};G(Xn,{base16:()=>Mu,base16upper:()=>Ru});var Mu=P({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ru=P({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Jn={};G(Jn,{base2:()=>Hu});var Hu=P({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Yn={};G(Yn,{base256emoji:()=>qu});var Co=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Vu=Co.reduce((r,e,t)=>(r[t]=e,r),[]),ju=Co.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Gu(r){return r.reduce((e,t)=>(e+=Vu[t],e),"")}function Wu(r){let e=[];for(let t of r){let n=ju[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var qu=ut({prefix:"\u{1F680}",name:"base256emoji",encode:Gu,decode:Wu});var Qn={};G(Qn,{base64:()=>qt,base64pad:()=>Ku,base64url:()=>Xu,base64urlpad:()=>Ju});var qt=P({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ku=P({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Xu=P({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Ju=P({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Zn={};G(Zn,{base8:()=>Yu});var Yu=P({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ei={};G(ei,{identity:()=>Qu});var Qu=ut({prefix:"\0",name:"identity",encode:r=>Nn(r),decode:r=>Cn(r)});var mp=new TextEncoder,Zu=new TextDecoder;var No=512;function To(r){return JSON.parse(Zu.decode(r))}var Se={};G(Se,{code:()=>Z,decode:()=>rf,encode:()=>tf,name:()=>ef});var ef="raw",Z=85;function tf(r){return ue(r)}function rf(r){return ue(r)}var ni={};G(ni,{identity:()=>ri});var Do=0,nf="identity",Lo=ue;function of(r){return qe(Do,Lo(r))}var ri={code:Do,name:nf,encode:Lo,digest:of};var oi={};G(oi,{sha256:()=>re,sha512:()=>sf});function Xe({name:r,code:e,encode:t}){return new ii(r,e,t)}var ii=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?qe(this.code,t):t.then(n=>qe(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Fo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var re=Xe({name:"sha2-256",code:18,encode:Fo("SHA-256")}),sf=Xe({name:"sha2-512",code:19,encode:Fo("SHA-512")});var si={...ei,...Jn,...Zn,...Kn,...Xn,...Fn,...Un,...zn,...Qn,...Yn},Ip={...oi,...ni};function zo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Uo=zo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ai=zo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ee(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),af={utf8:Uo,"utf-8":Uo,hex:si.base16,latin1:ai,ascii:ai,binary:ai,...si},Br=af;function le(r,e="utf8"){let t=Br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function ci(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ee(s);i+s>e&&(n=ee(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ui(){}var li=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},cf=ci();function uf(r){return globalThis.Buffer!=null?ee(r):cf(r)}var Xt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(ui,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Je(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new hi((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(vr,10,te.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=te.fromBigInt(e);return this._push(vr,t.length(),t)}uint64Number(e){return this._push(xo,Gt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=te.fromBigInt(e).zzEncode();return this._push(vr,t.length(),t)}sint64Number(e){let t=te.fromNumber(e).zzEncode();return this._push(vr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(fi,1,e?1:0)}fixed32(e){return this._push(Kt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=te.fromBigInt(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64Number(e){let t=te.fromNumber(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(ko,4,e)}double(e){return this._push(So,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(fi,1,0):this.uint32(t)._push(lf,t,e)}string(e){let t=vo(e);return t!==0?this.uint32(t)._push(Gn,t,e):this._push(fi,1,0)}fork(){return this.states=new li(this),this.head=this.tail=new Je(ui,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Je(ui,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=uf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function fi(r,e,t){e[t]=r&255}function ff(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var hi=class extends Je{next;constructor(e,t){super(ff,e,t),this.next=void 0}};function vr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Kt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function lf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Xt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(hf,e,r),this},Xt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(df,e,r),this});function hf(r,e,t){e.set(r,t)}function df(r,e,t){r.length<40?Gn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(le(r),t)}function di(){return new Xt}function Jt(r,e){let t=di();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var mt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(mt||(mt={}));function Ar(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function pi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Ar("enum",mt.VARINT,t,n)}function Yt(r,e){return Ar("message",mt.LENGTH_DELIMITED,r,e)}var ge;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>pi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Yt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Ir.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Ir.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Jt(i,r.codec()),r.decode=i=>Wt(i,r.codec())})(ge||(ge={}));var Ir;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>Wt(t,r.codec())})(Ir||(Ir={}));var Oo;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>Wt(t,r.codec())})(Oo||(Oo={}));var $o={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},pf=["directory","hamt-sharded-directory"],Mo=parseInt("0644",8),Ro=parseInt("0755",8),v=class r{static unmarshal(e){let t=ge.decode(e),n=new r({type:$o[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=e;if(t!=null&&!Object.values($o).includes(t))throw new jt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Ro:Mo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return pf.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=ge.DataType.Raw;break;case"directory":e=ge.DataType.Directory;break;case"file":e=ge.DataType.File;break;case"metadata":e=ge.DataType.Metadata;break;case"symlink":e=ge.DataType.Symlink;break;case"hamt-sharded-directory":e=ge.DataType.HAMTShard;break;default:throw new jt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Mo&&!this.isDirectory()&&(n=void 0),n===Ro&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),ge.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var U=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var we=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await re.digest(r),i=I.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Ho(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Se,a.cidVersion=1):(s=new v({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let c=await we(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new U("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var Qt=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var $e=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Vo=async(r,e,t)=>{let n=new v({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(F({Data:n.marshal()})),o=await we(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*mf(r,e,t){let n=-1,i;for await(let o of zt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function jo(r){return r.single===!0}var yf=(r,e,t)=>async function(i){if(i.length===1&&jo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return jo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new v({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await we(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new v({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Z&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Z?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},c=T(F(a)),h=await we(c,e,t);return t.onProgress?.(new U("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:c}},Go=async(r,e,t)=>t.layout(mf(r,e,t),yf(r,e,t));function gf(r){return Symbol.iterator in r}function wf(r){return Symbol.asyncIterator in r}function xf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(gf(r))return async function*(){yield*r}();if(wf(r))return r}catch{throw new $e("Content was invalid")}throw new $e("Content was invalid")}function Wo(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),bf(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(xf(i.content)))){let h=BigInt(c.byteLength);a+=h,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:h,path:i.path})),yield c}}(),originalPath:o};yield async()=>Go(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>Vo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function bf(r){return r.content!=null}var qo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new $e("Content was invalid");if(typeof t=="string"||t instanceof String)yield le(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new $e("Content was invalid")}};var kf=174;function Zt(r){let e=r?.maxChildrenPerNode??kf;return async function t(n,i){let o=[];for await(let s of xr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function _f(r){return r[Symbol.asyncIterator]!=null}function Sf(r){if(_f(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var Ko=Sf;var Ee=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},er=I.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),tr=I.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=class extends Ee{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?tr.bytes.byteLength:er.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Ee)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:c,Tsize:Number(f.size),Hash:f.cid})}let n=new v({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(F(i)),s=await we(o,e,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Nr=st(Yo(),1);function Ef(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var Qm=Xe({name:"murmur3-32",code:35,encode:r=>Ef(Nr.default.x86.hash32(r))}),Qe=Xe({name:"murmur3-128",code:34,encode:r=>ct.fromHex(Nr.default.x64.hash128(r))}),Zm=Xe({name:"murmur3-x64-64",code:34,encode:r=>ct.fromHex(Nr.default.x64.hash128(r)).subarray(0,8)});var es=st(Tr(),1);var ne=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new es.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return ts(this,e,t)}toJSON(){return this.serialize(Cf,Nf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?le(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(If);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function If(r){return!!r}function Cf(r,e){return r.key}function Nf(r){return r}async function ts(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof ne)await ts(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Tf=[255,254,252,248,240,224,192,128],Df=[1,3,7,15,31,63,127,255],Dr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Lf(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Lf(r,e,t){let n=Pf(e,t);return(r&n)>>>e}function Pf(r,e){return Tf[r]&Df[Math.min(e+r-1,7)]}function rs(r){function e(t){return t instanceof Lr?t:new Lr(t,r)}return e}var Lr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Dr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function yt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:rs(r.hashFn)};return new ne(e)}async function Ff(r){return(await Qe.encode(r)).slice(0,8).reverse()}var ns=BigInt(34),Uf=8,mi=class extends Ee{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Ff,bits:t.shardFanoutBits??Uf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ss(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of os(this._bucket,e,this,this.options))yield{...t,path:this.path}}},is=mi;async function*os(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof ne){let g;for await(let w of os(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(zf(m.value)){let g=m.value,w;for await(let _ of g.flush(e))w=_,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=x+m.key,b=g.size;s.push({Name:w,Tsize:Number(b),Hash:g.cid}),a+=BigInt(b??0)}}let c=Uint8Array.from(i.bitField().reverse()),h=new v({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:ns,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),y=await we(l,e,n),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}function zf(r){return typeof r.flush=="function"}function ss(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof ne){let y=ss(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?er:tr})}else if(typeof f.value.flush=="function"){let u=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(u),Hash:t.cidVersion===0?er:tr})}else{let y=f.value;if(y.cid==null)continue;let u=l+f.key,d=y.size;o.push({Name:u,Tsize:Number(d),Hash:y.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new v({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ns,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function yi(r,e,t,n){let i=e;e instanceof Ye&&e.estimateNodeSize()>t&&(i=await Of(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return yi(i,o,t,n)}return i}async function Of(r,e){let t=new is({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var as=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function $f(r,e,t){let n=as(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),e=await yi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof Ee))&&(f=new Ye({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(c,f),o=f}}return e}async function*cs(r,e){if(!(r instanceof Ee)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function us(r){return async function*(t,n){let i=new Ye({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await $f(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*cs(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*cs(a.child,n))}}async function*Me(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,c=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,y=t.reduceSingleLeafToSelf??!0,u=t.chunker??Ot(),d=t.chunkValidator??qo(),m=t.dagBuilder??Wo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Zt(),bufferImporter:t.bufferImporter??Ho({cidVersion:a,rawLeaves:c,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??us({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(zt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Pr(r,e,t={}){let n=await An(Me([r],e,t));if(n==null)throw new Qt("Nothing imported");return n}async function fs(r,e,t={}){let n=await An(Me([r],e,t));if(n==null)throw new Qt("Nothing imported");return n}async function ls(r,e,t={}){return Pr({content:r},e,t)}async function hs(r,e,t={}){return Pr({content:r},e,t)}var nr={cidVersion:1,rawLeaves:!0,layout:Zt({maxChildrenPerNode:1024}),chunker:Ot({chunkSize:1048576})};async function*ds(r,e,t={}){yield*Me(r,e,{...nr,...t})}async function ps(r,e,t={}){let{cid:n}=await ls(r,e,{...nr,...t});return n}async function ms(r,e,t={}){let{cid:n}=await hs(r,e,{...nr,...t});return n}async function ys(r,e,t={}){let{cid:n}=await Pr(r,e,{...nr,...t});return n}async function gs(r,e,t={}){let{cid:n}=await fs({...r,path:r.path??"-"},e,{...nr,...t});return n}function Mf(r){return r[Symbol.asyncIterator]!=null}function Rf(r){if(Mf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var Re=Rf;var Fr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},he=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},Ur=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},M=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},zr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Or=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},$r=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Hf=["string","number","bigint","symbol"],Vf=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function ws(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Hf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(jf(r))return"Buffer";let t=Gf(r);return t||"Object"}function jf(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Gf(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Vf.includes(e))return e}var p=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};p.uint=new p(0,"uint",!0);p.negint=new p(1,"negint",!0);p.bytes=new p(2,"bytes",!0);p.string=new p(3,"string",!0);p.array=new p(4,"array",!1);p.map=new p(5,"map",!1);p.tag=new p(6,"tag",!1);p.float=new p(7,"float",!0);p.false=new p(7,"false",!0);p.true=new p(7,"true",!0);p.null=new p(7,"null",!0);p.undefined=new p(7,"undefined",!0);p.break=new p(7,"break",!0);var k=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var gt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Wf=new TextDecoder,qf=new TextEncoder;function Mr(r){return gt&&globalThis.Buffer.isBuffer(r)}function Rr(r){return r instanceof Uint8Array?Mr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var _s=gt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):bs(r,e,t):(r,e,t)=>t-e>64?Wf.decode(r.subarray(e,t)):bs(r,e,t),Hr=gt?r=>r.length>64?globalThis.Buffer.from(r):xs(r):r=>r.length>64?qf.encode(r):xs(r);var wt=gt?(r,e,t)=>Mr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ss=gt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Rr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Es=gt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Bs(r,e){if(Mr(r)&&Mr(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function xs(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function bs(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],c=r[e+2],h=r[e+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return gi(n)}var ks=4096;function gi(r){let e=r.length;if(e<=ks)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=ks));return t}var Kf=256,Vr=class{constructor(e=Kf){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Es(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=wt(n,0,this.cursor)}else t=Ss(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",xt="CBOR encode error:",ir=[];ir[23]=1;ir[24]=2;ir[25]=3;ir[26]=5;ir[27]=9;function Te(r,e,t){if(r.length-e<t)throw new Error(`${B} not enough data for type`)}var R=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ie(r,e,t){Te(r,e,1);let n=r[e];if(t.strict===!0&&n<R[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function oe(r,e,t){Te(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<R[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function se(r,e,t){Te(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<R[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ae(r,e,t){Te(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<R[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function vs(r,e,t,n){return new k(p.uint,ie(r,e+1,n),2)}function As(r,e,t,n){return new k(p.uint,oe(r,e+1,n),3)}function Is(r,e,t,n){return new k(p.uint,se(r,e+1,n),5)}function Cs(r,e,t,n){return new k(p.uint,ae(r,e+1,n),9)}function de(r,e){return V(r,0,e.value)}function V(r,e,t){if(t<R[0]){let n=Number(t);r.push([e|n])}else if(t<R[1]){let n=Number(t);r.push([e|24,n])}else if(t<R[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<R[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<R[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}de.encodedSize=function(e){return V.encodedSize(e.value)};V.encodedSize=function(e){return e<R[0]?1:e<R[1]?2:e<R[2]?3:e<R[3]?5:9};de.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ns(r,e,t,n){return new k(p.negint,-1-ie(r,e+1,n),2)}function Ts(r,e,t,n){return new k(p.negint,-1-oe(r,e+1,n),3)}function Ds(r,e,t,n){return new k(p.negint,-1-se(r,e+1,n),5)}var wi=BigInt(-1),Ls=BigInt(1);function Ps(r,e,t,n){let i=ae(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new k(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new k(p.negint,wi-BigInt(i),9)}function jr(r,e){let t=e.value,n=typeof t=="bigint"?t*wi-Ls:t*-1-1;V(r,e.type.majorEncoded,n)}jr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*wi-Ls:t*-1-1;return n<R[0]?1:n<R[1]?2:n<R[2]?3:n<R[3]?5:9};jr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function or(r,e,t,n){Te(r,e,t+n);let i=wt(r,e+t,e+t+n);return new k(p.bytes,i,t+n)}function Fs(r,e,t,n){return or(r,e,1,t)}function Us(r,e,t,n){return or(r,e,2,ie(r,e+1,n))}function zs(r,e,t,n){return or(r,e,3,oe(r,e+1,n))}function Os(r,e,t,n){return or(r,e,5,se(r,e+1,n))}function $s(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return or(r,e,9,i)}function Gr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Hr(r.value):r.value),r.encodedBytes}function bt(r,e){let t=Gr(e);V(r,e.type.majorEncoded,t.length),r.push(t)}bt.encodedSize=function(e){let t=Gr(e);return V.encodedSize(t.length)+t.length};bt.compareTokens=function(e,t){return Jf(Gr(e),Gr(t))};function Jf(r,e){return r.length<e.length?-1:r.length>e.length?1:Bs(r,e)}function sr(r,e,t,n,i){let o=t+n;Te(r,e,o);let s=new k(p.string,_s(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=wt(r,e+t,e+o)),s}function Ms(r,e,t,n){return sr(r,e,1,t,n)}function Rs(r,e,t,n){return sr(r,e,2,ie(r,e+1,n),n)}function Hs(r,e,t,n){return sr(r,e,3,oe(r,e+1,n),n)}function Vs(r,e,t,n){return sr(r,e,5,se(r,e+1,n),n)}function js(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return sr(r,e,9,i,n)}var Gs=bt;function kt(r,e,t,n){return new k(p.array,n,t)}function Ws(r,e,t,n){return kt(r,e,1,t)}function qs(r,e,t,n){return kt(r,e,2,ie(r,e+1,n))}function Ks(r,e,t,n){return kt(r,e,3,oe(r,e+1,n))}function Xs(r,e,t,n){return kt(r,e,5,se(r,e+1,n))}function Js(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return kt(r,e,9,i)}function Ys(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return kt(r,e,1,1/0)}function Wr(r,e){V(r,p.array.majorEncoded,e.value)}Wr.compareTokens=de.compareTokens;Wr.encodedSize=function(e){return V.encodedSize(e.value)};function _t(r,e,t,n){return new k(p.map,n,t)}function Qs(r,e,t,n){return _t(r,e,1,t)}function Zs(r,e,t,n){return _t(r,e,2,ie(r,e+1,n))}function ea(r,e,t,n){return _t(r,e,3,oe(r,e+1,n))}function ta(r,e,t,n){return _t(r,e,5,se(r,e+1,n))}function ra(r,e,t,n){let i=ae(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return _t(r,e,9,i)}function na(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return _t(r,e,1,1/0)}function qr(r,e){V(r,p.map.majorEncoded,e.value)}qr.compareTokens=de.compareTokens;qr.encodedSize=function(e){return V.encodedSize(e.value)};function ia(r,e,t,n){return new k(p.tag,t,1)}function oa(r,e,t,n){return new k(p.tag,ie(r,e+1,n),2)}function sa(r,e,t,n){return new k(p.tag,oe(r,e+1,n),3)}function aa(r,e,t,n){return new k(p.tag,se(r,e+1,n),5)}function ca(r,e,t,n){return new k(p.tag,ae(r,e+1,n),9)}function Kr(r,e){V(r,p.tag.majorEncoded,e.value)}Kr.compareTokens=de.compareTokens;Kr.encodedSize=function(e){return V.encodedSize(e.value)};var rl=20,nl=21,il=22,ol=23;function ua(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${B} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new k(p.null,null,1):new k(p.undefined,void 0,1)}function fa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return new k(p.break,void 0,1)}function xi(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${B} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${B} Infinity values are not supported`)}return new k(p.float,r,e)}function la(r,e,t,n){return xi(bi(r,e+1),3,n)}function ha(r,e,t,n){return xi(ki(r,e+1),5,n)}function da(r,e,t,n){return xi(ga(r,e+1),9,n)}function Xr(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|rl]);else if(n===!0)r.push([p.float.majorEncoded|nl]);else if(n===null)r.push([p.float.majorEncoded|il]);else if(n===void 0)r.push([p.float.majorEncoded|ol]);else{let i,o=!1;(!t||t.float64!==!0)&&(ma(n),i=bi(xe,1),n===i||Number.isNaN(n)?(xe[0]=249,r.push(xe.slice(0,3)),o=!0):(ya(n),i=ki(xe,1),n===i&&(xe[0]=250,r.push(xe.slice(0,5)),o=!0))),o||(sl(n),i=ga(xe,1),xe[0]=251,r.push(xe.slice(0,9)))}}Xr.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){ma(n);let i=bi(xe,1);if(n===i||Number.isNaN(n))return 3;if(ya(n),i=ki(xe,1),n===i)return 5}return 9};var pa=new ArrayBuffer(9),pe=new DataView(pa,1),xe=new Uint8Array(pa,0);function ma(r){if(r===1/0)pe.setUint16(0,31744,!1);else if(r===-1/0)pe.setUint16(0,64512,!1);else if(Number.isNaN(r))pe.setUint16(0,32256,!1);else{pe.setFloat32(0,r);let e=pe.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)pe.setUint16(0,31744,!1);else if(t===0)pe.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?pe.setUint16(0,0):i<-14?pe.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):pe.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function bi(r,e){if(r.length-e<2)throw new Error(`${B} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function ya(r){pe.setFloat32(0,r,!1)}function ki(r,e){if(r.length-e<4)throw new Error(`${B} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function sl(r){pe.setFloat64(0,r,!1)}function ga(r,e){if(r.length-e<8)throw new Error(`${B} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Xr.compareTokens=de.compareTokens;function L(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Jr(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=L;S[24]=vs;S[25]=As;S[26]=Is;S[27]=Cs;S[28]=L;S[29]=L;S[30]=L;S[31]=L;for(let r=32;r<=55;r++)S[r]=L;S[56]=Ns;S[57]=Ts;S[58]=Ds;S[59]=Ps;S[60]=L;S[61]=L;S[62]=L;S[63]=L;for(let r=64;r<=87;r++)S[r]=Fs;S[88]=Us;S[89]=zs;S[90]=Os;S[91]=$s;S[92]=L;S[93]=L;S[94]=L;S[95]=Jr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Ms;S[120]=Rs;S[121]=Hs;S[122]=Vs;S[123]=js;S[124]=L;S[125]=L;S[126]=L;S[127]=Jr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=Ws;S[152]=qs;S[153]=Ks;S[154]=Xs;S[155]=Js;S[156]=L;S[157]=L;S[158]=L;S[159]=Ys;for(let r=160;r<=183;r++)S[r]=Qs;S[184]=Zs;S[185]=ea;S[186]=ta;S[187]=ra;S[188]=L;S[189]=L;S[190]=L;S[191]=na;for(let r=192;r<=215;r++)S[r]=ia;S[216]=oa;S[217]=sa;S[218]=aa;S[219]=ca;S[220]=L;S[221]=L;S[222]=L;S[223]=L;for(let r=224;r<=243;r++)S[r]=Jr("simple values are not supported");S[244]=L;S[245]=L;S[246]=L;S[247]=ua;S[248]=Jr("simple values are not supported");S[249]=la;S[250]=ha;S[251]=da;S[252]=L;S[253]=L;S[254]=L;S[255]=fa;var be=[];for(let r=0;r<24;r++)be[r]=new k(p.uint,r,1);for(let r=-1;r>=-24;r--)be[31-r]=new k(p.negint,r,1);be[64]=new k(p.bytes,new Uint8Array(0),1);be[96]=new k(p.string,"",1);be[128]=new k(p.array,0,1);be[160]=new k(p.map,0,1);be[244]=new k(p.false,!1,1);be[245]=new k(p.true,!0,1);be[246]=new k(p.null,null,1);function cl(){let r=[];return r[p.uint.major]=de,r[p.negint.major]=jr,r[p.bytes.major]=bt,r[p.string.major]=Gs,r[p.array.major]=Wr,r[p.map.major]=qr,r[p.tag.major]=Kr,r[p.float.major]=Xr,r}var Oy=cl(),$y=new Vr,Yr=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${xt} object contains circular references`);return new r(t,e)}},He={null:new k(p.null,null),undefined:new k(p.undefined,void 0),true:new k(p.true,!0),false:new k(p.false,!1),emptyArray:new k(p.array,0),emptyMap:new k(p.map,0)},Ve={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new k(p.float,r):r>=0?new k(p.uint,r):new k(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new k(p.uint,r):new k(p.negint,r)},Uint8Array(r,e,t,n){return new k(p.bytes,r)},string(r,e,t,n){return new k(p.string,r)},boolean(r,e,t,n){return r?He.true:He.false},null(r,e,t,n){return He.null},undefined(r,e,t,n){return He.undefined},ArrayBuffer(r,e,t,n){return new k(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new k(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[He.emptyArray,new k(p.break)]:He.emptyArray;n=Yr.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=_i(s,t,n);return t.addBreakTokens?[new k(p.array,r.length),i,new k(p.break)]:[new k(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[He.emptyMap,new k(p.break)]:He.emptyMap;n=Yr.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[_i(h,t,n),_i(i?r.get(h):r[h],t,n)];return ul(a,t),t.addBreakTokens?[new k(p.map,s),a,new k(p.break)]:[new k(p.map,s),a]}};Ve.Map=Ve.Object;Ve.Buffer=Ve.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Ve[`${r}Array`]=Ve.DataView;function _i(r,e={},t){let n=ws(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||Ve[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=Ve[n];if(!o)throw new Error(`${xt} unsupported type: ${n}`);return o(r,n,e,t)}function ul(r,e){e.mapSorter&&r.sort(e.mapSorter)}var fl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Qr=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=be[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},ar=Symbol.for("DONE"),Zr=Symbol.for("BREAK");function ll(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=St(e,t);if(o===Zr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===ar)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function hl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=St(e,t);if(a===Zr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let c=St(e,t);if(c===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function St(r,e){if(r.done())return ar;let t=r.next();if(t.type===p.break)return Zr;if(t.type.terminal)return t.value;if(t.type===p.array)return ll(t,r,e);if(t.type===p.map)return hl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=St(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Si(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},fl,e);let t=e.tokenizer||new Qr(r,e),n=St(t,e);if(n===ar)throw new Error(`${B} did not find any content to decode`);if(n===Zr)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function cr(r,e){let[t,n]=Si(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var xa=42;function ml(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function yl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=I.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new k(p.tag,xa),new k(p.bytes,t)]}function gl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function wl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var wa={float64:!0,typeEncoders:{Object:yl,undefined:gl,number:wl}},Xy={...wa,typeEncoders:{...wa.typeEncoders}};function xl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return I.decode(r.subarray(1))}var en={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};en.tags[xa]=xl;var Jy={...en,tags:en.tags.slice()};var ba=113;var ka=r=>cr(ml(r),en);var Sa=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===p.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===p.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[p.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[p.negint.major](e,t){this[p.uint.major](e,t)}[p.bytes.major](e,t){throw new Error(`${xt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Hr(JSON.stringify(t.value));e.push(n.length>32?Rr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${xt} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var Et=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new k(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new k(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new k(s>=0?p.uint:p.negint,s,this._pos-e):new k(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new k(p.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let c,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(l=(o&31)<<6|c&63,l>127&&(s=l));break;case 3:c=this.data[this._pos+1],h=this.data[this._pos+2],(c&192)===128&&(h&192)===128&&(l=(o&15)<<12|(c&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:c=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(c&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(c&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new k(p.string,gi(t),this._pos-e);default:if(o<32)throw new Error(`${B} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${B} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new k(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new k(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new k(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new k(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new k(p.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${B} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new k(p.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new k(p.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${B} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${B} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ei(r,e){return e=Object.assign({tokenizer:new Et(r,e)},e),cr(r,e)}function _l(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Bi=class extends Et{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new k(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=qt.decode(`m${o.value}`);return new k(p.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},vi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};vi.tags[42]=I.parse;var Ea=297;var Ba=r=>{let e=_l(r),t=Object.assign(vi,{tokenizer:new Bi(e,vi)});return Ei(e,t)};var pg=new TextDecoder;var mg=new TextEncoder;function Bt(r,e,t,n,i,o,s){let a=r,c=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),c=`${c}/${h}`;let f=I.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw new $r(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Sl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=ka(c);return Bt(h,c,r,e,t,n,o)},Aa=Sl;var El=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Ba(c);return Bt(h,c,r,e,t,n,o)},Ia=El;function Bl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var tt=Bl;var vl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},vt=vl;var Al=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Il=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new he(`No link named ${t} found in raw node ${r}`);let c=_r(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Al(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Ca=Il;var Cl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=To(c);return Bt(h,c,r,e,t,n,o)},Na=Cl;var Nl=r=>{async function*e(t={}){let{start:n,end:i}=vt(r.length,t.offset,t.length),o=tt(r,0n,n,i);t.onProgress?.(new U("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Tl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new he(`No link named ${t} found in raw node ${r}`);let c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:Nl(c),depth:o,size:BigInt(c.length),node:c}}},Ta=Tl;var Dl=async function(r){return(await Qe.encode(r)).slice(0,8).reverse()},Ll=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new ne({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Da=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Pl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},La=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new M("no data in PBNode");let l;try{l=v.unmarshal(r.Data)}catch(u){throw new M(u.message)}if(l.type!=="hamt-sharded-directory")throw new M("not a HAMT");if(l.fanout==null)throw new M("missing fanout");let y=yt({hashFn:Dl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await Ll(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Da(s.pos,o),c=Pl(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=Da(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let y=l.Name.substring(0,o),u=l.Name.substring(o);return!(y!==a||u!==""&&u!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=O(f),La(r,e,t,n,i)},Pa=La;function Fl(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var tn=Fl;function Ul(r){return r[Symbol.asyncIterator]!=null}function zl(r,e){let t=0;if(Ul(r))return async function*(){for await(let c of r)await e(c,t++)&&(yield c)}();let n=tn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for await(let c of n)await e(c,t++)&&(yield c)}();let a=e;return function*(){s===!0&&(yield i);for(let c of n)a(c,t++)&&(yield c)}()}var Fa=zl;function Ol(r){return r[Symbol.asyncIterator]!=null}function $l(r,e){let t=0;if(Ol(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=tn(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield s;for(let c of n)yield a(c,t++)}()}var At=$l;function De(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var rn=globalThis.CustomEvent??Event;async function*rt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=De(),a=De(),c=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=De(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new rn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new rn("task-complete"))})}c=!0,i.dispatchEvent(new rn("task-complete"))}catch(d){h=d,i.dispatchEvent(new rn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*y(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*u(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=De(),await a.promise),h!=null)throw h;if(n?yield*y():yield*u(),c&&o.length===0)break}}var nn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},It=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new nn(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new nn(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ai=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function Ct(r={}){return Ml(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function Ml(r,e){e=e??{};let t=e.onEnd,n=new It,i,o,s,a=De(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){g(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=De()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new It,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},y=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),u=()=>(n=new It,y(),{done:!0}),d=x=>(y(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:u,throw:d,push:l,end:y,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,b;g!=null&&(w=new Promise((_,A)=>{b=()=>{A(new Ai)},g.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&g!=null&&g?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}function Rl(r){return r[Symbol.asyncIterator]!=null}function Hl(...r){let e=[];for(let t of r)Rl(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=Ct({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var Ua=Hl;function Be(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ii(r)){let n=r;r=()=>n.source}else if(Oa(r)||za(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ii(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Ii(t[n])&&(t[n]=jl(t[n]));return Vl(...t)}var Vl=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},za=r=>r?.[Symbol.asyncIterator]!=null,Oa=r=>r?.[Symbol.iterator]!=null,Ii=r=>r==null?!1:r.sink!=null&&r.source!=null,jl=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=Ct({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(za(o))i=async function*(){yield*o,n.end()};else if(Oa(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Ua(n,i())}return r.source};var Gl=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=c.offset??0,f=c.length??e.Links.length,l=e.Links.slice(h,f);c.onProgress?.(new U("unixfs:exporter:walk:directory",{cid:r})),yield*Be(l,y=>At(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>rt(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Fa(y,u=>u!=null))}return a},$a=Gl;var Ni=st(Ra(),1);var fr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ti=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Ha=r=>globalThis.DOMException===void 0?new Ti(r):new DOMException(r),Va=r=>{let e=r.reason===void 0?Ha("This operation was aborted."):r.reason;return e instanceof Error?e:Ha(e)};function Di(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((h,f)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:y}=e;y.aborted&&f(Va(y)),y.addEventListener("abort",()=>{f(Va(y))})}if(t===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new fr;s=o.setTimeout.call(void 0,()=>{if(n){try{h(n())}catch(y){f(y)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?h():i instanceof Error?f(i):(l.message=i??`Promise timed out after ${t} milliseconds`,f(l))},t),(async()=>{try{h(await r)}catch(y){f(y)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function Li(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var lr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Li(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var hr=class extends Ni.default{#e;#r;#n=0;#u;#s;#c=0;#i;#f;#t;#m;#o=0;#l;#a;#y;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:lr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#k(){this.#o--,this.#h(),this.emit("next")}#_(){this.#w(),this.#g(),this.#f=void 0}get#S(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#_()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#S;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#E(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Di(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#E(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof fr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#p("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#p("next",()=>this.#t.size<e)}async onIdle(){this.#o===0&&this.#t.size===0||await this.#p("idle")}async#p(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};async function ja(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=tt(e,n,i,o);t.push(h);return}if(e.Data==null)throw new M("no data in PBNode");let a;try{a=v.unmarshal(e.Data)}catch(h){throw new M(h.message)}if(a.data!=null){let h=a.data,f=tt(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw new M("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&c.push({link:f,blockStart:n}),n=y,n>o)break}await Be(c,h=>At(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>rt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let u;switch(f.Hash.code){case H:u=O(l);break;case Z:u=l;break;default:t.end(new M(`Unsupported codec: ${f.Hash.code}`));return}let d=new hr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new U("unixfs:exporter:walk:file",{cid:f.Hash})),await ja(r,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var Kl=(r,e,t,n,i,o,s)=>{async function*a(c={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=vt(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=Ct();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),ja(s,e,d,0n,f,l,c).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>u)throw d.end(),new zr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");y===u&&d.end(),c.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:u,fileSize:h})),yield m}if(y<u)throw new Or("Traversed entire DAG but did not read enough bytes")}return a},Pi=Kl;var Xl=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Ga(e,n,i,o,s,c)}return a};async function*Ga(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new M("no data in PBNode");let a;try{a=v.unmarshal(r.Data)}catch(f){throw new M(f.message)}if(a.fanout==null)throw new M("missing fanout");let c=(a.fanout-1n).toString(16).length,h=Be(s,f=>At(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(c):null;if(y!=null&&y!==""){let u=await t(l.Hash,y,`${e}/${y}`,[],n+1,i,o);return{entries:u.entry==null?[]:[u.entry]}}else{let u=await i.get(l.Hash,o);return r=O(u),o.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Ga(r,e,t,n,i,o)}}}),f=>rt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Wa=Xl;var Jl=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,Yl={raw:Pi,file:Pi,directory:$a,"hamt-sharded-directory":Wa,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},Ql=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=O(c),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new M("no data in PBNode");try{f=v.unmarshal(h.Data)}catch(u){throw new M(u.message)}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Pa(h,n[0],s):u=Jl(h,n[0]),u==null)throw new he("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:u,toResolve:n,name:d??"",path:m}}let y=Yl[f.type](r,h,f,t,i,o,s);if(y==null)throw new he("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},qa=Ql;var Zl={[H]:qa,[Z]:Ta,[ba]:Aa,[Ea]:Ia,[ri.code]:Ca,[No]:Na},Ka=async(r,e,t,n,i,o,s)=>{let a=Zl[r.code];if(a==null)throw new Ur(`No resolver for code ${r.code}`);return a(r,e,t,n,Ka,i,o,s)},Xa=Ka;var eh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),th=r=>{if(r instanceof Uint8Array)return{cid:I.decode(r),toResolve:[]};let e=I.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=eh(r);return{cid:I.parse(t[0]),toResolve:t.slice(1)}}throw new Fr(`Unknown path type ${r}`)};async function*Fi(r,e,t={}){let{cid:n,toResolve:i}=th(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await Xa(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw new he(`Could not resolve ${r}`);if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Y(r,e,t={}){let n=await Re(Fi(r,e,t));if(n==null)throw new he(`Could not resolve ${r}`);return n}async function*sn(r,e,t={}){let n=await Y(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var ic=st(nc(),1),K=ic.default;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},ve=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},Q=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},je=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},nt=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Dt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},un=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ae=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},j=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};function ah(r,e){try{if(typeof r=="string"&&r.length>0)return ch(r);if(typeof r=="number"&&isFinite(r))return e?.long?fh(r):uh(r);throw new Error("Value is not a string or number.")}catch(t){let n=lh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function ch(r){if(r=String(r),r.length>100)throw new Error("Value exceeds the maximum length of 100 characters.");let e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(!e)return NaN;let t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*315576e5;case"weeks":case"week":case"w":return t*6048e5;case"days":case"day":case"d":return t*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return t*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return t*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return t*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:throw new Error(`The unit ${n} was matched, but no matching case exists.`)}}var ln=ah;function uh(r){let e=Math.abs(r);return e>=864e5?`${Math.round(r/864e5)}d`:e>=36e5?`${Math.round(r/36e5)}h`:e>=6e4?`${Math.round(r/6e4)}m`:e>=1e3?`${Math.round(r/1e3)}s`:`${r}ms`}function fh(r){let e=Math.abs(r);return e>=864e5?fn(r,e,864e5,"day"):e>=36e5?fn(r,e,36e5,"hour"):e>=6e4?fn(r,e,6e4,"minute"):e>=1e3?fn(r,e,1e3,"second"):`${r} ms`}function fn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function lh(r){return typeof r=="object"&&r!==null&&"message"in r}function zi(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=ln,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let y=0;y<f.length;y++)l=(l<<5)-l+f.charCodeAt(y),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,y=null,u,d;function m(...x){if(!m.enabled)return;let g=m,w=Number(new Date),b=w-(l||w);g.diff=b,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let _=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";_++;let D=t.formatters[E];if(typeof D=="function"){let me=x[_];C=D.call(g,me),x.splice(_,1),_--}return C}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(u!==t.namespaces&&(u=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),u=y.length;for(l=0;l<u;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var hn=wh(),hh=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function dh(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/(edge|trident)\/(\d+)/)!=null?!1:typeof document<"u"&&document.documentElement?.style?.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/firefox\/(\d+)/)!=null&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent?.toLowerCase().match(/applewebkit\/(\d+)/)}function ph(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+ln(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}var mh=console.debug??console.log??(()=>{});function yh(r){try{r?hn?.setItem("debug",r):hn?.removeItem("debug")}catch{}}function gh(){let r;try{r=hn?.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function wh(){try{return localStorage}catch{}}function xh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var oc=zi({formatArgs:ph,save:yh,load:gh,useColors:dh,setupFormatters:xh,colors:hh,storage:hn,log:mh});var ce=oc;ce.formatters.b=r=>r==null?"undefined":fe.baseEncode(r);ce.formatters.t=r=>r==null?"undefined":Ue.baseEncode(r);ce.formatters.m=r=>r==null?"undefined":qt.baseEncode(r);ce.formatters.p=r=>r==null?"undefined":r.toString();ce.formatters.c=r=>r==null?"undefined":r.toString();ce.formatters.k=r=>r==null?"undefined":r.toString();ce.formatters.a=r=>r==null?"undefined":r.toString();function bh(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function z(r){let e=bh(`${r}:trace`);return ce.enabled(`${r}:trace`)&&ce.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=ce(`${r}:trace`)),Object.assign(ce(r),{error:ce(`${r}:error`),trace:e})}var Ri=st(Tr(),1);function pn(r){function e(t){return t instanceof dn?t:new dn(t,r)}return e}var dn=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?We([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Oi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},kh=[255,254,252,248,240,224,192,128],_h=[1,3,7,15,31,63,127,255],Oi=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Sh(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Sh(r,e,t){let n=Eh(e,t);return(r&n)>>>e}function Eh(r,e){return kh[r]&_h[Math.min(e+r-1,7)]}var dr=BigInt(Qe.code),it=8;async function Lt(r){return(await Qe.encode(r)).subarray(0,8).reverse()}var cc=st(Tr(),1);var _e=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await re.digest(r),i=I.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var $i=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},mn=class extends $i{_bucket;constructor(e,t){super(e,t),this._bucket=yt({hashFn:Lt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ac(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of sc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*sc(r,e,t,n){let i=r._children,o=[],s=0n;for(let u=0;u<i.length;u++){let d=i.get(u);if(d==null)continue;let m=u.toString(16).toUpperCase().padStart(2,"0");if(d instanceof ne){let x;for await(let g of sc(d,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Bh(d.value)){let x=d.value,g;for await(let b of x.flush(e))g=b,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=d.value;if(x.cid==null)continue;let g=m+d.key,w=x.size;o.push({Name:g,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new v({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:dr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(F(h)),l=await _e(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Bh(r){return typeof r.flush=="function"}function ac(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let h=n.get(c);if(h==null)continue;let f=c.toString(16).toUpperCase().padStart(2,"0");if(h instanceof ne){let l=ac(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?yn:gn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?yn:gn})}else{let l=h.value;if(l.cid==null)continue;let y=f+h.key,u=l.size;i.push({Name:y,Tsize:Number(u),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new v({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:dr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var yn=I.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),gn=I.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Mi=z("helia:unixfs:commands:utils:hamt-utils"),wn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),uc=async(r,e,t)=>{let n=new mn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await Re(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},xn=async(r,e,t)=>{let n=v.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,it));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new v({type:"hamt-sharded-directory",data:f,fanout:i,hashType:dr});c&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let y=T(F(s));if(o=await _e(y,e,t),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Mi("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},bn=async(r,e,t,n)=>{let o=pn(Lt)(le(e)),s=[];for(;;){let a=await t.get(r,n),c=O(a),h=new cc.default,f=await o.take(it),l=wn(f);s.push({prefix:l,children:h,node:c});let y;for(let d of c.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Mi("no link found with prefix %s for %s",l,e);break}let u=y.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=y.Hash,Mi("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function kn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=v.unmarshal(r.Data),o;if(i.type==="directory")o=vh(r);else if(i.type==="hamt-sharded-directory")o=await fc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function vh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?gn.bytes.byteLength:yn.bytes.byteLength;return e}async function fc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!v.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===H){let c=await n.get(s.Hash,i),h=O(c);e+=await fc(h,e,t,n,i)}}return e}var Ie=z("helia:unixfs:components:utils:add-link");async function Pt(r,e,t,n){if(r.node.Data==null)throw new j("Invalid parent passed to addLink");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Ie("adding link to sharded directory"),Ch(r,e,t,n);Ie(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Ih(r,e,t,n);if(await kn(o.node,t,n.shardSplitThresholdBytes,n)){Ie("converting directory to sharded directory");let s=await Ah(o,t);o.cid=s.cid,o.node=O(await t.get(s.cid,n))}return o}var Ah=async(r,e)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToShardedDirectory");let t=v.unmarshal(r.node.Data),n=await uc(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return Ie(`converted directory to sharded directory ${n.cid}`),n},Ih=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new nt;return!l});if(i.push(e),r.node.Data==null)throw new Q("Parent node with no data passed to addToDirectory");let o=v.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),c=await re.digest(a),h=I.create(r.cid.version,H,c);return await t.put(h,a),{node:r.node,cid:h}},Ch=async(r,e,t,n)=>{let{path:i,hash:o}=await bn(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);Ie("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(Ie("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new nt;Ie("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was subshard?!");{Ie("prefix %s already exists, creating new subshard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),y=s.node.Links.splice(l,1)[0],u=(y.Name??"").substring(2),m=pn(Lt)(le(u));for(let x=0;x<i.length;x++)await m.take(it);for(;;){let x=await m.take(it),g=wn(x);y.Name=`${g}${u}`;let w=await o.take(it),b=wn(w);if(g===b){let A=new Ri.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let _=new Ri.default;_.set(w,!0),_.set(x,!0),i.push({prefix:a,children:_,node:{Links:[y,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Ie("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(c,!0),Ie("adding %s to existing sub-shard",h);return xn(i,t,n)};async function Ge(r,e,t={}){let n=await Y(r,e,t);if(n.type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ft(r,e,t,n){let i=await Y(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new ve(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Nh(i.node),Hash:r}}function Nh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Th=z("helia:unixfs:components:utils:resolve");async function Ce(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await Ko(Fi(i,t,n));if(o.length===0)throw new Le("Could not find path in directory");return Th("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ut(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Ge(o.cid,t,n),Ft(i.cid,i.name,t,n)]);r=(await Pt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Dh=K.bind({ignoreUndefined:!0}),Lh={};async function*lc(r,e,t={}){let n=Dh(Lh,t),i=await Ce(r,n.path,e,n),o=await Y(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new un;if(o.content==null)throw new Dt;yield*o.content(n)}var Ph=K.bind({ignoreUndefined:!0}),Fh=z("helia:unixfs:chmod"),Uh={recursive:!1,shardSplitThresholdBytes:262144};async function hc(r,e,t,n={}){let i=Ph(Uh,n),o=await Ce(r,i.path,t,n);if(Fh("chmod %c %d",o.cid,e),i.recursive){let y=await Be(async function*(){for await(let u of sn(o.cid,t,n)){let d,m=[];if(u.type==="raw")d=new v({type:"file",data:u.node});else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await _e(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new Q(`${b} had no data`);let _=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:_}}}}),async u=>Re(u));if(y==null)throw new je(`Could not chmod ${o.cid.toString()}`);return Ut(y.cid,o,t,i)}let s=await t.get(o.cid,n),a,c=[];if(o.cid.code===Z)a=new v({type:"file",data:s});else{let y=O(s);if(y.Data==null)throw new Q(`${o.cid.toString()} had no data`);c=y.Links,a=v.unmarshal(y.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:c}),f=await re.digest(h),l=I.create(o.cid.version,H,f);return await t.put(l,h),Ut(l,o,t,i)}var zh=K.bind({ignoreUndefined:!0}),Oh=z("helia:unixfs:cp"),$h={force:!1,shardSplitThresholdBytes:262144};async function dc(r,e,t,n,i={}){let o=zh($h,i);if(t.includes("/"))throw new j("Name must not have slashes");let[s,a]=await Promise.all([Ge(e,n,o),Ft(r,t,n,o)]);return Oh('Adding %c as "%s" to %c',r,t,e),(await Pt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Mh=K.bind({ignoreUndefined:!0}),Rh={};async function*pc(r,e,t={}){let n=Mh(Rh,t),i=await Ce(r,n.path,e,n),o=await Y(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Dt;if(o.type!=="directory")throw new Ae;yield*o.content({offset:t.offset,length:t.length})}var Hh=K.bind({ignoreUndefined:!0}),mc=z("helia:unixfs:mkdir"),Vh={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function yc(r,e,t,n={}){let i=Hh(Vh,n);if(e.includes("/"))throw new j("Path must not have slashes");if((await Y(r,t,n)).type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);mc("creating %s",e);let a={Data:new v({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=T(a),h=await re.digest(c),f=I.create(i.cidVersion,H,h);await t.put(f,c);let[l,y]=await Promise.all([Ge(r,t,i),Ft(f,e,t,i)]);return mc("adding empty dir called %s to %c",e,r),(await Pt(l,y,t,{...i,allowOverwriting:i.force})).cid}var Sn=z("helia:unixfs:utils:remove-link");async function gc(r,e,t,n){if(r.node.Data==null)throw new Q("Parent node had no data");if(v.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Sn(`removing ${e} from sharded directory`);let o=await Gh(r,e,t,n);return await kn(o.node,t,n.shardSplitThresholdBytes,n)?o:(Sn("converting shard to flat directory %c",r.cid),Wh(o,t,n))}return Sn(`removing link ${e} regular directory`),jh(r,e,t,n)}var jh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await _e(i,t,{...n,cidVersion:r.cid.version});return Sn(`Updated regular directory ${o}`),{node:r.node,cid:o}},Gh=async(r,e,t,n)=>{let{path:i}=await bn(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(y=>!(y.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return xn(i,t,n)},Wh=async(r,e,t)=>{if(r.node.Data==null)throw new j("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Y(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=T(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=v.unmarshal(r.node.Data);n.Data=new v({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await _e(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var qh=K.bind({ignoreUndefined:!0}),Kh=z("helia:unixfs:rm"),Xh={shardSplitThresholdBytes:262144};async function wc(r,e,t,n={}){let i=qh(Xh,n);if(e.includes("/"))throw new j("Name must not have slashes");let o=await Ge(r,t,i);return Kh("Removing %s from %c",e,r),(await gc(o,e,t,{...i,cidVersion:r.version})).cid}var Jh=K.bind({ignoreUndefined:!0}),Yh=z("helia:unixfs:stat"),Qh={};async function xc(r,e,t={}){let n=Jh(Qh,t),i=await Ce(r,t.path,e,n);Yh("stat %c",i.cid);let o=await Y(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new ve;let s=0n,a=0n,c=0n,h=0n,f=0,l,y,u=o.type,d;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),h=BigInt(o.node.byteLength),f=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,h=a,f=1,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs),o.type==="file"){let m=await bc(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((x,g)=>x+(g.Tsize??0),0)),c=BigInt(m.localFileSize),h=BigInt(m.localDagSize),f=m.blocks,l=o.unixfs.mode,y=o.unixfs.mtime,d=o.unixfs}return{cid:i.cid,mode:l,mtime:y,fileSize:s,dagSize:a,localFileSize:c,localDagSize:h,blocks:f,type:u,unixfs:d}}async function bc(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===Z)n.localFileSize+=i.byteLength;else if(r.code===H){let o=O(i);if(o.Links.length>0)for(let s of o.Links){let a=await bc(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new Q(`PBNode ${r.toString()} had no data`);let s=v.unmarshal(o.Data);if(s.data==null)throw new Q(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new je(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var Zh=K.bind({ignoreUndefined:!0}),ed=z("helia:unixfs:touch"),td={recursive:!1,shardSplitThresholdBytes:262144};async function kc(r,e,t={}){let n=Zh(td,t),i=await Ce(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(ed("touch %c %o",i.cid,o),n.recursive){let y=await Be(async function*(){for await(let u of sn(i.cid,e)){let d,m;if(u.type==="raw")d=new v({data:u.node}),m=[];else if(u.type==="file"||u.type==="directory")d=u.unixfs,m=u.node.Links;else throw new ve;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:u.path,content:x}}},u=>Me(u,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let g=x.content,w=T(g),b=await _e(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new Q(`${b} had no data`);let _=v.unmarshal(g.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:_}}}}),async u=>Re(u));if(y==null)throw new je(`Could not chmod ${i.cid.toString()}`);return Ut(y.cid,i,e,n)}let s=await e.get(i.cid,t),a,c=[];if(i.cid.code===Z)a=new v({data:s});else{let y=O(s);if(c=y.Links,y.Data==null)throw new Q(`${i.cid.toString()} had no data`);a=v.unmarshal(y.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:c}),f=await re.digest(h),l=I.create(i.cid.version,H,f);return await e.put(l,h),Ut(l,i,e,n)}var En=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*ds(e,this.components.blockstore,t)}async addBytes(e,t={}){return ps(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ms(e,this.components.blockstore,t)}async addFile(e,t={}){return ys(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return gs(e,this.components.blockstore,t)}async*cat(e,t={}){yield*lc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return hc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return dc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*pc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return yc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return wc(e,t,this.components.blockstore,n)}async stat(e,t={}){return xc(e,this.components.blockstore,t)}async touch(e,t={}){return kc(e,this.components.blockstore,t)}};function _c(r){return new En(r)}function Sc(r,e="utf8"){let t=Br[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Pe="/",Ec=new TextEncoder().encode(Pe),Bn=Ec[0],pr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=le(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==Bn)throw new Error("Invalid key")}toString(e="utf8"){return Sc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Pe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Ec),this._buf[0]!==Bn){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Bn,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Bn;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Pe).slice(1)}type(){return rd(this.baseNamespace())}name(){return nd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Pe)||(e+=Pe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Pe):new r(e.slice(0,-1).join(Pe))}child(e){return this.toString()===Pe?e:e.toString()===Pe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...id(e.map(t=>t.namespaces()))])}};function rd(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function nd(r){let e=r.split(":");return e[e.length-1]}function id(r){return[].concat(...r)}function vn(r){return r.split("/").pop()??""}var od=z("helia:mfs"),Hi=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new pr(t.key??"/locals/filesroot"),this.unixfs=_c(e)}async#e(){if(this.root==null)try{let e=await this.components.datastore.get(this.key);this.root=I.decode(e)}catch(e){if(e.code!=="ERR_NOT_FOUND")throw e;this.root=await this.unixfs.addDirectory()}return this.root}async writeBytes(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async writeByteStream(e,t,n){let i=await this.unixfs.addFile({content:e,mode:n?.mode,mtime:n?.mtime},n);await this.cp(i,t,n)}async*cat(e,t={}){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1});yield*this.unixfs.cat(i[i.length-1].cid,t)}async chmod(e,t,n={}){let i=await this.#e();this.root=await this.unixfs.chmod(i,t,{...n,path:e})}async cp(e,t,n){let i=await this.#e(),o=n?.force??!1;typeof e=="string"&&(e=(await this.stat(e,n)).cid),o||await this.#s(t,n);let s=vn(t),a=t.substring(0,t.length-`/${s}`.length),c=[{cid:i,name:""}];a!==""&&(c=await this.#r(i,a,{...n,createMissingDirectories:n?.force??!1,finalSegmentMustBeDirectory:!0})),c.push({cid:e,name:s}),this.root=await this.#n(c,n)}async*ls(e,t){let n=await this.#e();t?.path!=null&&(e=`${e}/${t.path}`),yield*this.unixfs.ls(n,{...t,path:e})}async mkdir(e,t){let n=t?.force??!1;n||await this.#s(e,t);let i=vn(e),o=e.substring(0,e.length-`/${i}`.length),s=await this.#e(),a=[{cid:s,name:""}];o!==""&&(a=await this.#r(s,o,{...t,createMissingDirectories:n,finalSegmentMustBeDirectory:!0})),a.push({cid:await this.unixfs.addDirectory({mode:t?.mode,mtime:t?.mtime},t),name:vn(e)}),this.root=await this.#n(a,t)}async rm(e,t){(t?.force??!1)||await this.#u(e,t);let i=await this.#e(),o=await this.#r(i,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),s=o.pop();if(s==null)throw new j("path was too short");let a=o[o.length-1];a.cid=await this.unixfs.rm(a.cid,s.name,t),this.root=await this.#n(o,t)}async stat(e,t){let n=await this.#e(),o=(await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1})).pop();if(o==null)throw new Le;return this.unixfs.stat(o.cid,{...t})}async touch(e,t){let n=await this.#e(),i=await this.#r(n,e,{...t,createMissingDirectories:!1,finalSegmentMustBeDirectory:!1}),o=i[i.length-1];if(o==null)throw new Le;o.cid=await this.unixfs.touch(o.cid,t),this.root=await this.#n(i,t)}async#r(e,t,n){if(!t.startsWith("/"))throw new j("path must be absolute");let i=await this.unixfs.stat(e,{...n,offline:!0}),o=[{cid:e,name:"",unixfs:i.unixfs}],s=e,a=t.split("/").filter(Boolean);for(let h=0;h<a.length;h++){let f=a[h];try{let l=await this.unixfs.stat(s,{...n,offline:!0,path:f});o.push({cid:l.cid,name:f,unixfs:l.unixfs}),s=l.cid}catch{if(od.error("could not resolve path segment %s of %s under %c",f,t,e),n.createMissingDirectories){let y=await this.unixfs.addDirectory();o.push({cid:y,name:f,unixfs:new v({type:"directory"})})}else throw new Le(`${t} does not exist`)}}let c=o[o.length-1];if(n.finalSegmentMustBeDirectory&&c.unixfs?.isDirectory()!==!0)throw new Ae(`${t} was not a directory`);return o}async#n(e,t={}){let n=e.pop();if(n==null)throw new j("path was too short");let i=n.cid;for(let o=e.length-1;o>-1;o--){let s=e[o];s.cid=await this.unixfs.cp(n.cid,s.cid,n.name,{...t,force:!0}),n=s,i=s.cid}return await this.components.datastore.put(this.key,i.bytes,t),i}async#u(e,t={}){if(!await this.#c(e,t))throw new Le}async#s(e,t={}){if(await this.#c(e,t))throw new nt}async#c(e,t={}){try{return await this.stat(e,{...t,offline:!0}),!0}catch{return!1}}};function sd(r,e={}){return new Hi(r,e)}return Nc(ad);})();
3
3
  return HeliaMfs}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helia/mfs",
3
- "version": "3.0.7",
3
+ "version": "3.0.8",
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",
@@ -140,7 +140,7 @@
140
140
  },
141
141
  "dependencies": {
142
142
  "@helia/unixfs": "^3.0.7",
143
- "@libp2p/interfaces": "^3.3.2",
143
+ "@libp2p/interface": "^1.1.4",
144
144
  "@libp2p/logger": "^4.0.7",
145
145
  "interface-blockstore": "^5.2.10",
146
146
  "interface-datastore": "^8.2.11",
package/src/index.ts CHANGED
@@ -37,7 +37,7 @@ import { UnixFS as IPFSUnixFS, type Mtime } from 'ipfs-unixfs'
37
37
  import { CID } from 'multiformats/cid'
38
38
  import { basename } from './utils/basename.js'
39
39
  import type { AddOptions, CatOptions, ChmodOptions, CpOptions, LsOptions, MkdirOptions as UnixFsMkdirOptions, RmOptions as UnixFsRmOptions, StatOptions, TouchOptions, UnixFS, UnixFSStats } from '@helia/unixfs'
40
- import type { AbortOptions } from '@libp2p/interfaces'
40
+ import type { AbortOptions } from '@libp2p/interface'
41
41
  import type { Blockstore } from 'interface-blockstore'
42
42
  import type { Datastore } from 'interface-datastore'
43
43
  import type { UnixFSEntry } from 'ipfs-unixfs-exporter'