@helia/mfs 3.0.6 → 3.0.7-e567717

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -65,7 +65,7 @@ $ npm i @helia/mfs
65
65
 
66
66
  ## Browser `<script>` tag
67
67
 
68
- Loading this module through a script tag will make it's exports available as `HeliaMfs` in the global namespace.
68
+ Loading this module through a script tag will make its exports available as `HeliaMfs` in the global namespace.
69
69
 
70
70
  ```html
71
71
  <script src="https://unpkg.com/@helia/mfs/dist/index.min.js"></script>
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(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Ch(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+ln.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}ue.log=console.debug||console.log||(()=>{});function Ih(r){try{r?ue.storage.setItem("debug",r):ue.storage.removeItem("debug")}catch{}}function Nh(){let r;try{r=ue.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Th(){try{return localStorage}catch{}}ln.exports=yc()(ue);var{formatters:Dh}=ln.exports;Dh.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var bd={};G(bd,{mfs:()=>xd});var 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{constructor(e,t){super(e),this.detail=t}};var xe=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await ne.digest(r),i=C.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Wo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Be,a.cidVersion=1):(s=new v({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let 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 Nc=Object.create;var yr=Object.defineProperty;var Tc=Object.getOwnPropertyDescriptor;var Dc=Object.getOwnPropertyNames;var Lc=Object.getPrototypeOf,Fc=Object.prototype.hasOwnProperty;var Ge=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),G=(r,e)=>{for(var t in e)yr(r,t,{get:e[t],enumerable:!0})},Vi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Dc(e))!Fc.call(r,i)&&i!==t&&yr(r,i,{get:()=>e[i],enumerable:!(n=Tc(e,i))||n.enumerable});return r};var R=(r,e,t)=>(t=r!=null?Nc(Lc(r)):{},Vi(e||!r||!r.__esModule?yr(t,"default",{value:r,enumerable:!0}):t,r)),Pc=r=>Vi(yr({},"__esModule",{value:!0}),r);var K=Ge((yd,ji)=>{"use strict";function Hi(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function Uc(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 Hi(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),Hi(new i,t)}}ji.exports=Uc});var Jo=Ge((Yt,Ar)=>{(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,S=0,D=0,me=597399067,dr=2869860233,pr=951274213,mr=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,S=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,dr),g^=A,g=o(g,19),g+=w,g=i(g,5)+1444728091,I=i(I,dr),I=o(I,16),I=i(I,pr),w^=I,w=o(w,17),w+=b,w=i(w,5)+197830471,S=i(S,pr),S=o(S,17),S=i(S,mr),b^=S,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,mr),D=o(D,18),D=i(D,me),k^=D,k=o(k,13),k+=g,k=i(k,5)+850148119;switch(A=0,I=0,S=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,mr),D=o(D,18),D=i(D,me),k^=D;case 12:S^=u[N+11]<<24;case 11:S^=u[N+10]<<16;case 10:S^=u[N+9]<<8;case 9:S^=u[N+8],S=i(S,pr),S=o(S,17),S=i(S,mr),b^=S;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,dr),I=o(I,16),I=i(I,pr),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,me),A=o(A,15),A=i(A,dr),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],S=0;S<x;S=S+16)b=[u[S+4]|u[S+5]<<8|u[S+6]<<16|u[S+7]<<24,u[S]|u[S+1]<<8|u[S+2]<<16|u[S+3]<<24],k=[u[S+12]|u[S+13]<<8|u[S+14]<<16|u[S+15]<<24,u[S+8]|u[S+9]<<8|u[S+10]<<16|u[S+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[S+14]],48));case 14:k=l(k,f([0,u[S+13]],40));case 13:k=l(k,f([0,u[S+12]],32));case 12:k=l(k,f([0,u[S+11]],24));case 11:k=l(k,f([0,u[S+10]],16));case 10:k=l(k,f([0,u[S+9]],8));case 9:k=l(k,[0,u[S+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[S+7]],56));case 7:b=l(b,f([0,u[S+6]],48));case 6:b=l(b,f([0,u[S+5]],40));case 5:b=l(b,f([0,u[S+4]],32));case 4:b=l(b,f([0,u[S+3]],24));case 3:b=l(b,f([0,u[S+2]],16));case 2:b=l(b,f([0,u[S+1]],8));case 1:b=l(b,[0,u[S]]),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 Yt<"u"?(typeof Ar<"u"&&Ar.exports&&(Yt=Ar.exports=t),Yt.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)})(Yt)});var Qo=Ge((Jm,Yo)=>{Yo.exports=Jo()});var Ir=Ge((n0,es)=>{"use strict";es.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(Df,0),c=~(4294967295<<o+1),h=Zo(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(Lf),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let 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(Ff)}};function Df(r,e){return r+Zo(e)}function Zo(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Lf(r,e){return r[0]-e[0]}function Ff(r){return r[1]}});var Ga=Ge((sw,Ci)=>{"use strict";var Zl=Object.prototype.hasOwnProperty,Y="~";function sr(){}Object.create&&(sr.prototype=Object.create(null),new sr().__proto__||(Y=!1));function eh(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function ja(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new eh(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 Yr(r,e){--r._eventsCount===0?r._events=new sr:delete r._events[e]}function X(){this._events=new sr,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Zl.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};X.prototype.listeners=function(e){var t=Y?Y+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};X.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};X.prototype.emit=function(e,t,n,i,o,s){var a=Y?Y+e:e;if(!this._events[a])return!1;var 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};X.prototype.on=function(e,t,n){return ja(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return ja(this,e,t,n,!0)};X.prototype.removeListener=function(e,t,n,i){var o=Y?Y+e:e;if(!this._events[o])return this;if(!t)return Yr(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&Yr(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:Yr(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&Yr(this,t)):(this._events=new sr,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Ci<"u"&&(Ci.exports=X)});var rc=Ge((Qw,tc)=>{"use strict";tc.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var cc=Ge((sc,ac)=>{"use strict";var tn=rc(),{hasOwnProperty:ic}=Object.prototype,{propertyIsEnumerable:uh}=Object,Ct=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),fh=sc,nc={concatArrays:!1,ignoreUndefined:!1},rn=r=>{let e=[];for(let t in r)ic.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)uh.call(r,n)&&e.push(n)}return e};function It(r){return Array.isArray(r)?lh(r):tn(r)?hh(r):r}function lh(r){let e=r.slice(0,0);return rn(r).forEach(t=>{Ct(e,t,It(r[t]))}),e}function hh(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return rn(r).forEach(t=>{Ct(e,t,It(r[t]))}),e}var oc=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Ct(r,i,Pi(r[i],e[i],n)):Ct(r,i,It(e[i])))}),r),dh=(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++)ic.call(o,a)&&(s.push(String(a)),o===r?Ct(n,i++,o[a]):Ct(n,i++,It(o[a])));n=oc(n,o,rn(o).filter(a=>!s.includes(a)),t)}),n};function Pi(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?dh(r,e,t):!tn(e)||!tn(r)?It(e):oc(r,e,rn(e),t)}ac.exports=function(...r){let e=Pi(It(nc),this!==fh&&this||{},nc),t={_:{}};for(let n of r)if(n!==void 0){if(!tn(n))throw new TypeError("`"+n+"` is not an Option Object");t=Pi(t,{_:n},e)}return t._}});var pd={};G(pd,{mfs:()=>dd});var mi=R(K(),1);function zc(r){return r[Symbol.asyncIterator]!=null}function Oc(r){if(zc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var kn=Oc;function Rc(r){return r[Symbol.asyncIterator]!=null}function $c(r,e=1){return e=Number(e),Rc(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 gr=$c;async function*Pt(r,e=1){for await(let t of gr(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 te(r=0){return new Uint8Array(r)}function We(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 Gi(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 Xi=Symbol.for("@achingbrain/uint8arraylist");function Wi(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 wr(r){return!!r?.[Xi]}var ot=class r{bufs;length;[Xi]=!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(wr(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(wr(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=Wi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Wi(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(wr(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(!wr(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=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=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=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(!Gi(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 Mc=262144,Ut=(r={})=>{let e=r.chunkSize??Mc;return async function*(n){let i=new ot,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new ot,o=0;else{let c=new ot;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};G($,{code:()=>V,createLink:()=>po,createNode:()=>ho,decode:()=>O,encode:()=>T,name:()=>Ou,prepare:()=>P,validate:()=>Un});var Nn={};G(Nn,{base32:()=>Ue,base32hex:()=>Zc,base32hexpad:()=>tu,base32hexpadupper:()=>ru,base32hexupper:()=>eu,base32pad:()=>Yc,base32padupper:()=>Qc,base32upper:()=>Jc,base32z:()=>nu});var st={};G(st,{coerce:()=>fe,empty:()=>qi,equals:()=>En,fromHex:()=>Hc,fromString:()=>Sn,isBinary:()=>jc,toHex:()=>Vc,toString:()=>Bn});var qi=new Uint8Array(0);function Vc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function Hc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):qi}function En(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 fe(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 jc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Sn(r){return new TextEncoder().encode(r)}function Bn(r){return new TextDecoder().decode(r)}function Gc(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,S=b-1;(A!==0||I<x)&&S!==-1;S--,I++)A+=256*k[S]>>>0,k[S]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");x=I,g++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var me=c.repeat(m);D<b;++D)me+=r.charAt(k[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 k=t[d.charCodeAt(m)];if(k===255)return;for(var A=0,I=w-1;(k!==0||A<g)&&I!==-1;I--,A++)k+=a*b[I]>>>0,b[I]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");g=A,m++}if(d[m]!==" "){for(var S=w-g;S!==w&&b[S]===0;)S++;for(var D=new Uint8Array(x+(w-S)),me=x;S!==w;)D[me++]=b[S++];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 Wc=Gc,Xc=Wc,Ki=Xc;var vn=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")}},An=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 Ji(this,e)}},Cn=class{decoders;constructor(e){this.decoders=e}or(e){return Ji(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 Ji(r,e){return new Cn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var In=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 vn(e,t,n),this.decoder=new An(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function at({name:r,prefix:e,encode:t,decode:n}){return new In(r,e,t,n)}function Pe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Ki(t,r);return at({prefix:e,name:r,encode:n,decode:o=>fe(i(o))})}function qc(r,e,t,n){let i={};for(let f=0;f<e.length;++f)i[e[f]]=f;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,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 Kc(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 at({prefix:e,name:r,encode(i){return Kc(i,n,t)},decode(i){return qc(i,n,t,r)}})}var Ue=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Jc=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Yc=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Qc=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Zc=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),eu=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),tu=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ru=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),nu=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Tn={};G(Tn,{base58btc:()=>le,base58flickr:()=>iu});var le=Pe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),iu=Pe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var ou=Zi,Yi=128,su=127,au=~su,cu=Math.pow(2,31);function Zi(r,e,t){e=e||[],t=t||0;for(var n=t;r>=cu;)e[t++]=r&255|Yi,r/=128;for(;r&au;)e[t++]=r&255|Yi,r>>>=7;return e[t]=r|0,Zi.bytes=t-n+1,e}var uu=Dn,fu=128,Qi=127;function Dn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Dn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Qi)<<i:(s&Qi)*Math.pow(2,i),i+=7}while(s>=fu);return Dn.bytes=o-n,t}var lu=Math.pow(2,7),hu=Math.pow(2,14),du=Math.pow(2,21),pu=Math.pow(2,28),mu=Math.pow(2,35),yu=Math.pow(2,42),gu=Math.pow(2,49),wu=Math.pow(2,56),xu=Math.pow(2,63),bu=function(r){return r<lu?1:r<hu?2:r<du?3:r<pu?4:r<mu?5:r<yu?6:r<gu?7:r<wu?8:r<xu?9:10},_u={encode:ou,decode:uu,encodingLength:bu},ku=_u,zt=ku;function Ot(r,e=0){return[zt.decode(r,e),zt.decode.bytes]}function ct(r,e,t=0){return zt.encode(r,e,t),e}function ut(r){return zt.encodingLength(r)}function Xe(r,e){let t=e.byteLength,n=ut(r),i=n+ut(t),o=new Uint8Array(i+t);return ct(r,o,0),ct(t,o,n),o.set(e,i),new ft(r,t,e,o)}function br(r){let e=fe(r),[t,n]=Ot(e),[i,o]=Ot(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ft(t,i,s,e)}function eo(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&En(r.bytes,t.bytes)}}var ft=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function to(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Su(t,Ln(r),e??le.encoder);default:return Bu(t,Ln(r),e??Ue.encoder)}}var ro=new WeakMap;function Ln(r){let e=ro.get(r);if(e==null){let t=new Map;return ro.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!==Rt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==vu)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&&eo(e.multihash,n.multihash)}toString(e){return to(this,e)}toJSON(){return{"/":to(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??no(n,i,o.bytes))}else if(t[Au]===!0){let{version:n,multihash:i,code:o}=t,s=br(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Rt)throw new Error(`Version 0 CID must use dag-pb (code: ${Rt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=no(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Rt,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=fe(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ft(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Ot(e.subarray(t));return t+=y,l},i=n(),o=Rt;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]=Eu(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ln(o).set(n,e),o}};function Eu(r,e){switch(r[0]){case"Q":{let t=e??le;return[le.prefix,t.decode(`${le.prefix}${r}`)]}case le.prefix:{let t=e??le;return[le.prefix,t.decode(r)]}case Ue.prefix:{let t=e??Ue;return[Ue.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 Su(r,e,t){let{prefix:n}=t;if(n!==le.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 Rt=112,vu=18;function no(r,e,t){let n=ut(r),i=n+ut(e),o=new Uint8Array(i+t.byteLength);return ct(r,o,0),ct(e,o,n),o.set(t,i),o}var Au=Symbol.for("@ipld/js-cid/CID");var Cu=new TextDecoder;function Fn(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 _r(r,e){let t;[t,e]=Fn(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 io(r,e){let t;return[t,e]=Fn(r,e),[t&7,t>>3,e]}function Iu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=io(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]=_r(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]=_r(r,n),e.Name=Cu.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Fn(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 oo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=io(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]=_r(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]=_r(r,t),n.push(Iu(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 ao=new TextEncoder,so=2**32,Nu=2**31;function Tu(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=$t(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=ao.encode(r.Name);t-=n.length,e.set(n,t),t=$t(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=$t(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function co(r){let e=Lu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=$t(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Tu(r.Links[i],t.subarray(0,n));n-=o,n=$t(t,n,o)-1,t[n]=18}return t}function Du(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=ao.encode(r.Name).length;e+=1+t+ht(t)}return typeof r.Tsize=="number"&&(e+=1+ht(r.Tsize)),e}function Lu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+ht(t)}if(r.Links)for(let t of r.Links){let n=Du(t);e+=1+n+ht(n)}return e}function $t(r,e,t){e-=ht(t);let n=e;for(;t>=Nu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function ht(r){return r%2===0&&r++,Math.floor((Fu(r)+6)/7)}function Fu(r){let e=0;return r>=so&&(r=Math.floor(r/so),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Pu[r]}var Pu=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var Uu=["Data","Links"],zu=["Hash","Name","Tsize"],Pn=new TextEncoder;function fo(r,e){if(r===e)return 0;let t=r.Name?Pn.encode(r.Name):[],n=e.Name?Pn.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 uo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function lo(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=Pn.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(lo),e.Links.sort(fo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Un(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!uo(r,Uu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!uo(t,zu))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&&fo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function ho(r,e=[]){return P({Data:r,Links:e})}function po(r,e,t){return lo({Hash:t,Name:r,Tsize:e})}function mo(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ou="dag-pb",V=112;function T(r){Un(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),co(e)}function O(r){let e=mo(r),t=oo(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 fi=R(K(),1);var Ru=Math.pow(2,7),$u=Math.pow(2,14),Mu=Math.pow(2,21),yo=Math.pow(2,28),go=Math.pow(2,35),wo=Math.pow(2,42),xo=Math.pow(2,49),J=128,ze=127;function Mt(r){if(r<Ru)return 1;if(r<$u)return 2;if(r<Mu)return 3;if(r<yo)return 4;if(r<go)return 5;if(r<wo)return 6;if(r<xo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function bo(r,e,t=0){switch(Mt(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 _o(r,e){let t=r[e],n=0;if(n+=t&ze,t<J||(t=r[e+1],n+=(t&ze)<<7,t<J)||(t=r[e+2],n+=(t&ze)<<14,t<J)||(t=r[e+3],n+=(t&ze)<<21,t<J)||(t=r[e+4],n+=(t&ze)*yo,t<J)||(t=r[e+5],n+=(t&ze)*go,t<J)||(t=r[e+6],n+=(t&ze)*wo,t<J)||(t=r[e+7],n+=(t&ze)*xo,t<J))return n;throw new RangeError("Could not decode varint")}var zn=new Float32Array([-0]),Oe=new Uint8Array(zn.buffer);function ko(r,e,t){zn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Eo(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],zn[0]}var On=new Float64Array([-0]),W=new Uint8Array(On.buffer);function So(r,e,t){On[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 Bo(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],On[0]}var Vu=BigInt(Number.MAX_SAFE_INTEGER),Hu=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 qe;if(e<Vu&&e>Hu)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>vo&&(i=0n,++n>vo&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return qe;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):qe}},qe=new re(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var vo=4294967296n;function Ao(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 Co(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 Rn(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 kr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var $n=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 kr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw ye(this,4);return kr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw ye(this,4);let e=Eo(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw ye(this,4);let e=Bo(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 Co(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 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 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=kr(this.buf,this.pos+=4),t=kr(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=_o(this.buf,this.pos);return this.pos+=Mt(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 Mn(r){return new $n(r instanceof Uint8Array?r:r.subarray())}function Vt(r,e,t){let n=Mn(r);return e.decode(n,void 0,t)}var Vn={};G(Vn,{base10:()=>ju});var ju=Pe({prefix:"9",name:"base10",alphabet:"0123456789"});var Hn={};G(Hn,{base16:()=>Gu,base16upper:()=>Wu});var Gu=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Wu=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var jn={};G(jn,{base2:()=>Xu});var Xu=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Gn={};G(Gn,{base256emoji:()=>Qu});var No=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}"),qu=No.reduce((r,e,t)=>(r[t]=e,r),[]),Ku=No.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function Ju(r){return r.reduce((e,t)=>(e+=qu[t],e),"")}function Yu(r){let e=[];for(let t of r){let n=Ku[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var Qu=at({prefix:"\u{1F680}",name:"base256emoji",encode:Ju,decode:Yu});var Wn={};G(Wn,{base36:()=>Zu,base36upper:()=>ef});var Zu=Pe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ef=Pe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Xn={};G(Xn,{base64:()=>Ht,base64pad:()=>tf,base64url:()=>rf,base64urlpad:()=>nf});var Ht=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),tf=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),rf=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),nf=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var qn={};G(qn,{base8:()=>of});var of=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Kn={};G(Kn,{identity:()=>sf});var sf=at({prefix:"\0",name:"identity",encode:r=>Bn(r),decode:r=>Sn(r)});var _p=new TextEncoder,af=new TextDecoder;var To=512;function Do(r){return JSON.parse(af.decode(r))}var Ee={};G(Ee,{code:()=>ee,decode:()=>ff,encode:()=>uf,name:()=>cf});var cf="raw",ee=85;function uf(r){return fe(r)}function ff(r){return fe(r)}var Qn={};G(Qn,{identity:()=>Yn});var Lo=0,lf="identity",Fo=fe;function hf(r){return Xe(Lo,Fo(r))}var Yn={code:Lo,name:lf,encode:Fo,digest:hf};var ei={};G(ei,{sha256:()=>ne,sha512:()=>df});function Ke({name:r,code:e,encode:t}){return new Zn(r,e,t)}var Zn=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 Uo(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ne=Ke({name:"sha2-256",code:18,encode:Uo("SHA-256")}),df=Ke({name:"sha2-512",code:19,encode:Uo("SHA-512")});var ti={...Kn,...jn,...qn,...Vn,...Hn,...Nn,...Wn,...Tn,...Xn,...Gn},Fp={...ei,...Qn};function Oo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var zo=Oo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ri=Oo("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}),pf={utf8:zo,"utf-8":zo,hex:ti.base16,latin1:ri,ascii:ri,binary:ri,...ti},Er=pf;function he(r,e="utf8"){let t=Er[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function ni(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 Je=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ii(){}var si=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},mf=ni();function yf(r){return globalThis.Buffer!=null?te(r):mf(r)}var Gt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Je(ii,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 ai((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(Sr,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(Sr,t.length(),t)}uint64Number(e){return this._push(bo,Mt(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(Sr,t.length(),t)}sint64Number(e){let t=re.fromNumber(e).zzEncode();return this._push(Sr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(oi,1,e?1:0)}fixed32(e){return this._push(jt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=re.fromBigInt(e);return this._push(jt,4,t.lo)._push(jt,4,t.hi)}fixed64Number(e){let t=re.fromNumber(e);return this._push(jt,4,t.lo)._push(jt,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(ko,4,e)}double(e){return this._push(So,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(oi,1,0):this.uint32(t)._push(wf,t,e)}string(e){let t=Ao(e);return t!==0?this.uint32(t)._push(Rn,t,e):this._push(oi,1,0)}fork(){return this.states=new si(this),this.head=this.tail=new Je(ii,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(ii,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=yf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function oi(r,e,t){e[t]=r&255}function gf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var ai=class extends Je{next;constructor(e,t){super(gf,e,t),this.next=void 0}};function Sr(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function jt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function wf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Gt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(xf,e,r),this},Gt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(bf,e,r),this});function xf(r,e,t){e.set(r,t)}function bf(r,e,t){r.length<40?Rn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(he(r),t)}function ci(){return new Gt}function Wt(r,e){let t=ci();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var dt;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(dt||(dt={}));function Br(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function ui(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 Br("enum",dt.VARINT,t,n)}function Xt(r,e){return Br("message",dt.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=()=>ui(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Xt((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),vr.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=vr.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Wt(i,r.codec()),r.decode=i=>Vt(i,r.codec())})(ge||(ge={}));var vr;(function(r){let e;r.codec=()=>(e==null&&(e=Xt((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=>Wt(t,r.codec()),r.decode=t=>Vt(t,r.codec())})(vr||(vr={}));var Ro;(function(r){let e;r.codec=()=>(e==null&&(e=Xt((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=>Wt(t,r.codec()),r.decode=t=>Vt(t,r.codec())})(Ro||(Ro={}));var $o={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},_f=["directory","hamt-sharded-directory"],Mo=parseInt("0644",8),Vo=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(0,fi.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()?Vo:Mo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return _f.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(0,fi.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===Mo&&!this.isDirectory()&&(n=void 0),n===Vo&&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 ne.digest(r),i=C.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=Ee,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 li=R(K(),1);var jo=async(r,e,t)=>{let n=new v({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(P({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*kf(r,e,t){let n=-1,i;for await(let o of Pt(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function Go(r){return r.single===!0}var Ef=(r,e,t)=>async function(i){if(i.length===1&&Go(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Go(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 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===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 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}},Wo=async(r,e,t)=>t.layout(kf(r,e,t),Ef(r,e,t));function Sf(r){return Symbol.iterator in r}function Bf(r){return Symbol.asyncIterator in r}function vf(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(Sf(r))return async function*(){yield*r}();if(Bf(r))return r}catch{throw(0,li.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,li.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function Xo(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),Af(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(vf(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()=>Wo(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>jo(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Af(r){return r.content!=null}var hi=R(K(),1);var qo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,hi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof t=="string"||t instanceof String)yield he(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw(0,hi.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var Cf=174;function qt(r){let e=r?.maxChildrenPerNode??Cf;return async function t(n,i){let o=[];for await(let s of gr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function If(r){return r[Symbol.asyncIterator]!=null}function Nf(r){if(If(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=Nf;var Se=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}},Kt=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Jt=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ye=class extends Se{_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?Jt.bytes.byteLength:Kt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Se)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 we(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 Cr=R(Qo(),1);function Tf(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 Zm=Ke({name:"murmur3-32",code:35,encode:r=>Tf(Cr.default.x86.hash32(r))}),Qe=Ke({name:"murmur3-128",code:34,encode:r=>st.fromHex(Cr.default.x64.hash128(r))}),e0=Ke({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Cr.default.x64.hash128(r)).subarray(0,8)});var ts=R(Ir(),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 ts.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 rs(this,e,t)}toJSON(){return this.serialize(Uf,zf)}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"?he(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(Pf);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function Pf(r){return!!r}function Uf(r,e){return r.key}function zf(r){return r}async function rs(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof ie)await rs(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Of=[255,254,252,248,240,224,192,128],Rf=[1,3,7,15,31,63,127,255],Nr=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=$f(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 $f(r,e,t){let n=Mf(e,t);return(r&n)>>>e}function Mf(r,e){return Of[r]&Rf[Math.min(e+r-1,7)]}function ns(r){function e(t){return t instanceof Tr?t:new Tr(t,r)}return e}var Tr=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 Nr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function pt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:ns(r.hashFn)};return new ie(e)}async function Vf(r){return(await Qe.encode(r)).slice(0,8).reverse()}var is=BigInt(34),Hf=8,di=class extends Se{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Vf,bits:t.shardFanoutBits??Hf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=as(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ss(this._bucket,e,this,this.options))yield{...t,path:this.path}}},os=di;async function*ss(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 ss(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(jf(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:is,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),y=await we(l,e,n),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}function jf(r){return typeof r.flush=="function"}function as(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=as(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?Kt:Jt})}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?Kt:Jt})}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:is,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function pi(r,e,t,n){let i=e;e instanceof Ye&&e.estimateNodeSize()>t&&(i=await Gf(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 pi(i,o,t,n)}return i}async function Gf(r,e){let t=new os({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 cs=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Wf(r,e,t){let n=cs(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 pi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof Se))&&(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*us(r,e){if(!(r instanceof Se)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function fs(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 Wf(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*us(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*us(a.child,n))}}async function*Re(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??Ut(),d=t.chunkValidator??qo(),m=t.dagBuilder??Xo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??qt(),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??fs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Pt(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Dr(r,e,t={}){let n=await kn(Re([r],e,t));if(n==null)throw(0,mi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function ls(r,e,t={}){let n=await kn(Re([r],e,t));if(n==null)throw(0,mi.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function hs(r,e,t={}){return Dr({content:r},e,t)}async function ds(r,e,t={}){return Dr({content:r},e,t)}var Qt={cidVersion:1,rawLeaves:!0,layout:qt({maxChildrenPerNode:1024}),chunker:Ut({chunkSize:1048576})};async function*ps(r,e,t={}){yield*Re(r,e,{...Qt,...t})}async function ms(r,e,t={}){let{cid:n}=await hs(r,e,{...Qt,...t});return n}async function ys(r,e,t={}){let{cid:n}=await ds(r,e,{...Qt,...t});return n}async function gs(r,e,t={}){let{cid:n}=await Dr(r,e,{...Qt,...t});return n}async function ws(r,e,t={}){let{cid:n}=await ls({...r,path:r.path??"-"},e,{...Qt,...t});return n}var Zr=R(K(),1);function Xf(r){return r[Symbol.asyncIterator]!=null}function qf(r){if(Xf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var $e=qf;var Kf=["string","number","bigint","symbol"],Jf=["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 xs(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Kf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(Yf(r))return"Buffer";let t=Qf(r);return t||"Object"}function Yf(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function Qf(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(Jf.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 mt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",Zf=new TextDecoder,el=new TextEncoder;function Lr(r){return mt&&globalThis.Buffer.isBuffer(r)}function Fr(r){return r instanceof Uint8Array?Lr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Es=mt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):_s(r,e,t):(r,e,t)=>t-e>64?Zf.decode(r.subarray(e,t)):_s(r,e,t),Pr=mt?r=>r.length>64?globalThis.Buffer.from(r):bs(r):r=>r.length>64?el.encode(r):bs(r);var yt=mt?(r,e,t)=>Lr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ss=mt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Fr(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},Bs=mt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function vs(r,e){if(Lr(r)&&Lr(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 bs(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 _s(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 yi(n)}var ks=4096;function yi(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 tl=256,Ur=class{constructor(e=tl){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=Bs(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=yt(n,0,this.cursor)}else t=Ss(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",gt="CBOR encode error:",Zt=[];Zt[23]=1;Zt[24]=2;Zt[25]=3;Zt[26]=5;Zt[27]=9;function Te(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){Te(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){Te(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){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<M[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(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<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 As(r,e,t,n){return new _(p.uint,oe(r,e+1,n),2)}function Cs(r,e,t,n){return new _(p.uint,se(r,e+1,n),3)}function Is(r,e,t,n){return new _(p.uint,ae(r,e+1,n),5)}function Ns(r,e,t,n){return new _(p.uint,ce(r,e+1,n),9)}function de(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`)}}de.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};de.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ts(r,e,t,n){return new _(p.negint,-1-oe(r,e+1,n),2)}function Ds(r,e,t,n){return new _(p.negint,-1-se(r,e+1,n),3)}function Ls(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),5)}var gi=BigInt(-1),Fs=BigInt(1);function Ps(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,gi-BigInt(i),9)}function zr(r,e){let t=e.value,n=typeof t=="bigint"?t*gi-Fs:t*-1-1;H(r,e.type.majorEncoded,n)}zr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*gi-Fs:t*-1-1;return n<M[0]?1:n<M[1]?2:n<M[2]?3:n<M[3]?5:9};zr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function er(r,e,t,n){Te(r,e,t+n);let i=yt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function Us(r,e,t,n){return er(r,e,1,t)}function zs(r,e,t,n){return er(r,e,2,oe(r,e+1,n))}function Os(r,e,t,n){return er(r,e,3,se(r,e+1,n))}function Rs(r,e,t,n){return er(r,e,5,ae(r,e+1,n))}function $s(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 er(r,e,9,i)}function Or(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Pr(r.value):r.value),r.encodedBytes}function wt(r,e){let t=Or(e);H(r,e.type.majorEncoded,t.length),r.push(t)}wt.encodedSize=function(e){let t=Or(e);return H.encodedSize(t.length)+t.length};wt.compareTokens=function(e,t){return nl(Or(e),Or(t))};function nl(r,e){return r.length<e.length?-1:r.length>e.length?1:vs(r,e)}function tr(r,e,t,n,i){let o=t+n;Te(r,e,o);let s=new _(p.string,Es(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=yt(r,e+t,e+o)),s}function Ms(r,e,t,n){return tr(r,e,1,t,n)}function Vs(r,e,t,n){return tr(r,e,2,oe(r,e+1,n),n)}function Hs(r,e,t,n){return tr(r,e,3,se(r,e+1,n),n)}function js(r,e,t,n){return tr(r,e,5,ae(r,e+1,n),n)}function Gs(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 tr(r,e,9,i,n)}var Ws=wt;function xt(r,e,t,n){return new _(p.array,n,t)}function Xs(r,e,t,n){return xt(r,e,1,t)}function qs(r,e,t,n){return xt(r,e,2,oe(r,e+1,n))}function Ks(r,e,t,n){return xt(r,e,3,se(r,e+1,n))}function Js(r,e,t,n){return xt(r,e,5,ae(r,e+1,n))}function Ys(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 xt(r,e,9,i)}function Qs(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return xt(r,e,1,1/0)}function Rr(r,e){H(r,p.array.majorEncoded,e.value)}Rr.compareTokens=de.compareTokens;Rr.encodedSize=function(e){return H.encodedSize(e.value)};function bt(r,e,t,n){return new _(p.map,n,t)}function Zs(r,e,t,n){return bt(r,e,1,t)}function ea(r,e,t,n){return bt(r,e,2,oe(r,e+1,n))}function ta(r,e,t,n){return bt(r,e,3,se(r,e+1,n))}function ra(r,e,t,n){return bt(r,e,5,ae(r,e+1,n))}function na(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 bt(r,e,9,i)}function ia(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return bt(r,e,1,1/0)}function $r(r,e){H(r,p.map.majorEncoded,e.value)}$r.compareTokens=de.compareTokens;$r.encodedSize=function(e){return H.encodedSize(e.value)};function oa(r,e,t,n){return new _(p.tag,t,1)}function sa(r,e,t,n){return new _(p.tag,oe(r,e+1,n),2)}function aa(r,e,t,n){return new _(p.tag,se(r,e+1,n),3)}function ca(r,e,t,n){return new _(p.tag,ae(r,e+1,n),5)}function ua(r,e,t,n){return new _(p.tag,ce(r,e+1,n),9)}function Mr(r,e){H(r,p.tag.majorEncoded,e.value)}Mr.compareTokens=de.compareTokens;Mr.encodedSize=function(e){return H.encodedSize(e.value)};var ul=20,fl=21,ll=22,hl=23;function fa(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 la(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 wi(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 ha(r,e,t,n){return wi(xi(r,e+1),3,n)}function da(r,e,t,n){return wi(bi(r,e+1),5,n)}function pa(r,e,t,n){return wi(wa(r,e+1),9,n)}function Vr(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|ul]);else if(n===!0)r.push([p.float.majorEncoded|fl]);else if(n===null)r.push([p.float.majorEncoded|ll]);else if(n===void 0)r.push([p.float.majorEncoded|hl]);else{let i,o=!1;(!t||t.float64!==!0)&&(ya(n),i=xi(xe,1),n===i||Number.isNaN(n)?(xe[0]=249,r.push(xe.slice(0,3)),o=!0):(ga(n),i=bi(xe,1),n===i&&(xe[0]=250,r.push(xe.slice(0,5)),o=!0))),o||(dl(n),i=wa(xe,1),xe[0]=251,r.push(xe.slice(0,9)))}}Vr.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){ya(n);let i=xi(xe,1);if(n===i||Number.isNaN(n))return 3;if(ga(n),i=bi(xe,1),n===i)return 5}return 9};var ma=new ArrayBuffer(9),pe=new DataView(ma,1),xe=new Uint8Array(ma,0);function ya(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 xi(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 ga(r){pe.setFloat32(0,r,!1)}function bi(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 dl(r){pe.setFloat64(0,r,!1)}function wa(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)}Vr.compareTokens=de.compareTokens;function L(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Hr(r){return()=>{throw new Error(`${B} ${r}`)}}var E=[];for(let r=0;r<=23;r++)E[r]=L;E[24]=As;E[25]=Cs;E[26]=Is;E[27]=Ns;E[28]=L;E[29]=L;E[30]=L;E[31]=L;for(let r=32;r<=55;r++)E[r]=L;E[56]=Ts;E[57]=Ds;E[58]=Ls;E[59]=Ps;E[60]=L;E[61]=L;E[62]=L;E[63]=L;for(let r=64;r<=87;r++)E[r]=Us;E[88]=zs;E[89]=Os;E[90]=Rs;E[91]=$s;E[92]=L;E[93]=L;E[94]=L;E[95]=Hr("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)E[r]=Ms;E[120]=Vs;E[121]=Hs;E[122]=js;E[123]=Gs;E[124]=L;E[125]=L;E[126]=L;E[127]=Hr("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)E[r]=Xs;E[152]=qs;E[153]=Ks;E[154]=Js;E[155]=Ys;E[156]=L;E[157]=L;E[158]=L;E[159]=Qs;for(let r=160;r<=183;r++)E[r]=Zs;E[184]=ea;E[185]=ta;E[186]=ra;E[187]=na;E[188]=L;E[189]=L;E[190]=L;E[191]=ia;for(let r=192;r<=215;r++)E[r]=oa;E[216]=sa;E[217]=aa;E[218]=ca;E[219]=ua;E[220]=L;E[221]=L;E[222]=L;E[223]=L;for(let r=224;r<=243;r++)E[r]=Hr("simple values are not supported");E[244]=L;E[245]=L;E[246]=L;E[247]=fa;E[248]=Hr("simple values are not supported");E[249]=ha;E[250]=da;E[251]=pa;E[252]=L;E[253]=L;E[254]=L;E[255]=la;var be=[];for(let r=0;r<24;r++)be[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)be[31-r]=new _(p.negint,r,1);be[64]=new _(p.bytes,new Uint8Array(0),1);be[96]=new _(p.string,"",1);be[128]=new _(p.array,0,1);be[160]=new _(p.map,0,1);be[244]=new _(p.false,!1,1);be[245]=new _(p.true,!0,1);be[246]=new _(p.null,null,1);function ml(){let r=[];return r[p.uint.major]=de,r[p.negint.major]=zr,r[p.bytes.major]=wt,r[p.string.major]=Ws,r[p.array.major]=Rr,r[p.map.major]=$r,r[p.tag.major]=Mr,r[p.float.major]=Vr,r}var Uy=ml(),zy=new Ur,jr=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(`${gt} object contains circular references`);return new r(t,e)}},Me={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},Ve={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?Me.true:Me.false},null(r,e,t,n){return Me.null},undefined(r,e,t,n){return Me.undefined},ArrayBuffer(r,e,t,n){return new _(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new _(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Me.emptyArray,new _(p.break)]:Me.emptyArray;n=jr.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=_i(s,t,n);return t.addBreakTokens?[new _(p.array,r.length),i,new _(p.break)]:[new _(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Me.emptyMap,new _(p.break)]:Me.emptyMap;n=jr.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 yl(a,t),t.addBreakTokens?[new _(p.map,s),a,new _(p.break)]:[new _(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=xs(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(`${gt} unsupported type: ${n}`);return o(r,n,e,t)}function yl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var gl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Gr=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=E[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},rr=Symbol.for("DONE"),Wr=Symbol.for("BREAK");function wl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=_t(e,t);if(o===Wr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed array`)}if(o===rr)throw new Error(`${B} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function xl(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=_t(e,t);if(a===Wr){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===rr)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=_t(e,t);if(c===rr)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 _t(r,e){if(r.done())return rr;let t=r.next();if(t.type===p.break)return Wr;if(t.type.terminal)return t.value;if(t.type===p.array)return wl(t,r,e);if(t.type===p.map)return xl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=_t(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function ki(r,e){if(!(r instanceof Uint8Array))throw new Error(`${B} data to decode must be a Uint8Array`);e=Object.assign({},gl,e);let t=e.tokenizer||new Gr(r,e),n=_t(t,e);if(n===rr)throw new Error(`${B} did not find any content to decode`);if(n===Wr)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function nr(r,e){let[t,n]=ki(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var ba=42;function kl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function El(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,ba),new _(p.bytes,t)]}function Sl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Bl(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 xa={float64:!0,typeEncoders:{Object:El,undefined:Sl,number:Bl}},Xy={...xa,typeEncoders:{...xa.typeEncoders}};function vl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return C.decode(r.subarray(1))}var Xr={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Xr.tags[ba]=vl;var qy={...Xr,tags:Xr.tags.slice()};var _a=113;var ka=r=>nr(kl(r),Xr);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(`${gt} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Pr(JSON.stringify(t.value));e.push(n.length>32?Fr(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(`${gt} 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 kt=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,yi(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 Ei(r,e){return e=Object.assign({tokenizer:new kt(r,e)},e),nr(r,e)}function Il(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Si=class extends kt{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=Ht.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}},Bi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Bi.tags[42]=C.parse;var Ba=297;var va=r=>{let e=Il(r),t=Object.assign(Bi,{tokenizer:new Si(e,Bi)});return Ei(e,t)};var hg=new TextDecoder;var dg=new TextEncoder;var Qa=R(K(),1);var Ca=R(K(),1);function Et(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,Ca.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 Nl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=ka(c);return Et(h,c,r,e,t,n,o)},Ia=Nl;var Tl=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=va(c);return Et(h,c,r,e,t,n,o)},Na=Tl;var Ta=R(K(),1);function Dl(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var et=Dl;var ir=R(K(),1),Ll=(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,ir.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,ir.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,ir.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,ir.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},St=Ll;var Fl=r=>{async function*e(t={}){let{start:n,end:i}=St(r.length,t.offset,t.length),o=et(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},Pl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Ta.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:Fl(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Da=Pl;var Ul=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),h=Do(c);return Et(h,c,r,e,t,n,o)},La=Ul;var Fa=R(K(),1);var zl=r=>{async function*e(t={}){let{start:n,end:i}=St(r.length,t.offset,t.length),o=et(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},Ol=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=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:zl(c),depth:o,size:BigInt(c.length),node:c}}},Pa=Ol;var fr=R(K(),1);var or=R(K(),1);var Rl=async function(r){return(await Qe.encode(r)).slice(0,8).reverse()},$l=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)}))},Ua=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Ml=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},za=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw(0,or.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let l;try{l=v.unmarshal(r.Data)}catch(u){throw(0,or.default)(u,"ERR_NOT_UNIXFS")}if(l.type!=="hamt-sharded-directory")throw(0,or.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(l.fanout==null)throw(0,or.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let y=pt({hashFn:Rl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await $l(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Ua(s.pos,o),c=Ml(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=Ua(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),za(r,e,t,n,i)},Oa=za;function Vl(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 qr=Vl;function Hl(r){return r[Symbol.asyncIterator]!=null}function jl(r,e){let t=0;if(Hl(r))return async function*(){for await(let c of r)await e(c,t++)&&(yield c)}();let n=qr(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 Ra=jl;function Gl(r){return r[Symbol.asyncIterator]!=null}function Wl(r,e){let t=0;if(Gl(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=qr(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 Bt=Wl;function De(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var Kr=globalThis.CustomEvent??Event;async function*tt(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 Kr("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new Kr("task-complete"))})}c=!0,i.dispatchEvent(new Kr("task-complete"))}catch(d){h=d,i.dispatchEvent(new Kr("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 Jr=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}},vt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new Jr(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 Jr(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 vi=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function At(r={}){return Xl(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 Xl(r,e){e=e??{};let t=e.onEnd,n=new vt,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 vt,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 vt,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 vi)},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 ql(r){return r[Symbol.asyncIterator]!=null}function Kl(...r){let e=[];for(let t of r)ql(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=At({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 $a=Kl;function Be(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ai(r)){let n=r;r=()=>n.source}else if(Va(r)||Ma(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ai(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++)Ai(t[n])&&(t[n]=Yl(t[n]));return Jl(...t)}var Jl=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Ma=r=>r?.[Symbol.asyncIterator]!=null,Va=r=>r?.[Symbol.iterator]!=null,Ai=r=>r==null?!1:r.sink!=null&&r.source!=null,Yl=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=At({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Ma(o))i=async function*(){yield*o,n.end()};else if(Va(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return $a(n,i())}return r.source};var Ql=(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=>Bt(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>tt(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Ra(y,u=>u!=null))}return a},Ha=Ql;var rt=R(K(),1);var Ii=R(Ga(),1);var ar=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ni=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Wa=r=>globalThis.DOMException===void 0?new Ni(r):new DOMException(r),Xa=r=>{let e=r.reason===void 0?Wa("This operation was aborted."):r.reason;return e instanceof Error?e:Wa(e)};function Ti(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(Xa(y)),y.addEventListener("abort",()=>{f(Xa(y))})}if(t===Number.POSITIVE_INFINITY){r.then(h,f);return}let l=new ar;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 Di(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 cr=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=Di(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 ur=class extends Ii.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:cr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#r=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#u=e.intervalCap,this.#s=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#r||this.#n<this.#u}get#b(){return this.#o<this.#l}#_(){this.#o--,this.#h(),this.emit("next")}#k(){this.#w(),this.#g(),this.#f=void 0}get#E(){let e=Date.now();if(this.#i===void 0){let t=this.#c-e;if(t<0)this.#n=this.#e?this.#o:0;else return this.#f===void 0&&(this.#f=setTimeout(()=>{this.#k()},t)),!0}return!1}#h(){if(this.#t.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#E;if(this.#x&&this.#b){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#r||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#s),this.#c=Date.now()+this.#s)}#w(){this.#n===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#n=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#l}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#l=e,this.#d()}async#S(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#o++,this.#n++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ti(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#S(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ar&&!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 qa(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=et(e,n,i,o);t.push(h);return}if(e.Data==null)throw(0,rt.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(e.Data)}catch(h){throw(0,rt.default)(h,"ERR_NOT_UNIXFS")}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw(0,rt.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 Be(c,h=>Bt(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>tt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:y}of h){let u;switch(f.Hash.code){case V:u=O(l);break;case ee:u=l;break;default:t.end((0,rt.default)(new Error(`Unsupported codec: ${f.Hash.code}`),"ERR_NOT_UNIXFS"));return}let d=new ur({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new U("unixfs:exporter:walk:file",{cid:f.Hash})),await qa(r,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var th=(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}=St(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=At();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),qa(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,rt.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,rt.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},Li=th;var Qr=R(K(),1);var rh=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),Ka(e,n,i,o,s,c)}return a};async function*Ka(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw(0,Qr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=v.unmarshal(r.Data)}catch(f){throw(0,Qr.default)(f,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,Qr.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let c=(a.fanout-1n).toString(16).length,h=Be(s,f=>Bt(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:Ka(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Ja=rh;var nh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,ih={raw:Li,file:Li,directory:Ha,"hamt-sharded-directory":Ja,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},oh=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(0,fr.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{f=v.unmarshal(h.Data)}catch(u){throw(0,fr.default)(u,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Oa(h,n[0],s):u=nh(h,n[0]),u==null)throw(0,fr.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=ih[f.type](r,h,f,t,i,o,s);if(y==null)throw(0,fr.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}},Ya=oh;var sh={[V]:Ya,[ee]:Pa,[_a]:Ia,[Ba]:Na,[Yn.code]:Da,[To]:La},Za=async(r,e,t,n,i,o,s)=>{let a=sh[r.code];if(a==null)throw(0,Qa.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,e,t,n,Za,i,o,s)},ec=Za;var ah=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),ch=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=ah(r);return{cid:C.parse(t[0]),toResolve:t.slice(1)}}throw(0,Zr.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*Fi(r,e,t={}){let{cid:n,toResolve:i}=ch(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await ec(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw(0,Zr.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 $e(Fi(r,e,t));if(n==null)throw(0,Zr.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*en(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 uc=R(cc(),1),q=uc.default;var _e=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},ve=class extends _e{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},Z=class extends _e{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},He=class extends _e{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},nt=class extends _e{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Le=class extends _e{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Nt=class extends _e{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},nn=class extends _e{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Ae=class extends _e{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},j=class extends _e{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};function ph(r,e){try{if(typeof r=="string"&&r.length>0)return mh(r);if(typeof r=="number"&&isFinite(r))return e?.long?gh(r):yh(r);throw new Error("Value is not a string or number.")}catch(t){let n=wh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function mh(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 sn=ph;function yh(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 gh(r){let e=Math.abs(r);return e>=864e5?on(r,e,864e5,"day"):e>=36e5?on(r,e,36e5,"hour"):e>=6e4?on(r,e,6e4,"minute"):e>=1e3?on(r,e,1e3,"second"):`${r} ms`}function on(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function wh(r){return typeof r=="object"&&r!==null&&"message"in r}function Ui(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=sn,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,S)=>{if(I==="%%")return"%";k++;let D=t.formatters[S];if(typeof D=="function"){let me=x[k];I=D.call(g,me),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.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 an=Bh(),xh=["#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 bh(){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 _h(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+sn(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 kh=console.debug??console.log??(()=>{});function Eh(r){try{r?an?.setItem("debug",r):an?.removeItem("debug")}catch{}}function Sh(){let r;try{r=an?.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Bh(){try{return localStorage}catch{}}function vh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var fc=Ui({formatArgs:_h,save:Eh,load:Sh,useColors:bh,setupFormatters:vh,colors:xh,storage:an,log:kh});var ue=fc;ue.formatters.b=r=>r==null?"undefined":le.baseEncode(r);ue.formatters.t=r=>r==null?"undefined":Ue.baseEncode(r);ue.formatters.m=r=>r==null?"undefined":Ht.baseEncode(r);ue.formatters.p=r=>r==null?"undefined":r.toString();ue.formatters.c=r=>r==null?"undefined":r.toString();ue.formatters.k=r=>r==null?"undefined":r.toString();ue.formatters.a=r=>r==null?"undefined":r.toString();function Ah(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=Ah(`${r}:trace`);return ue.enabled(`${r}:trace`)&&ue.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=ue(`${r}:trace`)),Object.assign(ue(r),{error:ue(`${r}:error`),trace:e})}var $i=R(Ir(),1);function un(r){function e(t){return t instanceof cn?t:new cn(t,r)}return e}var cn=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 zi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},Ch=[255,254,252,248,240,224,192,128],Ih=[1,3,7,15,31,63,127,255],zi=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=Nh(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 Nh(r,e,t){let n=Th(e,t);return(r&n)>>>e}function Th(r,e){return Ch[r]&Ih[Math.min(e+r-1,7)]}var lr=BigInt(Qe.code),it=8;async function Tt(r){return(await Qe.encode(r)).subarray(0,8).reverse()}var dc=R(Ir(),1);var ke=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 Oi=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}},fn=class extends Oi{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Tt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for 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=hc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of lc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*lc(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 lc(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(Dh(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:lr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(P(h)),l=await ke(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Dh(r){return typeof r.flush=="function"}function hc(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=hc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?ln:hn})}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?ln:hn})}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:lr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var ln=C.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),hn=C.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ri=z("helia:unixfs:commands:utils:hamt-utils"),dn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),pc=async(r,e,t)=>{let n=new fn({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await $e(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},pn=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:lr});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 ke(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?");Ri("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}},mn=async(r,e,t,n)=>{let o=un(Tt)(he(e)),s=[];for(;;){let a=await t.get(r,n),c=O(a),h=new dc.default,f=await o.take(it),l=dn(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){Ri("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,Ri("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function yn(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=Lh(r);else if(i.type==="hamt-sharded-directory")o=await mc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Lh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?hn.bytes.byteLength:ln.bytes.byteLength;return e}async function mc(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=O(c);e+=await mc(h,e,t,n,i)}}return e}var Ce=z("helia:unixfs:components:utils:add-link");async function Dt(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 Ce("adding link to sharded directory"),Uh(r,e,t,n);Ce(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Ph(r,e,t,n);if(await yn(o.node,t,n.shardSplitThresholdBytes,n)){Ce("converting directory to sharded directory");let s=await Fh(o,t);o.cid=s.cid,o.node=O(await t.get(s.cid,n))}return o}var Fh=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 pc(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 Ce(`converted directory to sharded directory ${n.cid}`),n},Ph=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 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}},Uh=async(r,e,t,n)=>{let{path:i,hash:o}=await mn(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);Ce("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(Ce("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new nt;Ce("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?!");{Ce("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=un(Tt)(he(u));for(let x=0;x<i.length;x++)await m.take(it);for(;;){let x=await m.take(it),g=dn(x);y.Name=`${g}${u}`;let w=await o.take(it),b=dn(w);if(g===b){let A=new $i.default;A.set(w,!0),i.push({prefix:b,children:A,node:{Links:[]}});continue}let k=new $i.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 Ce("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(c,!0),Ce("adding %s to existing sub-shard",h);return pn(i,t,n)};async function je(r,e,t={}){let n=await Q(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 Lt(r,e,t,n){let i=await Q(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:zh(i.node),Hash:r}}function zh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var Oh=z("helia:unixfs:components:utils:resolve");async function Ie(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 Oh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ft(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([je(o.cid,t,n),Lt(i.cid,i.name,t,n)]);r=(await Dt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var Rh=q.bind({ignoreUndefined:!0}),$h={};async function*yc(r,e,t={}){let n=Rh($h,t),i=await Ie(r,n.path,e,n),o=await Q(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new nn;if(o.content==null)throw new Nt;yield*o.content(n)}var Mh=q.bind({ignoreUndefined:!0}),Vh=z("helia:unixfs:chmod"),Hh={recursive:!1,shardSplitThresholdBytes:262144};async function gc(r,e,t,n={}){let i=Mh(Hh,n),o=await Ie(r,i.path,t,n);if(Vh("chmod %c %d",o.cid,e),i.recursive){let y=await Be(async function*(){for await(let u of en(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=>Re(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 ke(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=>$e(u));if(y==null)throw new He(`Could not chmod ${o.cid.toString()}`);return Ft(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=O(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),Ft(l,o,t,i)}var jh=q.bind({ignoreUndefined:!0}),Gh=z("helia:unixfs:cp"),Wh={force:!1,shardSplitThresholdBytes:262144};async function wc(r,e,t,n,i={}){let o=jh(Wh,i);if(t.includes("/"))throw new j("Name must not have slashes");let[s,a]=await Promise.all([je(e,n,o),Lt(r,t,n,o)]);return Gh('Adding %c as "%s" to %c',r,t,e),(await Dt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Xh=q.bind({ignoreUndefined:!0}),qh={};async function*xc(r,e,t={}){let n=Xh(qh,t),i=await Ie(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 Nt;if(o.type!=="directory")throw new Ae;yield*o.content({offset:t.offset,length:t.length})}var Kh=q.bind({ignoreUndefined:!0}),bc=z("helia:unixfs:mkdir"),Jh={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function _c(r,e,t,n={}){let i=Kh(Jh,n);if(e.includes("/"))throw new j("Path must not have slashes");if((await Q(r,t,n)).type!=="directory")throw new Ae(`${r.toString()} was not a UnixFS directory`);bc("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([je(r,t,i),Lt(f,e,t,i)]);return bc("adding empty dir called %s to %c",e,r),(await Dt(l,y,t,{...i,allowOverwriting:i.force})).cid}var wn=z("helia:unixfs:utils:remove-link");async function kc(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"){wn(`removing ${e} from sharded directory`);let o=await Qh(r,e,t,n);return await yn(o.node,t,n.shardSplitThresholdBytes,n)?o:(wn("converting shard to flat directory %c",r.cid),Zh(o,t,n))}return wn(`removing link ${e} regular directory`),Yh(r,e,t,n)}var Yh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await ke(i,t,{...n,cidVersion:r.cid.version});return wn(`Updated regular directory ${o}`),{node:r.node,cid:o}},Qh=async(r,e,t,n)=>{let{path:i}=await mn(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 pn(i,t,n)},Zh=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 ke(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var ed=q.bind({ignoreUndefined:!0}),td=z("helia:unixfs:rm"),rd={shardSplitThresholdBytes:262144};async function Ec(r,e,t,n={}){let i=ed(rd,n);if(e.includes("/"))throw new j("Name must not have slashes");let o=await je(r,t,i);return td("Removing %s from %c",e,r),(await kc(o,e,t,{...i,cidVersion:r.version})).cid}var nd=q.bind({ignoreUndefined:!0}),id=z("helia:unixfs:stat"),od={};async function Sc(r,e,t={}){let n=nd(od,t),i=await Ie(r,t.path,e,n);id("stat %c",i.cid);let o=await Q(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===ee)n.localFileSize+=i.byteLength;else if(r.code===V){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 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 He(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var sd=q.bind({ignoreUndefined:!0}),ad=z("helia:unixfs:touch"),cd={recursive:!1,shardSplitThresholdBytes:262144};async function vc(r,e,t={}){let n=sd(cd,t),i=await Ie(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(ad("touch %c %o",i.cid,o),n.recursive){let y=await Be(async function*(){for await(let u of en(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=>Re(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 ke(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=>$e(u));if(y==null)throw new He(`Could not chmod ${i.cid.toString()}`);return Ft(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=O(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),Ft(l,i,e,n)}var xn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*ps(e,this.components.blockstore,t)}async addBytes(e,t={}){return ms(e,this.components.blockstore,t)}async addByteStream(e,t={}){return ys(e,this.components.blockstore,t)}async addFile(e,t={}){return gs(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return ws(e,this.components.blockstore,t)}async*cat(e,t={}){yield*yc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return gc(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return wc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*xc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return _c(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return Ec(e,t,this.components.blockstore,n)}async stat(e,t={}){return Sc(e,this.components.blockstore,t)}async touch(e,t={}){return vc(e,this.components.blockstore,t)}};function Ac(r){return new xn(r)}function Cc(r,e="utf8"){let t=Er[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}var Fe="/",Ic=new TextEncoder().encode(Fe),bn=Ic[0],hr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=he(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 Cc(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Fe))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=Ic),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(Fe).slice(1)}type(){return ud(this.baseNamespace())}name(){return fd(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Fe)||(e+=Fe),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Fe):new r(e.slice(0,-1).join(Fe))}child(e){return this.toString()===Fe?e:e.toString()===Fe?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...ld(e.map(t=>t.namespaces()))])}};function ud(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function fd(r){let e=r.split(":");return e[e.length-1]}function ld(r){return[].concat(...r)}function _n(r){return r.split("/").pop()??""}var hd=z("helia:mfs"),Mi=class{components;unixfs;root;key;constructor(e,t={}){this.components=e,this.key=new hr(t.key??"/locals/filesroot"),this.unixfs=Ac(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=_n(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=_n(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:_n(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(hd.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 dd(r,e={}){return new Mi(r,e)}return Pc(pd);})();
3
3
  return HeliaMfs}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helia/mfs",
3
- "version": "3.0.6",
3
+ "version": "3.0.7-e567717",
4
4
  "description": "A mutable filesystem powered by Helia",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/ipfs/helia/tree/main/packages/mfs#readme",
@@ -139,8 +139,8 @@
139
139
  "release": "aegir release"
140
140
  },
141
141
  "dependencies": {
142
- "@helia/unixfs": "^3.0.6",
143
- "@libp2p/interfaces": "^3.3.2",
142
+ "@helia/unixfs": "3.0.7-e567717",
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",
@@ -151,7 +151,7 @@
151
151
  },
152
152
  "devDependencies": {
153
153
  "@ipld/dag-pb": "^4.1.0",
154
- "aegir": "^42.2.5",
154
+ "aegir": "^44.0.1",
155
155
  "blockstore-core": "^4.4.0",
156
156
  "datastore-core": "^9.2.9",
157
157
  "delay": "^6.0.0",
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'
@@ -1,16 +0,0 @@
1
- {
2
- "MFS": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFS.html",
3
- ".:MFS": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFS.html",
4
- "MFSComponents": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFSComponents.html",
5
- ".:MFSComponents": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFSComponents.html",
6
- "MFSInit": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFSInit.html",
7
- ".:MFSInit": "https://ipfs.github.io/helia/interfaces/_helia_mfs.MFSInit.html",
8
- "RmOptions": "https://ipfs.github.io/helia/interfaces/_helia_mfs.RmOptions.html",
9
- ".:RmOptions": "https://ipfs.github.io/helia/interfaces/_helia_mfs.RmOptions.html",
10
- "MkdirOptions": "https://ipfs.github.io/helia/types/_helia_mfs.MkdirOptions.html",
11
- ".:MkdirOptions": "https://ipfs.github.io/helia/types/_helia_mfs.MkdirOptions.html",
12
- "WriteOptions": "https://ipfs.github.io/helia/types/_helia_mfs.WriteOptions.html",
13
- ".:WriteOptions": "https://ipfs.github.io/helia/types/_helia_mfs.WriteOptions.html",
14
- "mfs": "https://ipfs.github.io/helia/functions/_helia_mfs.mfs-1.html",
15
- ".:mfs": "https://ipfs.github.io/helia/functions/_helia_mfs.mfs-1.html"
16
- }