@helia/unixfs 5.1.0 → 6.0.0-9c67dbd4

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.
Files changed (76) hide show
  1. package/dist/index.min.js +2 -1
  2. package/dist/index.min.js.map +4 -4
  3. package/dist/src/commands/cat.d.ts.map +1 -1
  4. package/dist/src/commands/cat.js +3 -7
  5. package/dist/src/commands/cat.js.map +1 -1
  6. package/dist/src/commands/chmod.d.ts.map +1 -1
  7. package/dist/src/commands/chmod.js +8 -15
  8. package/dist/src/commands/chmod.js.map +1 -1
  9. package/dist/src/commands/cp.d.ts.map +1 -1
  10. package/dist/src/commands/cp.js +4 -12
  11. package/dist/src/commands/cp.js.map +1 -1
  12. package/dist/src/commands/ls.d.ts.map +1 -1
  13. package/dist/src/commands/ls.js +1 -5
  14. package/dist/src/commands/ls.js.map +1 -1
  15. package/dist/src/commands/mkdir.d.ts.map +1 -1
  16. package/dist/src/commands/mkdir.js +8 -16
  17. package/dist/src/commands/mkdir.js.map +1 -1
  18. package/dist/src/commands/rm.d.ts.map +1 -1
  19. package/dist/src/commands/rm.js +2 -9
  20. package/dist/src/commands/rm.js.map +1 -1
  21. package/dist/src/commands/stat.d.ts.map +1 -1
  22. package/dist/src/commands/stat.js +5 -8
  23. package/dist/src/commands/stat.js.map +1 -1
  24. package/dist/src/commands/touch.d.ts.map +1 -1
  25. package/dist/src/commands/touch.js +9 -16
  26. package/dist/src/commands/touch.js.map +1 -1
  27. package/dist/src/commands/utils/add-link.d.ts +3 -3
  28. package/dist/src/commands/utils/add-link.d.ts.map +1 -1
  29. package/dist/src/commands/utils/add-link.js +4 -2
  30. package/dist/src/commands/utils/add-link.js.map +1 -1
  31. package/dist/src/commands/utils/hamt-utils.d.ts +2 -2
  32. package/dist/src/commands/utils/hamt-utils.d.ts.map +1 -1
  33. package/dist/src/commands/utils/hamt-utils.js +2 -1
  34. package/dist/src/commands/utils/hamt-utils.js.map +1 -1
  35. package/dist/src/commands/utils/is-over-shard-threshold.d.ts.map +1 -1
  36. package/dist/src/commands/utils/is-over-shard-threshold.js +2 -1
  37. package/dist/src/commands/utils/is-over-shard-threshold.js.map +1 -1
  38. package/dist/src/commands/utils/persist.d.ts +1 -1
  39. package/dist/src/commands/utils/persist.d.ts.map +1 -1
  40. package/dist/src/commands/utils/persist.js +2 -1
  41. package/dist/src/commands/utils/persist.js.map +1 -1
  42. package/dist/src/commands/utils/remove-link.d.ts +2 -2
  43. package/dist/src/commands/utils/remove-link.d.ts.map +1 -1
  44. package/dist/src/commands/utils/remove-link.js +2 -1
  45. package/dist/src/commands/utils/remove-link.js.map +1 -1
  46. package/dist/src/commands/utils/resolve.d.ts +1 -1
  47. package/dist/src/commands/utils/resolve.d.ts.map +1 -1
  48. package/dist/src/constants.d.ts +3 -0
  49. package/dist/src/constants.d.ts.map +1 -0
  50. package/dist/src/constants.js +3 -0
  51. package/dist/src/constants.js.map +1 -0
  52. package/dist/src/index.d.ts +1 -1
  53. package/dist/src/index.d.ts.map +1 -1
  54. package/package.json +19 -26
  55. package/src/commands/cat.ts +3 -11
  56. package/src/commands/chmod.ts +8 -16
  57. package/src/commands/cp.ts +4 -14
  58. package/src/commands/ls.ts +1 -9
  59. package/src/commands/mkdir.ts +8 -18
  60. package/src/commands/rm.ts +2 -11
  61. package/src/commands/stat.ts +6 -12
  62. package/src/commands/touch.ts +9 -17
  63. package/src/commands/utils/add-link.ts +7 -5
  64. package/src/commands/utils/hamt-utils.ts +4 -3
  65. package/src/commands/utils/is-over-shard-threshold.ts +2 -1
  66. package/src/commands/utils/persist.ts +3 -2
  67. package/src/commands/utils/remove-link.ts +4 -3
  68. package/src/commands/utils/resolve.ts +1 -1
  69. package/src/constants.ts +2 -0
  70. package/src/index.ts +1 -1
  71. package/dist/src/commands/utils/constants.d.ts +0 -2
  72. package/dist/src/commands/utils/constants.d.ts.map +0 -1
  73. package/dist/src/commands/utils/constants.js +0 -2
  74. package/dist/src/commands/utils/constants.js.map +0 -1
  75. package/dist/typedoc-urls.json +0 -76
  76. package/src/commands/utils/constants.ts +0 -1
package/dist/index.min.js CHANGED
@@ -1,4 +1,5 @@
1
1
  (function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaUnixfs = factory()}(typeof self !== 'undefined' ? self : this, function () {
2
- "use strict";var HeliaUnixfs=(()=>{var zc=Object.create;var br=Object.defineProperty;var Lc=Object.getOwnPropertyDescriptor;var Fc=Object.getOwnPropertyNames;var Pc=Object.getPrototypeOf,Uc=Object.prototype.hasOwnProperty;var _r=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),q=(r,e)=>{for(var t in e)br(r,t,{get:e[t],enumerable:!0})},Yi=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Fc(e))!Uc.call(r,i)&&i!==t&&br(r,i,{get:()=>e[i],enumerable:!(n=Lc(e,i))||n.enumerable});return r};var Pt=(r,e,t)=>(t=r!=null?zc(Pc(r)):{},Yi(e||!r||!r.__esModule?br(t,"default",{value:r,enumerable:!0}):t,r)),Oc=r=>Yi(br({},"__esModule",{value:!0}),r);var is=_r((tr,Fr)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(c){if(!Array.isArray(c)&&!ArrayBuffer.isView(c))return!1;for(var d=0;d<c.length;d++)if(!Number.isInteger(c[d])||c[d]<0||c[d]>255)return!1;return!0}function i(c,d){return(c&65535)*d+(((c>>>16)*d&65535)<<16)}function o(c,d){return c<<d|c>>>32-d}function s(c){return c^=c>>>16,c=i(c,2246822507),c^=c>>>13,c=i(c,3266489909),c^=c>>>16,c}function a(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]+d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]+d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]+d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]+d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(c,d){c=[c[0]>>>16,c[0]&65535,c[1]>>>16,c[1]&65535],d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535];var m=[0,0,0,0];return m[3]+=c[3]*d[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=c[2]*d[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=c[3]*d[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=c[1]*d[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[2]*d[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=c[3]*d[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=c[0]*d[3]+c[1]*d[2]+c[2]*d[1]+c[3]*d[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function h(c,d){return d%=64,d===32?[c[1],c[0]]:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d|c[0]>>>32-d]:(d-=32,[c[1]<<d|c[0]>>>32-d,c[0]<<d|c[1]>>>32-d])}function f(c,d){return d%=64,d===0?c:d<32?[c[0]<<d|c[1]>>>32-d,c[1]<<d]:[c[1]<<d-32,0]}function l(c,d){return[c[0]^d[0],c[1]^d[1]]}function g(c){return c=l(c,[0,c[0]>>>1]),c=u(c,[4283543511,3981806797]),c=l(c,[0,c[0]>>>1]),c=u(c,[3301882366,444984403]),c=l(c,[0,c[0]>>>1]),c}t.x86.hash32=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%4,x=c.length-m,y=d,w=0,b=3432918353,k=461845907,v=0;v<x;v=v+4)w=c[v]|c[v+1]<<8|c[v+2]<<16|c[v+3]<<24,w=i(w,b),w=o(w,15),w=i(w,k),y^=w,y=o(y,13),y=i(y,5)+3864292196;switch(w=0,m){case 3:w^=c[v+2]<<16;case 2:w^=c[v+1]<<8;case 1:w^=c[v],w=i(w,b),w=o(w,15),w=i(w,k),y^=w}return y^=c.length,y=s(y),y>>>0},t.x86.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=d,w=d,b=d,k=d,v=0,C=0,E=0,D=0,ye=597399067,gr=2869860233,wr=951274213,xr=2716044179,N=0;N<x;N=N+16)v=c[N]|c[N+1]<<8|c[N+2]<<16|c[N+3]<<24,C=c[N+4]|c[N+5]<<8|c[N+6]<<16|c[N+7]<<24,E=c[N+8]|c[N+9]<<8|c[N+10]<<16|c[N+11]<<24,D=c[N+12]|c[N+13]<<8|c[N+14]<<16|c[N+15]<<24,v=i(v,ye),v=o(v,15),v=i(v,gr),y^=v,y=o(y,19),y+=w,y=i(y,5)+1444728091,C=i(C,gr),C=o(C,16),C=i(C,wr),w^=C,w=o(w,17),w+=b,w=i(w,5)+197830471,E=i(E,wr),E=o(E,17),E=i(E,xr),b^=E,b=o(b,15),b+=k,b=i(b,5)+2530024501,D=i(D,xr),D=o(D,18),D=i(D,ye),k^=D,k=o(k,13),k+=y,k=i(k,5)+850148119;switch(v=0,C=0,E=0,D=0,m){case 15:D^=c[N+14]<<16;case 14:D^=c[N+13]<<8;case 13:D^=c[N+12],D=i(D,xr),D=o(D,18),D=i(D,ye),k^=D;case 12:E^=c[N+11]<<24;case 11:E^=c[N+10]<<16;case 10:E^=c[N+9]<<8;case 9:E^=c[N+8],E=i(E,wr),E=o(E,17),E=i(E,xr),b^=E;case 8:C^=c[N+7]<<24;case 7:C^=c[N+6]<<16;case 6:C^=c[N+5]<<8;case 5:C^=c[N+4],C=i(C,gr),C=o(C,16),C=i(C,wr),w^=C;case 4:v^=c[N+3]<<24;case 3:v^=c[N+2]<<16;case 2:v^=c[N+1]<<8;case 1:v^=c[N],v=i(v,ye),v=o(v,15),v=i(v,gr),y^=v}return y^=c.length,w^=c.length,b^=c.length,k^=c.length,y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,y=s(y),w=s(w),b=s(b),k=s(k),y+=w,y+=b,y+=k,w+=y,b+=y,k+=y,("00000000"+(y>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(b>>>0).toString(16)).slice(-8)+("00000000"+(k>>>0).toString(16)).slice(-8)},t.x64.hash128=function(c,d){if(t.inputValidation&&!n(c))return e;d=d||0;for(var m=c.length%16,x=c.length-m,y=[0,d],w=[0,d],b=[0,0],k=[0,0],v=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)b=[c[E+4]|c[E+5]<<8|c[E+6]<<16|c[E+7]<<24,c[E]|c[E+1]<<8|c[E+2]<<16|c[E+3]<<24],k=[c[E+12]|c[E+13]<<8|c[E+14]<<16|c[E+15]<<24,c[E+8]|c[E+9]<<8|c[E+10]<<16|c[E+11]<<24],b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b),y=h(y,27),y=a(y,w),y=a(u(y,[0,5]),[0,1390208809]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k),w=h(w,31),w=a(w,y),w=a(u(w,[0,5]),[0,944331445]);switch(b=[0,0],k=[0,0],m){case 15:k=l(k,f([0,c[E+14]],48));case 14:k=l(k,f([0,c[E+13]],40));case 13:k=l(k,f([0,c[E+12]],32));case 12:k=l(k,f([0,c[E+11]],24));case 11:k=l(k,f([0,c[E+10]],16));case 10:k=l(k,f([0,c[E+9]],8));case 9:k=l(k,[0,c[E+8]]),k=u(k,C),k=h(k,33),k=u(k,v),w=l(w,k);case 8:b=l(b,f([0,c[E+7]],56));case 7:b=l(b,f([0,c[E+6]],48));case 6:b=l(b,f([0,c[E+5]],40));case 5:b=l(b,f([0,c[E+4]],32));case 4:b=l(b,f([0,c[E+3]],24));case 3:b=l(b,f([0,c[E+2]],16));case 2:b=l(b,f([0,c[E+1]],8));case 1:b=l(b,[0,c[E]]),b=u(b,v),b=h(b,31),b=u(b,C),y=l(y,b)}return y=l(y,[0,c.length]),w=l(w,[0,c.length]),y=a(y,w),w=a(w,y),y=g(y),w=g(w),y=a(y,w),w=a(w,y),("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof tr<"u"?(typeof Fr<"u"&&Fr.exports&&(tr=Fr.exports=t),tr.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)})(tr)});var ss=_r((d0,os)=>{os.exports=is()});var Ur=_r((b0,cs)=>{"use strict";cs.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(Lf,0),u=~(4294967295<<o+1),h=as(i&u);return a+h-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(Ff),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let u=Math.min(n,t),h=~(255<<u),f=o&h;i|=f<<8-t,o=o>>>u,n-=u,t-=u,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(Pf)}};function Lf(r,e){return r+as(e)}function as(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Ff(r,e){return r[0]-e[0]}function Pf(r){return r[1]}});var ec=_r((jw,Ui)=>{"use strict";var uh=Object.prototype.hasOwnProperty,Y="~";function ur(){}Object.create&&(ur.prototype=Object.create(null),new ur().__proto__||(Y=!1));function fh(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 fh(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 yn(r,e){--r._eventsCount===0?r._events=new ur:delete r._events[e]}function X(){this._events=new ur,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)uh.call(t,n)&&e.push(Y?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};X.prototype.listeners=function(e){var t=Y?Y+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};X.prototype.listenerCount=function(e){var t=Y?Y+e:e,n=this._events[t];return n?n.fn?1:n.length:0};X.prototype.emit=function(e,t,n,i,o,s){var a=Y?Y+e:e;if(!this._events[a])return!1;var u=this._events[a],h=arguments.length,f,l;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,n),!0;case 4:return u.fn.call(u.context,t,n,i),!0;case 5:return u.fn.call(u.context,t,n,i,o),!0;case 6:return u.fn.call(u.context,t,n,i,o,s),!0}for(l=1,f=new Array(h-1);l<h;l++)f[l-1]=arguments[l];u.fn.apply(u.context,f)}else{var g=u.length,c;for(l=0;l<g;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,n);break;case 4:u[l].fn.call(u[l].context,t,n,i);break;default:if(!f)for(c=1,f=new Array(h-1);c<h;c++)f[c-1]=arguments[c];u[l].fn.apply(u[l].context,f)}}return!0};X.prototype.on=function(e,t,n){return Qa(this,e,t,n,!1)};X.prototype.once=function(e,t,n){return Qa(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 yn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&yn(this,o);else{for(var a=0,u=[],h=s.length;a<h;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&u.push(s[a]);u.length?this._events[o]=u.length===1?u[0]:u:yn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Y?Y+e:e,this._events[t]&&yn(this,t)):(this._events=new ur,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Y;X.EventEmitter=X;typeof Ui<"u"&&(Ui.exports=X)});var Bd={};q(Bd,{globSource:()=>Tc,unixfs:()=>Ed,urlSource:()=>Dc});function Rc(r){return r[Symbol.asyncIterator]!=null}function $c(r){if(Rc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var kr=$c;function Mc(r){return r[Symbol.asyncIterator]!=null}function Hc(r,e=1){return e=Number(e),Mc(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 Sr=Hc;async function*Ut(r,e=1){for await(let t of Sr(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function je(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function Er(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 Qi=Symbol.for("@achingbrain/uint8arraylist");function Zi(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function Br(r){return!!r?.[Qi]}var ot=class r{bufs;length;[Qi]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(Br(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(Br(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=Zi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Zi(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(Br(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return je(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:je(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,u=a+s.byteLength;if(i=u,e>=u)continue;let h=e>=a&&e<u,f=t>a&&t<=u;if(h&&f){if(e===a&&t===u){n.push(s);break}let l=e-a;n.push(s.subarray(l,l+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(f){if(t===u){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!Br(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let l=0;l<o;l++)s[l]=-1;for(let l=0;l<i;l++)s[n[l]]=l;let a=s,u=this.byteLength-n.byteLength,h=n.byteLength-1,f;for(let l=t;l<=u;l+=f){f=0;for(let g=h;g>=0;g--){let c=this.get(l+g);if(n[g]!==c){f=Math.max(1,g-a[c]);break}}if(f===0)return l}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!Er(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 Vc=262144,Ot=(r={})=>{let e=r.chunkSize??Vc;return async function*(n){let i=new ot,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new ot,o=0;else{let u=new ot;u.append(i.sublist(e)),i=u,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var $={};q($,{code:()=>j,createLink:()=>bo,createNode:()=>xo,decode:()=>U,encode:()=>T,name:()=>Hu,prepare:()=>F,validate:()=>Kn});var Mn={};q(Mn,{base32:()=>Pe,base32hex:()=>ru,base32hexpad:()=>iu,base32hexpadupper:()=>ou,base32hexupper:()=>nu,base32pad:()=>eu,base32padupper:()=>tu,base32upper:()=>Qc,base32z:()=>su});var st={};q(st,{coerce:()=>le,empty:()=>eo,equals:()=>Ln,fromHex:()=>Gc,fromString:()=>Fn,isBinary:()=>qc,toHex:()=>jc,toString:()=>Pn});var eo=new Uint8Array(0);function jc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function Gc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):eo}function Ln(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 qc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Fn(r){return new TextEncoder().encode(r)}function Pn(r){return new TextDecoder().decode(r)}function Wc(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,u=r.charAt(0),h=Math.log(a)/Math.log(256),f=Math.log(256)/Math.log(a);function l(d){if(d instanceof Uint8Array||(ArrayBuffer.isView(d)?d=new Uint8Array(d.buffer,d.byteOffset,d.byteLength):Array.isArray(d)&&(d=Uint8Array.from(d))),!(d instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(d.length===0)return"";for(var m=0,x=0,y=0,w=d.length;y!==w&&d[y]===0;)y++,m++;for(var b=(w-y)*f+1>>>0,k=new Uint8Array(b);y!==w;){for(var v=d[y],C=0,E=b-1;(v!==0||C<x)&&E!==-1;E--,C++)v+=256*k[E]>>>0,k[E]=v%a>>>0,v=v/a>>>0;if(v!==0)throw new Error("Non-zero carry");x=C,y++}for(var D=b-x;D!==b&&k[D]===0;)D++;for(var ye=u.repeat(m);D<b;++D)ye+=r.charAt(k[D]);return ye}function g(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var m=0;if(d[m]!==" "){for(var x=0,y=0;d[m]===u;)x++,m++;for(var w=(d.length-m)*h+1>>>0,b=new Uint8Array(w);d[m];){var k=t[d.charCodeAt(m)];if(k===255)return;for(var v=0,C=w-1;(k!==0||v<y)&&C!==-1;C--,v++)k+=a*b[C]>>>0,b[C]=k%256>>>0,k=k/256>>>0;if(k!==0)throw new Error("Non-zero carry");y=v,m++}if(d[m]!==" "){for(var E=w-y;E!==w&&b[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=b[E++];return D}}}function c(d){var m=g(d);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:l,decodeUnsafe:g,decode:c}}var Kc=Wc,Xc=Kc,to=Xc;var Un=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")}},On=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return ro(this,e)}},Rn=class{decoders;constructor(e){this.decoders=e}or(e){return ro(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 ro(r,e){return new Rn({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var $n=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 Un(e,t,n),this.decoder=new On(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 $n(r,e,t,n)}function Fe({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=to(t,r);return at({prefix:e,name:r,encode:n,decode:o=>le(i(o))})}function Jc(r,e,t,n){let i=r.length;for(;r[i-1]==="=";)--i;let o=new Uint8Array(i*t/8|0),s=0,a=0,u=0;for(let h=0;h<i;++h){let f=e[r[h]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|f,s+=t,s>=8&&(s-=8,o[u++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return o}function Yc(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let u=0;u<r.length;++u)for(a=a<<8|r[u],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;(o.length*t&7)!==0;)o+="=";return o}function Zc(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function L({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=Zc(n);return at({prefix:e,name:r,encode(o){return Yc(o,n,t)},decode(o){return Jc(o,i,t,r)}})}var Pe=L({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Qc=L({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),eu=L({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),tu=L({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ru=L({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),nu=L({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),iu=L({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),ou=L({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),su=L({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Hn={};q(Hn,{base36:()=>Rt,base36upper:()=>au});var Rt=Fe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),au=Fe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Vn={};q(Vn,{base58btc:()=>he,base58flickr:()=>cu});var he=Fe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),cu=Fe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var uu=oo,no=128,fu=127,lu=~fu,hu=Math.pow(2,31);function oo(r,e,t){e=e||[],t=t||0;for(var n=t;r>=hu;)e[t++]=r&255|no,r/=128;for(;r&lu;)e[t++]=r&255|no,r>>>=7;return e[t]=r|0,oo.bytes=t-n+1,e}var du=jn,pu=128,io=127;function jn(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw jn.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&io)<<i:(s&io)*Math.pow(2,i),i+=7}while(s>=pu);return jn.bytes=o-n,t}var mu=Math.pow(2,7),yu=Math.pow(2,14),gu=Math.pow(2,21),wu=Math.pow(2,28),xu=Math.pow(2,35),bu=Math.pow(2,42),_u=Math.pow(2,49),ku=Math.pow(2,56),Su=Math.pow(2,63),Eu=function(r){return r<mu?1:r<yu?2:r<gu?3:r<wu?4:r<xu?5:r<bu?6:r<_u?7:r<ku?8:r<Su?9:10},Bu={encode:uu,decode:du,encodingLength:Eu},vu=Bu,$t=vu;function Mt(r,e=0){return[$t.decode(r,e),$t.decode.bytes]}function ct(r,e,t=0){return $t.encode(r,e,t),e}function ut(r){return $t.encodingLength(r)}function Ge(r,e){let t=e.byteLength,n=ut(r),i=n+ut(t),o=new Uint8Array(i+t);return ct(r,o,0),ct(t,o,n),o.set(e,i),new ft(r,t,e,o)}function Ir(r){let e=le(r),[t,n]=Mt(e),[i,o]=Mt(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 so(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Ln(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 ao(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Au(t,Gn(r),e??he.encoder);default:return Cu(t,Gn(r),e??Pe.encoder)}}var co=new WeakMap;function Gn(r){let e=co.get(r);if(e==null){let t=new Map;return co.set(r,t),t}return e}var A=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Ht)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==Nu)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=Ge(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&so(e.multihash,n.multihash)}toString(e){return ao(this,e)}toJSON(){return{"/":ao(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??uo(n,i,o.bytes))}else if(t[Tu]===!0){let{version:n,multihash:i,code:o}=t,s=Ir(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Ht)throw new Error(`Version 0 CID must use dag-pb (code: ${Ht}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=uo(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Ht,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=le(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ft(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,g]=Mt(e.subarray(t));return t+=g,l},i=n(),o=Ht;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),u=n(),h=t+u,f=h-s;return{version:i,codec:o,multihashCode:a,digestSize:u,multihashSize:f,size:h}}static parse(e,t){let[n,i]=Iu(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 Gn(o).set(n,e),o}};function Iu(r,e){switch(r[0]){case"Q":{let t=e??he;return[he.prefix,t.decode(`${he.prefix}${r}`)]}case he.prefix:{let t=e??he;return[he.prefix,t.decode(r)]}case Pe.prefix:{let t=e??Pe;return[Pe.prefix,t.decode(r)]}case Rt.prefix:{let t=e??Rt;return[Rt.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function Au(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 Cu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Ht=112,Nu=18;function uo(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 Tu=Symbol.for("@ipld/js-cid/CID");var Du=new TextDecoder;function qn(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 Ar(r,e){let t;[t,e]=qn(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 fo(r,e){let t;return[t,e]=qn(r,e),[t&7,t>>3,e]}function zu(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=fo(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]=Ar(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]=Ar(r,n),e.Name=Du.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]=qn(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 lo(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,u;if([a,u,t]=fo(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(u===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=Ar(r,t),n&&(i=!0)}else if(u===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let h;[h,t]=Ar(r,t),n.push(zu(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${u}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var po=new TextEncoder,ho=2**32,Lu=2**31;function Fu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Vt(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=po.encode(r.Name);t-=n.length,e.set(n,t),t=Vt(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Vt(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function mo(r){let e=Uu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Vt(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=Fu(r.Links[i],t.subarray(0,n));n-=o,n=Vt(t,n,o)-1,t[n]=18}return t}function Pu(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+ht(t)}if(typeof r.Name=="string"){let t=po.encode(r.Name).length;e+=1+t+ht(t)}return typeof r.Tsize=="number"&&(e+=1+ht(r.Tsize)),e}function Uu(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=Pu(t);e+=1+n+ht(n)}return e}function Vt(r,e,t){e-=ht(t);let n=e;for(;t>=Lu;)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((Ou(r)+6)/7)}function Ou(r){let e=0;return r>=ho&&(r=Math.floor(r/ho),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Ru[r]}var Ru=[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 $u=["Data","Links"],Mu=["Hash","Name","Tsize"],Wn=new TextEncoder;function go(r,e){if(r===e)return 0;let t=r.Name?Wn.encode(r.Name):[],n=e.Name?Wn.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 yo(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function wo(r){if(typeof r.asCID=="object"){let t=A.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function F(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=Wn.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(wo),e.Links.sort(go);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Kn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!yo(r,$u))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(!yo(t,Mu))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&&go(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function xo(r,e=[]){return F({Data:r,Links:e})}function bo(r,e,t){return wo({Hash:t,Name:r,Tsize:e})}function _o(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Hu="dag-pb",j=112;function T(r){Kn(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),mo(e)}function U(r){let e=_o(r),t=lo(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var jt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}},Cr=class r extends Error{static name="InvalidUnixFSMessageError";static code="ERR_INVALID_MESSAGE";name=r.name;code=r.code;constructor(e="Invalid message"){super(e)}};var Vu=Math.pow(2,7),ju=Math.pow(2,14),Gu=Math.pow(2,21),ko=Math.pow(2,28),So=Math.pow(2,35),Eo=Math.pow(2,42),Bo=Math.pow(2,49),J=128,Ue=127;function Gt(r){if(r<Vu)return 1;if(r<ju)return 2;if(r<Gu)return 3;if(r<ko)return 4;if(r<So)return 5;if(r<Eo)return 6;if(r<Bo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function vo(r,e,t=0){switch(Gt(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 Io(r,e){let t=r[e],n=0;if(n+=t&Ue,t<J||(t=r[e+1],n+=(t&Ue)<<7,t<J)||(t=r[e+2],n+=(t&Ue)<<14,t<J)||(t=r[e+3],n+=(t&Ue)<<21,t<J)||(t=r[e+4],n+=(t&Ue)*ko,t<J)||(t=r[e+5],n+=(t&Ue)*So,t<J)||(t=r[e+6],n+=(t&Ue)*Eo,t<J)||(t=r[e+7],n+=(t&Ue)*Bo,t<J))return n;throw new RangeError("Could not decode varint")}var Xn=new Float32Array([-0]),Oe=new Uint8Array(Xn.buffer);function Ao(r,e,t){Xn[0]=r,e[t]=Oe[0],e[t+1]=Oe[1],e[t+2]=Oe[2],e[t+3]=Oe[3]}function Co(r,e){return Oe[0]=r[e],Oe[1]=r[e+1],Oe[2]=r[e+2],Oe[3]=r[e+3],Xn[0]}var Jn=new Float64Array([-0]),W=new Uint8Array(Jn.buffer);function No(r,e,t){Jn[0]=r,e[t]=W[0],e[t+1]=W[1],e[t+2]=W[2],e[t+3]=W[3],e[t+4]=W[4],e[t+5]=W[5],e[t+6]=W[6],e[t+7]=W[7]}function To(r,e){return W[0]=r[e],W[1]=r[e+1],W[2]=r[e+2],W[3]=r[e+3],W[4]=r[e+4],W[5]=r[e+5],W[6]=r[e+6],W[7]=r[e+7],Jn[0]}var qu=BigInt(Number.MAX_SAFE_INTEGER),Wu=BigInt(Number.MIN_SAFE_INTEGER),ie=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return qe;if(e<qu&&e>Wu)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>Do&&(i=0n,++n>Do&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return qe;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):qe}},qe=new ie(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var Do=4294967296n;function zo(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 Lo(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 Yn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Nr(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Zn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,we(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw we(this,4);return Nr(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Nr(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=Co(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=To(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Lo(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new ie(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw we(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw we(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw we(this,8);let e=Nr(this.buf,this.pos+=4),t=Nr(this.buf,this.pos+=4);return new ie(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=Io(this.buf,this.pos);return this.pos+=Gt(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function Qn(r){return new Zn(r instanceof Uint8Array?r:r.subarray())}function qt(r,e,t){let n=Qn(r);return e.decode(n,void 0,t)}var ei={};q(ei,{base10:()=>Ku});var Ku=Fe({prefix:"9",name:"base10",alphabet:"0123456789"});var ti={};q(ti,{base16:()=>Xu,base16upper:()=>Ju});var Xu=L({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ju=L({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ri={};q(ri,{base2:()=>Yu});var Yu=L({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ni={};q(ni,{base256emoji:()=>rf});var Po=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}"),Zu=Po.reduce((r,e,t)=>(r[t]=e,r),[]),Qu=Po.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function ef(r){return r.reduce((e,t)=>(e+=Zu[t],e),"")}function tf(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=Qu[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var rf=at({prefix:"\u{1F680}",name:"base256emoji",encode:ef,decode:tf});var ii={};q(ii,{base64:()=>Wt,base64pad:()=>nf,base64url:()=>of,base64urlpad:()=>sf});var Wt=L({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),nf=L({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),of=L({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),sf=L({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var oi={};q(oi,{base8:()=>af});var af=L({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var si={};q(si,{identity:()=>cf});var cf=at({prefix:"\0",name:"identity",encode:r=>Pn(r),decode:r=>Fn(r)});var zp=new TextEncoder,uf=new TextDecoder;var Uo=512;function Oo(r){return JSON.parse(uf.decode(r))}var Ie={};q(Ie,{code:()=>Q,decode:()=>hf,encode:()=>lf,name:()=>ff});var ff="raw",Q=85;function lf(r){return le(r)}function hf(r){return le(r)}var ui={};q(ui,{identity:()=>ci});var Ro=0,df="identity",$o=le;function pf(r){return Ge(Ro,$o(r))}var ci={code:Ro,name:df,encode:$o,digest:pf};var li={};q(li,{sha256:()=>oe,sha512:()=>mf});function We({name:r,code:e,encode:t}){return new fi(r,e,t)}var fi=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?Ge(this.code,t):t.then(n=>Ge(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Ho(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=We({name:"sha2-256",code:18,encode:Ho("SHA-256")}),mf=We({name:"sha2-512",code:19,encode:Ho("SHA-512")});var hi={...si,...ri,...oi,...ei,...ti,...Mn,...Hn,...Vn,...ii,...ni},qp={...li,...ui};function jo(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Vo=jo("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),di=jo("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),yf={utf8:Vo,"utf-8":Vo,hex:hi.base16,latin1:di,ascii:di,binary:di,...hi},Go=yf;function O(r,e="utf8"){let t=Go[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function pi(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var Ke=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function mi(){}var gi=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},gf=pi();function wf(r){return globalThis.Buffer!=null?ne(r):gf(r)}var Xt=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ke(mi,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ke(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new wi((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(Tr,10,ie.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=ie.fromBigInt(e);return this._push(Tr,t.length(),t)}uint64Number(e){return this._push(vo,Gt(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=ie.fromBigInt(e).zzEncode();return this._push(Tr,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Tr,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(yi,1,e?1:0)}fixed32(e){return this._push(Kt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Kt,4,t.lo)._push(Kt,4,t.hi)}fixed64Number(e){let t=ie.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(Ao,4,e)}double(e){return this._push(No,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(yi,1,0):this.uint32(t)._push(bf,t,e)}string(e){let t=zo(e);return t!==0?this.uint32(t)._push(Yn,t,e):this._push(yi,1,0)}fork(){return this.states=new gi(this),this.head=this.tail=new Ke(mi,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new Ke(mi,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=wf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function yi(r,e,t){e[t]=r&255}function xf(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var wi=class extends Ke{next;constructor(e,t){super(xf,e,t),this.next=void 0}};function Tr(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&&(Xt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(_f,e,r),this},Xt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(kf,e,r),this});function _f(r,e,t){e.set(r,t)}function kf(r,e,t){r.length<40?Yn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(O(r),t)}function xi(){return new Xt}function Jt(r,e){let t=xi();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 Dr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function bi(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 Dr("enum",dt.VARINT,t,n)}function Yt(r,e){return Dr("message",dt.LENGTH_DELIMITED,r,e)}var xe;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>bi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Yt((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),zr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let u=i.uint32();switch(u>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=zr.codec().decode(i,i.uint32());break;default:i.skipType(u&7);break}}return s})),n),r.encode=i=>Jt(i,r.codec()),r.decode=i=>qt(i,r.codec())})(xe||(xe={}));var zr;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(zr||(zr={}));var qo;(function(r){let e;r.codec=()=>(e==null&&(e=Yt((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Jt(t,r.codec()),r.decode=t=>qt(t,r.codec())})(qo||(qo={}));var Wo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},Sf=["directory","hamt-sharded-directory"],Ko=parseInt("0644",8),Xo=parseInt("0755",8),Jo=BigInt(1024),I=class r{static unmarshal(e){let t=xe.decode(e);if(t.fanout!=null&&t.fanout>Jo)throw new Cr(`Fanout size was too large - ${t.fanout} > ${Jo}`);let n=new r({type:Wo[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:u}=e;if(t!=null&&!Object.values(Wo).includes(t))throw new jt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=u,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Xo:Ko:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return Sf.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=xe.DataType.Raw;break;case"directory":e=xe.DataType.Directory;break;case"file":e=xe.DataType.File;break;case"metadata":e=xe.DataType.Metadata;break;case"symlink":e=xe.DataType.Symlink;break;case"hamt-sharded-directory":e=xe.DataType.HAMTShard;break;default:throw new jt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Ko&&!this.isDirectory()&&(n=void 0),n===Xo&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var P=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function Yo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:$,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ie,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let u=await be(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:u,path:t.path})),{cid:u,unixfs:s,size:BigInt(o.length),block:o}}}}var Lr=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Re=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Zo=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(F({Data:n.marshal()})),o=await be(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*Ef(r,e,t){let n=-1,i;for await(let o of Ut(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 Qo(r){return r.single===!0}var Bf=(r,e,t)=>async function(i){if(i.length===1&&Qo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Qo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new I({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(F(l)),f.cid=await be(f.block,e,{...t,cidVersion:t.cidVersion}),f.size=BigInt(f.block.length)),t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:f.cid,path:f.originalPath})),{cid:f.cid,path:r.path,unixfs:f.unixfs,size:f.size,originalPath:f.originalPath}}let o=new I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},u=T(F(a)),h=await be(u,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:h,path:r.originalPath})),{cid:h,path:r.path,unixfs:o,size:BigInt(u.length+a.Links.reduce((f,l)=>f+(l.Tsize??0),0)),originalPath:r.originalPath,block:u}},es=async(r,e,t)=>t.layout(Ef(r,e,t),Bf(r,e,t));function vf(r){return Symbol.iterator in r}function If(r){return Symbol.asyncIterator in r}function Af(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(vf(r))return async function*(){yield*r}();if(If(r))return r}catch{throw new Re("Content was invalid")}throw new Re("Content was invalid")}function ts(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("/")),Cf(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let u=0n;for await(let h of r.chunker(r.chunkValidator(Af(i.content)))){let f=BigInt(h.byteLength);u+=f,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:u,chunkSize:f,path:i.path})),yield h}}(),originalPath:o},a=r.fileBuilder??es;yield async()=>a(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o},a=r.dirBuilder??Zo;yield async()=>a(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Cf(r){return r.content!=null}var rs=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Re("Content was invalid");if(typeof t=="string"||t instanceof String)yield O(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Re("Content was invalid")}};var Nf=174;function Zt(r){let e=r?.maxChildrenPerNode??Nf;return async function t(n,i){let o=[];for await(let s of Sr(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function Tf(r){return r[Symbol.asyncIterator]!=null}function Df(r){if(Tf(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 ns=Df;var Ae=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Qt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),er=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Xe=class extends Ae{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?er.bytes.byteLength:Qt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[u,h]of this._children.entries()){let f=h;if(h instanceof Ae)for await(let l of h.flush(e))f=l,yield l;f.size!=null&&f.cid!=null&&t.push({Name:u,Tsize:Number(f.size),Hash:f.cid})}let n=new I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(F(i)),s=await be(o,e,this.options),a=o.length+i.Links.reduce((u,h)=>u+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Pr=Pt(ss(),1);function zf(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 y0=We({name:"murmur3-32",code:35,encode:r=>zf(Pr.default.x86.hash32(r))}),Je=We({name:"murmur3-128",code:34,encode:r=>st.fromHex(Pr.default.x64.hash128(r))}),g0=We({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Pr.default.x64.hash128(r)).subarray(0,8)});var us=Pt(Ur(),1);var se=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new us.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 fs(this,e,t)}toJSON(){return this.serialize(Of,Rf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?O(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(Uf);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 Uf(r){return!!r}function Of(r,e){return r.key}function Rf(r){return r}async function fs(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await fs(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var $f=[255,254,252,248,240,224,192,128],Mf=[1,3,7,15,31,63,127,255],Or=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=Hf(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 Hf(r,e,t){let n=Vf(e,t);return(r&n)>>>e}function Vf(r,e){return $f[r]&Mf[Math.min(e+r-1,7)]}function ls(r){function e(t){return t instanceof Rr?t:new Rr(t,r)}return e}var Rr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Or(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:ls(r.hashFn)};return new se(e)}async function jf(r){return(await Je.encode(r)).slice(0,8).reverse()}var hs=BigInt(34),Gf=8,_i=class extends Ae{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:jf,bits:t.shardFanoutBits??Gf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ms(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of ps(this._bucket,e,this,this.options))yield{...t,path:this.path}}},ds=_i;async function*ps(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof se){let y;for await(let w of ps(m,e,null,n))y=w;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else if(qf(m.value)){let y=m.value,w;for await(let k of y.flush(e))w=k,yield w;if(w==null)throw new Error("Did not flush dir");let b=x+m.key;s.push({Name:b,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let y=m.value;if(y.cid==null)continue;let w=x+m.key,b=y.size;s.push({Name:w,Tsize:Number(b),Hash:y.cid}),a+=BigInt(b??0)}}let u=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:u,fanout:BigInt(r.tableSize()),hashType:hs,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(F(f)),g=await be(l,e,n),c=BigInt(l.byteLength)+a;yield{cid:g,unixfs:h,size:c}}function qf(r){return typeof r.flush=="function"}function ms(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof se){let g=ms(f,null,t);o.push({Name:l,Tsize:Number(g),Hash:t.cidVersion===0?Qt:er})}else if(typeof f.value.flush=="function"){let c=f.value.nodeSize();o.push({Name:l+f.key,Tsize:Number(c),Hash:t.cidVersion===0?Qt:er})}else{let g=f.value;if(g.cid==null)continue;let c=l+f.key,d=g.size;o.push({Name:c,Tsize:Number(d),Hash:g.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:hs,mtime:e?.mtime,mode:e?.mode});return T(F({Data:a.marshal(),Links:o})).length}async function ki(r,e,t,n){let i=e;e instanceof Xe&&e.estimateNodeSize()>t&&(i=await Wf(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 ki(i,o,t,n)}return i}async function Wf(r,e){let t=new ds({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var ys=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Kf(r,e,t){let n=ys(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let u=n[a];s+=`${s!==""?"/":""}${u}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(u,r),e=await ki(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(u);(f==null||!(f instanceof Ae))&&(f=new Xe({root:!1,dir:!0,parent:o,parentKey:u,path:s,dirty:!0,flat:!0,mtime:f?.unixfs?.mtime,mode:f?.unixfs?.mode},t)),await o.put(u,f),o=f}}return e}async function*gs(r,e){if(!(r instanceof Ae)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function ws(r){return async function*(t,n){let i=new Xe({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let u=`${a.originalPath??""}`.split("/")[0];u!=null&&u!==""&&(o==null?(o=u,s=!0):o!==u&&(s=!1)),i=await Kf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*gs(i,n);else for(let a of i.eachChildSeries())a!=null&&(yield*gs(a.child,n))}}async function*Ye(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,u=t.rawLeaves??!0,h=t.leafType??"file",f=t.fileImportConcurrency??50,l=t.blockWriteConcurrency??10,g=t.reduceSingleLeafToSelf??!0,c=t.chunker??Ot(),d=t.chunkValidator??rs(),m=t.dagBuilder??ts({chunker:c,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Zt(),bufferImporter:t.bufferImporter??Yo({cidVersion:a,rawLeaves:u,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:g,cidVersion:a,onProgress:t.onProgress,dirBuilder:t.dirBuilder,fileBuilder:t.fileBuilder}),x=t.treeBuilder??ws({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let y of x(Ut(m(n,e),f),e))yield{cid:y.cid,path:y.path,unixfs:y.unixfs,size:y.size}}async function xs(r,e,t={}){let n=await kr(Ye([r],e,t));if(n==null)throw new Lr("Nothing imported");return n}async function bs(r,e,t={}){return xs({content:r},e,t)}async function _s(r,e,t={}){return xs({content:r},e,t)}function Xf(r){return r[Symbol.asyncIterator]!=null}function Jf(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=Jf;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ce=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Ne=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},rr=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},$r=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},mt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Mr=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},$e=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},M=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var nr={cidVersion:1,rawLeaves:!0,layout:Zt({maxChildrenPerNode:1024}),chunker:Ot({chunkSize:1048576})};async function*Hr(r,e,t={}){yield*Ye(r,e,{...nr,...t})}async function ks(r,e,t={}){let{cid:n}=await bs(r,e,{...nr,...t});return n}async function Ss(r,e,t={}){let{cid:n}=await _s(r,e,{...nr,...t});return n}async function Es(r,e,t={}){if(r.path==null)throw new M("path is required");if(r.content==null)throw new M("content is required");let n=await _e(Hr([r],e,{...nr,...t,wrapWithDirectory:!0}));if(n==null)throw new M("Nothing imported");return n.cid}async function Bs(r,e,t={}){if(r.content!=null)throw new M("Directories cannot have content, use addFile instead");let i=await(r.path==null?kr:_e)(Hr([{...r,path:r.path??"-"}],e,{...nr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new M("Nothing imported");return i.cid}function yt(r){if(typeof r!="object"||r===null)return!1;let e=Object.getPrototypeOf(r);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in r)&&!(Symbol.iterator in r)}var{hasOwnProperty:Is}=Object.prototype,{propertyIsEnumerable:Yf}=Object,gt=(r,e,t)=>{Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0})},Zf=void 0,vs={concatArrays:!1,ignoreUndefined:!1},Vr=r=>{let e=[];for(let t in r)Is.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)Yf.call(r,n)&&e.push(n)}return e};function wt(r){return Array.isArray(r)?Qf(r):yt(r)?el(r):r}function Qf(r){let e=r.slice(0,0);return Vr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}function el(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Vr(r).forEach(t=>{gt(e,t,wt(r[t]))}),e}var As=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?gt(r,i,Si(r[i],e[i],n)):gt(r,i,wt(e[i])))}),r),tl=(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++)Is.call(o,a)&&(s.push(String(a)),o===r?gt(n,i++,o[a]):gt(n,i++,wt(o[a])));n=As(n,o,Vr(o).filter(a=>!s.includes(a)),t)}),n};function Si(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?tl(r,e,t):!yt(e)||!yt(r)?wt(e):As(r,e,Vr(e),t)}function K(...r){let e=Si(wt(vs),this!==Zf&&this||{},vs),t={_:{}};for(let n of r)if(n!==void 0){if(!yt(n))throw new TypeError("`"+n+"` is not an Option Object");t=Si(t,{_:n},e)}return t._}var jr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},de=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},Gr=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},H=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},qr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Wr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},Kr=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var 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 Cs(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 xt=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",sl=new TextDecoder,al=new TextEncoder;function Xr(r){return xt&&globalThis.Buffer.isBuffer(r)}function Jr(r){return r instanceof Uint8Array?Xr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var zs=xt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Ts(r,e,t):(r,e,t)=>t-e>64?sl.decode(r.subarray(e,t)):Ts(r,e,t),Yr=xt?r=>r.length>64?globalThis.Buffer.from(r):Ns(r):r=>r.length>64?al.encode(r):Ns(r);var bt=xt?(r,e,t)=>Xr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ls=xt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Jr(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},Fs=xt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Ps(r,e){if(Xr(r)&&Xr(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 Ns(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 Ts(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,u,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],u=r[e+2],(a&192)===128&&(u&192)===128&&(f=(i&15)<<12|(a&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],u=r[e+2],h=r[e+3],(a&192)===128&&(u&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(u&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return Ei(n)}var Ds=4096;function Ei(r){let e=r.length;if(e<=Ds)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ds));return t}var cl=256,Zr=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=Fs(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=bt(n,0,this.cursor)}else t=Ls(this.chunks,this.cursor);return e&&this.reset(),t}};var B="CBOR decode error:",_t="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 V=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Le(r,e,1);let n=r[e];if(t.strict===!0&&n<V[0])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Le(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<V[1])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Le(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<V[2])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Le(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<V[3])throw new Error(`${B} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${B} integers outside of the safe integer range are not supported`)}function Us(r,e,t,n){return new _(p.uint,ae(r,e+1,n),2)}function Os(r,e,t,n){return new _(p.uint,ce(r,e+1,n),3)}function Rs(r,e,t,n){return new _(p.uint,ue(r,e+1,n),5)}function $s(r,e,t,n){return new _(p.uint,fe(r,e+1,n),9)}function pe(r,e){return G(r,0,e.value)}function G(r,e,t){if(t<V[0]){let n=Number(t);r.push([e|n])}else if(t<V[1]){let n=Number(t);r.push([e|24,n])}else if(t<V[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<V[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<V[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${B} encountered BigInt larger than allowable range`)}}pe.encodedSize=function(e){return G.encodedSize(e.value)};G.encodedSize=function(e){return e<V[0]?1:e<V[1]?2:e<V[2]?3:e<V[3]?5:9};pe.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ms(r,e,t,n){return new _(p.negint,-1-ae(r,e+1,n),2)}function Hs(r,e,t,n){return new _(p.negint,-1-ce(r,e+1,n),3)}function Vs(r,e,t,n){return new _(p.negint,-1-ue(r,e+1,n),5)}var Bi=BigInt(-1),js=BigInt(1);function Gs(r,e,t,n){let i=fe(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new _(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${B} integers outside of the safe integer range are not supported`);return new _(p.negint,Bi-BigInt(i),9)}function Qr(r,e){let t=e.value,n=typeof t=="bigint"?t*Bi-js:t*-1-1;G(r,e.type.majorEncoded,n)}Qr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*Bi-js:t*-1-1;return n<V[0]?1:n<V[1]?2:n<V[2]?3:n<V[3]?5:9};Qr.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=bt(r,e+t,e+t+n);return new _(p.bytes,i,t+n)}function qs(r,e,t,n){return or(r,e,1,t)}function Ws(r,e,t,n){return or(r,e,2,ae(r,e+1,n))}function Ks(r,e,t,n){return or(r,e,3,ce(r,e+1,n))}function Xs(r,e,t,n){return or(r,e,5,ue(r,e+1,n))}function Js(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer bytes lengths not supported`);return or(r,e,9,i)}function en(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Yr(r.value):r.value),r.encodedBytes}function kt(r,e){let t=en(e);G(r,e.type.majorEncoded,t.length),r.push(t)}kt.encodedSize=function(e){let t=en(e);return G.encodedSize(t.length)+t.length};kt.compareTokens=function(e,t){return fl(en(e),en(t))};function fl(r,e){return r.length<e.length?-1:r.length>e.length?1:Ps(r,e)}function sr(r,e,t,n,i){let o=t+n;Le(r,e,o);let s=new _(p.string,zs(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=bt(r,e+t,e+o)),s}function Ys(r,e,t,n){return sr(r,e,1,t,n)}function Zs(r,e,t,n){return sr(r,e,2,ae(r,e+1,n),n)}function Qs(r,e,t,n){return sr(r,e,3,ce(r,e+1,n),n)}function ea(r,e,t,n){return sr(r,e,5,ue(r,e+1,n),n)}function ta(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer string lengths not supported`);return sr(r,e,9,i,n)}var ra=kt;function St(r,e,t,n){return new _(p.array,n,t)}function na(r,e,t,n){return St(r,e,1,t)}function ia(r,e,t,n){return St(r,e,2,ae(r,e+1,n))}function oa(r,e,t,n){return St(r,e,3,ce(r,e+1,n))}function sa(r,e,t,n){return St(r,e,5,ue(r,e+1,n))}function aa(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer array lengths not supported`);return St(r,e,9,i)}function ca(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return St(r,e,1,1/0)}function tn(r,e){G(r,p.array.majorEncoded,e.value)}tn.compareTokens=pe.compareTokens;tn.encodedSize=function(e){return G.encodedSize(e.value)};function Et(r,e,t,n){return new _(p.map,n,t)}function ua(r,e,t,n){return Et(r,e,1,t)}function fa(r,e,t,n){return Et(r,e,2,ae(r,e+1,n))}function la(r,e,t,n){return Et(r,e,3,ce(r,e+1,n))}function ha(r,e,t,n){return Et(r,e,5,ue(r,e+1,n))}function da(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${B} 64-bit integer map lengths not supported`);return Et(r,e,9,i)}function pa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${B} indefinite length items not allowed`);return Et(r,e,1,1/0)}function rn(r,e){G(r,p.map.majorEncoded,e.value)}rn.compareTokens=pe.compareTokens;rn.encodedSize=function(e){return G.encodedSize(e.value)};function ma(r,e,t,n){return new _(p.tag,t,1)}function ya(r,e,t,n){return new _(p.tag,ae(r,e+1,n),2)}function ga(r,e,t,n){return new _(p.tag,ce(r,e+1,n),3)}function wa(r,e,t,n){return new _(p.tag,ue(r,e+1,n),5)}function xa(r,e,t,n){return new _(p.tag,fe(r,e+1,n),9)}function nn(r,e){G(r,p.tag.majorEncoded,e.value)}nn.compareTokens=pe.compareTokens;nn.encodedSize=function(e){return G.encodedSize(e.value)};var yl=20,gl=21,wl=22,xl=23;function ba(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 _a(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 vi(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 ka(r,e,t,n){return vi(Ii(r,e+1),3,n)}function Sa(r,e,t,n){return vi(Ai(r,e+1),5,n)}function Ea(r,e,t,n){return vi(Aa(r,e+1),9,n)}function on(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)&&(va(n),i=Ii(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(Ia(n),i=Ai(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(bl(n),i=Aa(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}on.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){va(n);let i=Ii(Se,1);if(n===i||Number.isNaN(n))return 3;if(Ia(n),i=Ai(Se,1),n===i)return 5}return 9};var Ba=new ArrayBuffer(9),me=new DataView(Ba,1),Se=new Uint8Array(Ba,0);function va(r){if(r===1/0)me.setUint16(0,31744,!1);else if(r===-1/0)me.setUint16(0,64512,!1);else if(Number.isNaN(r))me.setUint16(0,32256,!1);else{me.setFloat32(0,r);let e=me.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)me.setUint16(0,31744,!1);else if(t===0)me.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?me.setUint16(0,0):i<-14?me.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):me.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function Ii(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 Ia(r){me.setFloat32(0,r,!1)}function Ai(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 Aa(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)}on.compareTokens=pe.compareTokens;function z(r,e,t){throw new Error(`${B} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function sn(r){return()=>{throw new Error(`${B} ${r}`)}}var S=[];for(let r=0;r<=23;r++)S[r]=z;S[24]=Us;S[25]=Os;S[26]=Rs;S[27]=$s;S[28]=z;S[29]=z;S[30]=z;S[31]=z;for(let r=32;r<=55;r++)S[r]=z;S[56]=Ms;S[57]=Hs;S[58]=Vs;S[59]=Gs;S[60]=z;S[61]=z;S[62]=z;S[63]=z;for(let r=64;r<=87;r++)S[r]=qs;S[88]=Ws;S[89]=Ks;S[90]=Xs;S[91]=Js;S[92]=z;S[93]=z;S[94]=z;S[95]=sn("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)S[r]=Ys;S[120]=Zs;S[121]=Qs;S[122]=ea;S[123]=ta;S[124]=z;S[125]=z;S[126]=z;S[127]=sn("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)S[r]=na;S[152]=ia;S[153]=oa;S[154]=sa;S[155]=aa;S[156]=z;S[157]=z;S[158]=z;S[159]=ca;for(let r=160;r<=183;r++)S[r]=ua;S[184]=fa;S[185]=la;S[186]=ha;S[187]=da;S[188]=z;S[189]=z;S[190]=z;S[191]=pa;for(let r=192;r<=215;r++)S[r]=ma;S[216]=ya;S[217]=ga;S[218]=wa;S[219]=xa;S[220]=z;S[221]=z;S[222]=z;S[223]=z;for(let r=224;r<=243;r++)S[r]=sn("simple values are not supported");S[244]=z;S[245]=z;S[246]=z;S[247]=ba;S[248]=sn("simple values are not supported");S[249]=ka;S[250]=Sa;S[251]=Ea;S[252]=z;S[253]=z;S[254]=z;S[255]=_a;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new _(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new _(p.negint,r,1);Ee[64]=new _(p.bytes,new Uint8Array(0),1);Ee[96]=new _(p.string,"",1);Ee[128]=new _(p.array,0,1);Ee[160]=new _(p.map,0,1);Ee[244]=new _(p.false,!1,1);Ee[245]=new _(p.true,!0,1);Ee[246]=new _(p.null,null,1);function kl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Qr,r[p.bytes.major]=kt,r[p.string.major]=ra,r[p.array.major]=tn,r[p.map.major]=rn,r[p.tag.major]=nn,r[p.float.major]=on,r}var ug=kl(),fg=new Zr,an=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${_t} object contains circular references`);return new r(t,e)}},Me={null:new _(p.null,null),undefined:new _(p.undefined,void 0),true:new _(p.true,!0),false:new _(p.false,!1),emptyArray:new _(p.array,0),emptyMap:new _(p.map,0)},He={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new _(p.float,r):r>=0?new _(p.uint,r):new _(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new _(p.uint,r):new _(p.negint,r)},Uint8Array(r,e,t,n){return new _(p.bytes,r)},string(r,e,t,n){return new _(p.string,r)},boolean(r,e,t,n){return r?Me.true:Me.false},null(r,e,t,n){return Me.null},undefined(r,e,t,n){return Me.undefined},ArrayBuffer(r,e,t,n){return new _(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new _(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Me.emptyArray,new _(p.break)]:Me.emptyArray;n=an.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Ci(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=an.createCheck(n,r);let a=[],u=0;for(let h of o)a[u++]=[Ci(h,t,n),Ci(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]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function Ci(r,e={},t){let n=Cs(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${_t} unsupported type: ${n}`);return o(r,n,e,t)}function Sl(r,e){e.mapSorter&&r.sort(e.mapSorter)}var El={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},cn=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=Ee[e];if(t===void 0){let n=S[e];if(!n)throw new Error(`${B} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},ar=Symbol.for("DONE"),un=Symbol.for("BREAK");function Bl(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Bt(e,t);if(o===un){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=Bt(e,t);if(a===un){if(r.value===1/0)break;throw new Error(`${B} got unexpected break to lengthed map`)}if(a===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${B} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${B} found repeat map key "${a}"`);let u=Bt(e,t);if(u===ar)throw new Error(`${B} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,u):i[a]=u}return n?o:i}function Bt(r,e){if(r.done())return ar;let t=r.next();if(t.type===p.break)return un;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=Bt(r,e);return e.tags[t.value](n)}throw new Error(`${B} tag not supported (${t.value})`)}throw new Error("unsupported")}function Ni(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 cn(r,e),n=Bt(t,e);if(n===ar)throw new Error(`${B} did not find any content to decode`);if(n===un)throw new Error(`${B} got unexpected break`);return[n,r.subarray(t.pos())]}function cr(r,e){let[t,n]=Ni(r,e);if(n.length>0)throw new Error(`${B} too many terminals, data makes no sense`);return t}var Na=42;function Cl(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=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new _(p.tag,Na),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 Ca={float64:!0,typeEncoders:{Object:Nl,undefined:Tl,number:Dl}},bg={...Ca,typeEncoders:{...Ca.typeEncoders}};function zl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var fn={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};fn.tags[Na]=zl;var _g={...fn,tags:fn.tags.slice()};var Ta=113;var Da=r=>cr(Cl(r),fn);var La=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===p.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===p.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[p.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[p.negint.major](e,t){this[p.uint.major](e,t)}[p.bytes.major](e,t){throw new Error(`${_t} unsupported type: Uint8Array`)}[p.string.major](e,t){this.prefix(e);let n=Yr(JSON.stringify(t.value));e.push(n.length>32?Jr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${_t} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};var vt=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${B} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${B} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let u=this.ch();if(a.includes(u))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new _(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${B} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${B} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new _(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new _(s>=0?p.uint:p.negint,s,this._pos-e):new _(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${B} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let u=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new _(p.string,u,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${B} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${B} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${B} unexpected unicode sequence at position ${this._pos}`);let u,h,f,l;switch(a){case 1:o<128&&(s=o);break;case 2:u=this.data[this._pos+1],(u&192)===128&&(l=(o&31)<<6|u&63,l>127&&(s=l));break;case 3:u=this.data[this._pos+1],h=this.data[this._pos+2],(u&192)===128&&(h&192)===128&&(l=(o&15)<<12|(u&63)<<6|h&63,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:u=this.data[this._pos+1],h=this.data[this._pos+2],f=this.data[this._pos+3],(u&192)===128&&(h&192)===128&&(f&192)===128&&(l=(o&15)<<18|(u&63)<<12|(h&63)<<6|f&63,l>65535&&l<1114112&&(s=l))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${B} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${B} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new _(p.string,Ei(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 Ti(r,e){return e=Object.assign({tokenizer:new vt(r,e)},e),cr(r,e)}function Pl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Di=class extends vt{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===p.map){let t=this._next();if(t.type===p.string&&t.value==="/"){let n=this._next();if(n.type===p.string){if(this._next().type!==p.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new _(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=Wt.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}},zi={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};zi.tags[42]=A.parse;var Fa=297;var Pa=r=>{let e=Pl(r),t=Object.assign(zi,{tokenizer:new Di(e,zi)});return Ti(e,t)};var Rg=new TextDecoder;var $g=new TextEncoder;function It(r,e,t,n,i,o,s){let a=r,u=i;for(;o.length>0;){let h=o[0];if(h in a){o.shift(),u=`${u}/${h}`;let f=A.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:u,toResolve:o}};a=a[h]}else throw new Kr(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Ul=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Da(u);return It(h,u,r,e,t,n,o)},Oa=Ul;var Ol=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Pa(u);return It(h,u,r,e,t,n,o)},Ra=Ol;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 et=Rl;var $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 new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},At=$l;var Ml=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Hl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=Ir(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Ml(u.digest),depth:o,size:BigInt(u.digest.length),node:u.digest}}},$a=Hl;var Vl=async(r,e,t,n,i,o,s,a)=>{let u=await s.get(r,a),h=Oo(u);return It(h,u,r,e,t,n,o)},Ma=Vl;var jl=r=>{async function*e(t={}){let{start:n,end:i}=At(r.length,t.offset,t.length),o=et(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},Gl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let u=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:jl(u),depth:o,size:BigInt(u.length),node:u}}},Ha=Gl;var ql=async function(r){return(await Je.encode(r)).slice(0,8).reverse()},Wl=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Va=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Kl=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},ja=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(c){throw new H(c.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let g=pt({hashFn:ql,bits:Math.log2(Number(l.fanout))});n={rootBucket:g,hamtDepth:1,lastBucket:g}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await Wl(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Va(s.pos,o),u=Kl(s);u.length>n.hamtDepth&&(n.lastBucket=u[n.hamtDepth],a=Va(n.lastBucket._posAtParent,o));let h=r.Links.find(l=>{if(l.Name==null)return!1;let g=l.Name.substring(0,o),c=l.Name.substring(o);return!(g!==a||c!==""&&c!==e)});if(h==null)return;if(h.Name!=null&&h.Name.substring(o)===e)return h.Hash;n.hamtDepth++;let f=await t.get(h.Hash,i);return r=U(f),ja(r,e,t,n,i)},Ga=ja;function Ct(r){return r?.extended===!1}function Xl(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 ln=Xl;function Jl(r){return r[Symbol.asyncIterator]!=null}function Yl(r,e){let t=0;if(Jl(r))return async function*(){for await(let u of r)await e(u,t++)&&(yield u)}();let n=ln(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){await s&&(yield i);for(let u of n)await e(u,t++)&&(yield u)}();let a=e;return function*(){s===!0&&(yield i);for(let u of n)a(u,t++)&&(yield u)}()}var qa=Yl;function Zl(r){return r[Symbol.asyncIterator]!=null}function Ql(r,e){let t=0;if(Zl(r))return async function*(){for await(let u of r)yield e(u,t++)}();let n=ln(r),{value:i,done:o}=n.next();if(o===!0)return function*(){}();let s=e(i,t++);if(typeof s.then=="function")return async function*(){yield await s;for(let u of n)yield e(u,t++)}();let a=e;return function*(){yield s;for(let u of n)yield a(u,t++)}()}var Nt=Ql;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var hn=globalThis.CustomEvent??Event;async function*tt(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),u=!1,h,f=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let d of r){if(o.length===t&&(s=te(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new hn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new hn("task-complete"))})}u=!0,i.dispatchEvent(new hn("task-complete"))}catch(d){h=d,i.dispatchEvent(new hn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*g(){for(;o.length>0&&o[0].done;){let d=o[0];if(o.shift(),d.ok)yield d.value;else throw f=!0,s.resolve(),d.err;s.resolve()}}function*c(){for(;l();)for(let d=0;d<o.length;d++)if(o[d].done){let m=o[d];if(o.splice(d,1),d--,m.ok)yield m.value;else throw f=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(l()||(a=te(),await a.promise),h!=null||(n?yield*g():yield*c(),h!=null))throw h;if(u&&o.length===0)break}}var dn=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||(e-1&e)!==0)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Tt=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new dn(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 dn(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 Li=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function pn(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 Tt,i,o,s,a=te(),u=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,y)=>{o=w=>{o=null,n.push(w);try{x(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Tt,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},g=x=>s?i:(s=!0,x!=null?f(x):h({done:!0})),c=()=>(n=new Tt,g(),{done:!0}),d=x=>(g(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:u,return:c,throw:d,push:l,end:g,get readableLength(){return n.size},onEmpty:async x=>{let y=x?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let w,b;y!=null&&(w=new Promise((k,v)=>{b=()=>{v(new Li)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,w])}finally{b!=null&&y!=null&&y?.removeEventListener("abort",b)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}var mn=class extends Error{type;code;constructor(e,t,n){super(e??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=t??"ABORT_ERR"}};async function Wa(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new mn(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new mn(t?.errorMessage,t?.errorCode,t?.errorName);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Fi=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=te(),this.haveNext=te()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=te(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=te(),await Wa(this.readNext.promise,t?.signal,t)}};function Ka(){return new Fi}function th(r){return r[Symbol.asyncIterator]!=null}async function rh(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*nh(r){let e=new AbortController,t=Ka();rh(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*ih(r){for(let e of r)yield*e}function oh(...r){let e=[];for(let t of r)th(t)||e.push(t);return e.length===r.length?ih(e):nh(r)}var Xa=oh;function Te(r,...e){if(r==null)throw new Error("Empty pipeline");if(Pi(r)){let n=r;r=()=>n.source}else if(Ya(r)||Ja(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Pi(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++)Pi(t[n])&&(t[n]=ah(t[n]));return sh(...t)}var sh=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Ja=r=>r?.[Symbol.asyncIterator]!=null,Ya=r=>r?.[Symbol.iterator]!=null,Pi=r=>r==null?!1:r.sink!=null&&r.source!=null,ah=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=pn({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(Ya(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Xa(n,i())}return r.source};var ch=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=u.offset??0,f=u.length??e.Links.length,l=e.Links.slice(h,f);u.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*Te(l,g=>Nt(g,c=>async()=>{let d=c.Name??"",m=`${n}/${d}`;return Ct(u)?{cid:c.Hash,name:d,path:m}:(await i(c.Hash,d,m,[],o+1,s,u)).entry}),g=>tt(g,{ordered:!0,concurrency:u.blockReadConcurrency}),g=>qa(g,c=>c!=null))}return a},Za=ch;var Oi=Pt(ec(),1);var fr=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Ri=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},tc=r=>globalThis.DOMException===void 0?new Ri(r):new DOMException(r),rc=r=>{let e=r.reason===void 0?tc("This operation was aborted."):r.reason;return e instanceof Error?e:tc(e)};function $i(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,a,h=new Promise((f,l)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:c}=e;c.aborted&&l(rc(c)),a=()=>{l(rc(c))},c.addEventListener("abort",a,{once:!0})}if(t===Number.POSITIVE_INFINITY){r.then(f,l);return}let g=new fr;s=o.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(c){l(c)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?f():i instanceof Error?l(i):(g.message=i??`Promise timed out after ${t} milliseconds`,l(g))},t),(async()=>{try{f(await r)}catch(c){l(c)}})()}).finally(()=>{h.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return h.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},h}function Mi(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var lr=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,id:t.id,run:e};if(this.size===0||this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Mi(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}setPriority(e,t){let n=this.#e.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#e.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var hr=class extends Oi.default{#e;#s;#o=0;#d;#a;#p=0;#r;#c;#t;#m;#n=0;#u;#i;#y;#x=1n;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:lr,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#s=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#a=e.interval,this.#t=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#i=e.autoStart===!1}get#b(){return this.#s||this.#o<this.#d}get#_(){return this.#n<this.#u}#k(){this.#n--,this.#f(),this.emit("next")}#S(){this.#w(),this.#g(),this.#c=void 0}get#E(){let e=Date.now();if(this.#r===void 0){let t=this.#p-e;if(t<0)this.#o=this.#e?this.#n:0;else return this.#c===void 0&&(this.#c=setTimeout(()=>{this.#S()},t)),!0}return!1}#f(){if(this.#t.size===0)return this.#r&&clearInterval(this.#r),this.#r=void 0,this.emit("empty"),this.#n===0&&this.emit("idle"),!1;if(!this.#i){let e=!this.#E;if(this.#b&&this.#_){let t=this.#t.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#s||this.#r!==void 0||(this.#r=setInterval(()=>{this.#w()},this.#a),this.#p=Date.now()+this.#a)}#w(){this.#o===0&&this.#n===0&&this.#r&&(clearInterval(this.#r),this.#r=void 0),this.#o=this.#e?this.#n:0,this.#l()}#l(){for(;this.#f(););}get concurrency(){return this.#u}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#l()}async#B(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){this.#t.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#x++).toString(),t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#t.enqueue(async()=>{this.#n++,this.#o++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=$i(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#B(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof fr&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#k()}},t),this.emit("add"),this.#f()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#i?(this.#i=!1,this.#l(),this):this}pause(){this.#i=!0}clear(){this.#t=new this.#m}async onEmpty(){this.#t.size!==0&&await this.#h("empty")}async onSizeLessThan(e){this.#t.size<e||await this.#h("next",()=>this.#t.size<e)}async onIdle(){this.#n===0&&this.#t.size===0||await this.#h("idle")}async#h(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#t.size}sizeBy(e){return this.#t.filter(e).length}get pending(){return this.#n}get isPaused(){return this.#i}};async function nc(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=et(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=et(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let u=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,g=l+a.blockSizes[h];if((i>=l&&i<g||o>=l&&o<=g||i<l&&o>g)&&u.push({link:f,blockStart:n}),n=g,n>o)break}await Te(u,h=>Nt(h,f=>async()=>{let l=await r.get(f.link.Hash,s);return{...f,block:l}}),h=>tt(h,{ordered:!0,concurrency:s.blockReadConcurrency}),async h=>{for await(let{link:f,block:l,blockStart:g}of h){let c;switch(f.Hash.code){case j:c=U(l);break;case Q:c=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));return}let d=new hr({concurrency:1});d.on("error",m=>{t.end(m)}),d.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:f.Hash})),await nc(r,c,t,g,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var lh=(r,e,t,n,i,o,s)=>{async function*a(u={}){let h=t.fileSize();if(h===void 0)throw new Error("File was a directory");let{start:f,end:l}=At(h,u.offset,u.length);if(l===0n)return;let g=0n,c=l-f,d=pn();u.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),nc(s,e,d,0n,f,l,u).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(g+=BigInt(m.byteLength),g>c)throw d.end(),new qr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");g===c&&d.end(),u.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:g,totalBytes:c,fileSize:h})),yield m}if(g<c)throw new Wr("Traversed entire DAG but did not read enough bytes")}return a},Hi=lh;var hh=(r,e,t,n,i,o,s)=>{function a(u={}){return u.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),ic(e,n,i,o,s,u)}return a};async function*ic(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let u=(a.fanout-1n).toString(16).length,h=Te(s,f=>Nt(f,l=>async()=>{let g=l.Name!=null?l.Name.substring(u):null;if(g!=null&&g!==""){let c=`${e}/${g}`;return Ct(o)?{entries:[{cid:l.Hash,name:g,path:c}]}:{entries:[(await t(l.Hash,g,c,[],n+1,i,o)).entry].filter(Boolean)}}else{let c=await i.get(l.Hash,o);return r=U(c),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:ic(r,e,t,n,i,o)}}}),f=>tt(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var oc=hh;var dh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,ph={raw:Hi,file:Hi,directory:Za,"hamt-sharded-directory":oc,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},mh=async(r,e,t,n,i,o,s,a)=>{if(Ct(a))return{entry:{cid:r,name:e,path:t}};let u=await s.get(r,a),h=U(u),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(c){throw new H(c.message)}if(t==null&&(t=e),n.length>0){let c;if(f?.type==="hamt-sharded-directory"?c=await Ga(h,n[0],s):c=dh(h,n[0]),c==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:c,toResolve:n,name:d??"",path:m}}let g=ph[f.type](r,h,f,t,i,o,s);if(g==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:g,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},sc=mh;var yh={[j]:sc,[Q]:Ha,[Ta]:Oa,[Fa]:Ra,[ci.code]:$a,[Uo]:Ma},ac=async(r,e,t,n,i,o,s)=>{let a=yh[r.code];if(a==null)throw new Gr(`No resolver for code ${r.code}`);return a(r,e,t,n,ac,i,o,s)},cc=ac;var gh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),wh=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=gh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new jr(`Unknown path type ${r}`)};async function*Vi(r,e,t={}){let{cid:n,toResolve:i}=wh(r),o=n.toString(),s=o,a=i.length;for(;;){let u=await cc(n,o,s,i,a,e,t);if(u.entry==null&&u.next==null)throw new de(`Could not resolve ${r}`);if(u.entry!=null&&(yield u.entry),u.next==null)return;i=u.next.toResolve,n=u.next.cid,o=u.next.name,s=u.next.path}}async function Z(r,e,t={}){let n=await _e(Vi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*gn(r,e,t={}){let n=await Z(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}function xh(r,e){try{if(typeof r=="string"&&r.length>0)return bh(r);if(typeof r=="number"&&isFinite(r))return e?.long?kh(r):_h(r);throw new Error("Value is not a string or number.")}catch(t){let n=Sh(t)?`${t.message}. value=${JSON.stringify(r)}`:"An unknown error has occured.";throw new Error(n)}}function bh(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 xn=xh;function _h(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 kh(r){let e=Math.abs(r);return e>=864e5?wn(r,e,864e5,"day"):e>=36e5?wn(r,e,36e5,"hour"):e>=6e4?wn(r,e,6e4,"minute"):e>=1e3?wn(r,e,1e3,"second"):`${r} ms`}function wn(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function Sh(r){return typeof r=="object"&&r!==null&&"message"in r}function ji(r){t.debug=t,t.default=t,t.coerce=u,t.disable=o,t.enable=i,t.enabled=s,t.humanize=xn,t.destroy=h,Object.keys(r).forEach(f=>{t[f]=r[f]}),t.names=[],t.skips=[],t.formatters={};function e(f){let l=0;for(let g=0;g<f.length;g++)l=(l<<5)-l+f.charCodeAt(g),l|=0;return t.colors[Math.abs(l)%t.colors.length]}t.selectColor=e;function t(f){let l,g=null,c,d;function m(...x){if(!m.enabled)return;let y=m,w=Number(new Date),b=w-(l||w);y.diff=b,y.prev=l,y.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let k=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";k++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[k];C=D.call(y,ye),x.splice(k,1),k--}return C}),t.formatArgs.call(y,x),(y.log||t.log).apply(y,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(c!==t.namespaces&&(c=t.namespaces,d=t.enabled(f)),d),set:x=>{g=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let g=t(this.namespace+(typeof l>"u"?":":l)+f);return g.log=this.log,g}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,g=(typeof f=="string"?f:"").split(/[\s,]+/),c=g.length;for(l=0;l<c;l++)g[l]&&(f=g[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,g;for(l=0,g=t.skips.length;l<g;l++)if(t.skips[l].test(f))return!1;for(l=0,g=t.names.length;l<g;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function u(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var bn=Nh(),Eh=["#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 vh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+xn(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 Ih=console.debug??console.log??(()=>{});function Ah(r){try{r?bn?.setItem("debug",r):bn?.removeItem("debug")}catch{}}function Ch(){let r;try{r=bn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function Nh(){try{return localStorage}catch{}}function Th(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var uc=ji({formatArgs:vh,save:Ah,load:Ch,useColors:Bh,setupFormatters:Th,colors:Eh,storage:bn,log:Ih});var re=uc;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Pe.baseEncode(r);re.formatters.m=r=>r==null?"undefined":Wt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>r==null?"undefined":fc(r.stack)??fc(r.message)??r.toString();function Dh(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function R(r){let e=Dh(`${r}:trace`);return re.enabled(`${r}:trace`)&&re.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=re(`${r}:trace`)),Object.assign(re(r),{error:re(`${r}:error`),trace:e})}function fc(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Ki=Pt(Ur(),1);function kn(r){function e(t){return t instanceof _n?t:new _n(t,r)}return e}var _n=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?je([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Gi(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},zh=[255,254,252,248,240,224,192,128],Lh=[1,3,7,15,31,63,127,255],Gi=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=Fh(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 Fh(r,e,t){let n=Ph(e,t);return(r&n)>>>e}function Ph(r,e){return zh[r]&Lh[Math.min(e+r-1,7)]}var dr=BigInt(Je.code),rt=8;async function Dt(r){return(await Je.encode(r)).subarray(0,8).reverse()}var dc=Pt(Ur(),1);var Be=async(r,e,t)=>{t.codec==null&&(t.codec=$);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var qi=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}},Sn=class extends qi{_bucket;constructor(e,t){super(e,t),this._bucket=pt({hashFn:Dt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for(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 c=0;c<i.length;c++){let d=i.get(c);if(d==null)continue;let m=c.toString(16).toUpperCase().padStart(2,"0");if(d instanceof se){let x;for await(let y of lc(d,e,null,n))x=y;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Uh(d.value)){let x=d.value,y;for await(let b of x.flush(e))y=b,yield y;if(y==null)throw new Error("Did not flush dir");let w=m+d.key;o.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else{let x=d.value;if(x.cid==null)continue;let y=m+d.key,w=x.size;o.push({Name:y,Tsize:Number(w),Hash:x.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),u=new I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:dr,mtime:t?.mtime,mode:t?.mode}),h={Data:u.marshal(),Links:o},f=T(F(h)),l=await Be(f,e,n),g=BigInt(f.byteLength)+s;yield{cid:l,unixfs:u,size:g}}function Uh(r){return typeof r.flush=="function"}function hc(r,e,t){let n=r._children,i=[];for(let u=0;u<n.length;u++){let h=n.get(u);if(h==null)continue;let f=u.toString(16).toUpperCase().padStart(2,"0");if(h instanceof se){let l=hc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?En:Bn})}else if(typeof h.value.flush=="function"){let g=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(g),Hash:t.cidVersion===0?En:Bn})}else{let l=h.value;if(l.cid==null)continue;let g=f+h.key,c=l.size;i.push({Name:g,Tsize:Number(c),Hash:l.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:dr,mtime:e?.mtime,mode:e?.mode});return T(F({Data:s.marshal(),Links:i})).length}var En=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Bn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Wi=R("helia:unixfs:commands:utils:hamt-utils"),vn=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),pc=async(r,e,t)=>{let n=new Sn({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},In=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let u=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:dr});u&&(l.mtime=n.mtime,l.mode=n.mode),s={Data:l.marshal(),Links:h.node.Links};let g=T(F(s));if(o=await Be(g,e,t),!u){let c=r[a+1];if(c==null)throw new Error("Was not operating on shard root but also had no parent?");Wi("updating link in parent sub-shard with prefix %s",c.prefix),c.node.Links=c.node.Links.filter(d=>d.Name!==c.prefix),c.node.Links.push({Name:c.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),g.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},An=async(r,e,t,n)=>{let o=kn(Dt)(O(e)),s=[];for(;;){let a=await t.get(r,n),u=U(a),h=new dc.default,f=await o.take(rt),l=vn(f);s.push({prefix:l,children:h,node:u});let g;for(let d of u.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(g=d)}if(g==null){Wi("no link found with prefix %s for %s",l,e);break}let c=g.Name??"";if(c.length<2)throw new Error("Invalid HAMT - link name was too short");if(c.length===2){r=g.Hash,Wi("descend into sub-shard with prefix %s",c);continue}break}return{path:s,hash:o}};async function Cn(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=Oh(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 Oh(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?Bn.bytes.byteLength:En.bytes.byteLength;return e}async function mc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===j){let u=await n.get(s.Hash,i),h=U(u);e+=await mc(h,e,t,n,i)}}return e}var De=R("helia:unixfs:components:utils:add-link");async function zt(r,e,t,n){if(r.node.Data==null)throw new M("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return De("adding link to sharded directory"),Mh(r,e,t,n);De(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await $h(r,e,t,n);if(await Cn(o.node,t,n.shardSplitThresholdBytes,n)){De("converting directory to sharded directory");let s=await Rh(o,t);o.cid=s.cid,o.node=U(await t.get(s.cid,n))}return o}var Rh=async(r,e)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await 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 De(`converted directory to sharded directory ${n.cid}`),n},$h=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new rr;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=F({Data:s,Links:i});let a=T(r.node),u=await oe.digest(a),h=A.create(r.cid.version,j,u);return await t.put(h,a),{node:r.node,cid:h}},Mh=async(r,e,t,n)=>{let{path:i,hash:o}=await An(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,u=parseInt(a,16);De("next prefix for %s is %s",e.Name,a);let h=`${a}${e.Name}`,f=s.node.Links.find(l=>(l.Name??"").startsWith(a));if(f!=null)if(De("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new rr;De("overwriting %s in sub-shard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was sub-shard?!");{De("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),g=s.node.Links.splice(l,1)[0],c=(g.Name??"").substring(2),m=kn(Dt)(O(c));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),y=vn(x);g.Name=`${y}${c}`;let w=await o.take(rt),b=vn(w);if(y===b){let v=new Ki.default;v.set(w,!0),i.push({prefix:b,children:v,node:{Links:[]}});continue}let k=new Ki.default;k.set(w,!0),k.set(x,!0),i.push({prefix:a,children:k,node:{Links:[g,{Name:`${b}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else De("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(u,!0),De("adding %s to existing sub-shard",h);return In(i,t,n)};async function Ve(r,e,t={}){let n=await Z(r,e,t);if(n.type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Lt(r,e,t,n){let i=await Z(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ce(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength: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 Vh=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await ns(Vi(i,t,n));if(o.length===0)throw new $r("Could not find path in directory");return Vh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Ft(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Ve(o.cid,t,n),Lt(i.cid,i.name,t,n)]);r=(await zt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var jh=K.bind({ignoreUndefined:!0}),Gh={};async function*yc(r,e,t={}){let n=jh(Gh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new Mr;if(o.content==null)throw new mt;yield*o.content(n)}var qh=K.bind({ignoreUndefined:!0}),Wh=R("helia:unixfs:chmod"),Kh={recursive:!1,shardSplitThresholdBytes:262144};async function gc(r,e,t,n={}){let i=qh(Kh,n),o=await ze(r,i.path,t,n);if(Wh("chmod %c %d",o.cid,e),i.recursive){let g=await Te(async function*(){for await(let c of gn(o.cid,t,n)){let d,m=[];if(c.type==="raw")d=new I({type:"file",data:c.node});else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mode=e;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,t,{...i,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...i,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${o.cid.toString()}`);return Ft(g.cid,o,t,i)}let s=await t.get(o.cid,n),a,u=[];if(o.cid.code===Q)a=new I({type:"file",data:s});else{let g=U(s);if(g.Data==null)throw new ee(`${o.cid.toString()} had no data`);u=g.Links,a=I.unmarshal(g.Data)}a.mode=e;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(o.cid.version,j,f);return await t.put(l,h),Ft(l,o,t,i)}var Xh=K.bind({ignoreUndefined:!0}),Jh=R("helia:unixfs:cp"),Yh={force:!1,shardSplitThresholdBytes:262144};async function wc(r,e,t,n,i={}){let o=Xh(Yh,i);if(t.includes("/"))throw new M("Name must not have slashes");let[s,a]=await Promise.all([Ve(e,n,o),Lt(r,t,n,o)]);return Jh('Adding %c as "%s" to %c',r,t,e),(await zt(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var Zh=K.bind({ignoreUndefined:!0}),Qh={};async function*xc(r,e,t={}){let n=Zh(Qh,t),i=await ze(r,n.path,e,n),o=await Z(i.cid,e,{...t,extended:!0});if(o.type==="file"||o.type==="raw"){t.extended===!1?yield{name:o.name,path:o.path,cid:o.cid}:yield o;return}if(o.content==null)throw new mt;if(o.type!=="directory")throw new $e;yield*o.content(t)}var ed=K.bind({ignoreUndefined:!0}),bc=R("helia:unixfs:mkdir"),td={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function _c(r,e,t,n={}){let i=ed(td,n);if(e.includes("/"))throw new M("Path must not have slashes");if((await Z(r,t,n)).type!=="directory")throw new $e(`${r.toString()} was not a UnixFS directory`);bc("creating %s",e);let a={Data:new I({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},u=T(a),h=await oe.digest(u),f=A.create(i.cidVersion,j,h);await t.put(f,u);let[l,g]=await Promise.all([Ve(r,t,i),Lt(f,e,t,i)]);return bc("adding empty dir called %s to %c",e,r),(await zt(l,g,t,{...i,allowOverwriting:i.force})).cid}var Tn=R("helia:unixfs:utils:remove-link");async function kc(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Tn(`removing ${e} from sharded directory`);let o=await nd(r,e,t,n);return await Cn(o.node,t,n.shardSplitThresholdBytes,n)?o:(Tn("converting shard to flat directory %c",r.cid),id(o,t,n))}return Tn(`removing link ${e} regular directory`),rd(r,e,t,n)}var rd=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await Be(i,t,{...n,cidVersion:r.cid.version});return Tn(`Updated regular directory ${o}`),{node:r.node,cid:o}},nd=async(r,e,t,n)=>{let{path:i}=await An(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(h=>(h.Name??"").substring(2)===e).map(h=>h.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),u=parseInt(a,16);if(o.node.Links=o.node.Links.filter(h=>h.Name!==s),o.children.unset(u),o.node.Links.length===1)for(;i.length!==1;){let h=i[i.length-1];if(h==null||h.node.Links.length>1)break;i.pop();let f=i[i.length-1];if(f==null)break;let l=h.node.Links[0];f.node.Links=f.node.Links.filter(g=>!(g.Name??"").startsWith(f.prefix)),f.node.Links.push({Hash:l.Hash,Name:`${f.prefix}${(l.Name??"").substring(2)}`,Tsize:l.Tsize})}return In(i,t,n)},id=async(r,e,t)=>{if(r.node.Data==null)throw new M("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Z(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let u of i.content()){let h=0;u.node instanceof Uint8Array?h=u.node.byteLength:h=T(u.node).length,n.Links.push({Hash:u.cid,Name:u.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(F(n));return{cid:await Be(s,e,{codec:$,cidVersion:r.cid.version,signal:t.signal}),node:n}};var od=K.bind({ignoreUndefined:!0}),sd=R("helia:unixfs:rm"),ad={shardSplitThresholdBytes:262144};async function Sc(r,e,t,n={}){let i=od(ad,n);if(e.includes("/"))throw new M("Name must not have slashes");let o=await Ve(r,t,i);return sd("Removing %s from %c",e,r),(await kc(o,e,t,{...i,cidVersion:r.version})).cid}var Xi={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},Ec={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},Bc=new globalThis.TextEncoder;function cd(r,e){let t=Xi[e],n=Ec[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function ud(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Xi[e],i=Ec[e],o=r;for(;o.length>0;){let s=Bc.encodeInto(o,t);o=o.slice(s.read);for(let a=0;a<s.written;a++)i^=BigInt(t[a]),i=BigInt.asUintN(e,i*n)}return i}function Ji(r,{size:e=32,utf8Buffer:t}={}){if(!Xi[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return ud(r,e,t);r=Bc.encode(r)}return cd(r,e)}var pr={hash:r=>Number(Ji(r,{size:32})),hashV:(r,e)=>fd(pr.hash(r,e))};function fd(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),O(e,"base16")}var vc=64,ve=class{fp;h;seed;constructor(e,t,n,i=2){if(i>vc)throw new TypeError("Invalid Fingerprint Size");let o=t.hashV(e,n),s=ge(i);for(let a=0;a<s.length;a++)s[a]=o[a];s.length===0&&(s[0]=7),this.fp=s,this.h=t,this.seed=n}hash(){return this.h.hash(this.fp,this.seed)}equals(e){return e?.fp instanceof Uint8Array?Er(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof ve))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var ld=500,mr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??pr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<ld;a++){let u=this.buckets[s].swap(t);if(u!=null&&(s=(s^u.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(u)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=O(e));let t=new ve(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var yr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??pr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new mr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=O(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new mr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=O(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var Ic=1877,Dn=1604,hd=K.bind({ignoreUndefined:!0}),dd=R("helia:unixfs:stat"),pd={};async function Ac(r,e,t={}){let n=hd(pd,t),i=await ze(r,t.path,e,n);dd("stat %c",i.cid);let o=await Z(i.cid,e,n);if(o.type==="raw")return t.extended===!0?wd(o):gd(o);if(o.type==="file"||o.type==="directory")return t.extended===!0?yd(o,e,t.filter??new yr({filterSize:1024}),t):md(o);throw new Ce}function md(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?Ic:Dn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function yd(r,e,t,n){let i=await Cc(r.cid,e,!1,t,n);return{type:r.type,cid:r.cid,unixfs:r.unixfs,size:r.unixfs.isDirectory()?i.dirSize:r.unixfs.fileSize(),mode:r.unixfs.mode??(r.unixfs.isDirectory()?Ic:Dn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function gd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Dn,mtime:void 0,size:BigInt(r.node.byteLength)}}function wd(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Dn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function Cc(r,e,t,n,i){let o={dirSize:0n,localSize:0n,dagSize:0n,deduplicatedDagSize:0n,blocks:0n,uniqueBlocks:0n};try{let s=n.has(r.bytes);n.add(r.bytes);let a=await e.get(r,i);if(o.blocks++,o.dagSize+=BigInt(a.byteLength),s||(o.uniqueBlocks++,o.deduplicatedDagSize+=BigInt(a.byteLength)),r.code===Q)o.localSize+=BigInt(a.byteLength),t&&(o.dirSize+=BigInt(a.byteLength));else if(r.code===j){let u=U(a),h;if(u.Data!=null&&(h=I.unmarshal(u.Data)),u.Links.length>0){for(let f of u.Links){let l=await Cc(f.Hash,e,xd(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Ne(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function xd(r,e){if(e==null)return!1;let t=r.Name;return t==null?!1:e.type==="directory"?!0:e.type==="hamt-sharded-directory"&&t.length>2}var bd=K.bind({ignoreUndefined:!0}),_d=R("helia:unixfs:touch"),kd={recursive:!1,shardSplitThresholdBytes:262144};async function Nc(r,e,t={}){let n=bd(kd,t),i=await ze(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(_d("touch %c %o",i.cid,o),n.recursive){let g=await Te(async function*(){for await(let c of gn(i.cid,e)){let d,m;if(c.type==="raw")d=new I({data:c.node}),m=[];else if(c.type==="file"||c.type==="directory")d=c.unixfs,m=c.node.Links;else throw new Ce;d.mtime=o;let x={Data:d.marshal(),Links:m};yield{path:c.path,content:x}}},c=>Ye(c,e,{...n,dagBuilder:async function*(d,m){for await(let x of d)yield async function(){let y=x.content,w=T(y),b=await Be(w,m,{...n,cidVersion:r.version});if(y.Data==null)throw new ee(`${b} had no data`);let k=I.unmarshal(y.Data);return{cid:b,size:BigInt(w.length),path:x.path,unixfs:k}}}}),async c=>_e(c));if(g==null)throw new Ne(`Could not chmod ${i.cid.toString()}`);return Ft(g.cid,i,e,n)}let s=await e.get(i.cid,t),a,u=[];if(i.cid.code===Q)a=new I({data:s});else{let g=U(s);if(u=g.Links,g.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=I.unmarshal(g.Data)}a.mtime=o;let h=T({Data:a.marshal(),Links:u}),f=await oe.digest(h),l=A.create(i.cid.version,j,f);return await e.put(l,h),Ft(l,i,e,n)}var zn=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Hr(e,this.components.blockstore,t)}async addBytes(e,t={}){return ks(e,this.components.blockstore,t)}async addByteStream(e,t={}){return Ss(e,this.components.blockstore,t)}async addFile(e,t={}){return Es(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Bs(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 Sc(e,t,this.components.blockstore,n)}async stat(e,t={}){return Ac(e,this.components.blockstore,t)}async touch(e,t={}){return Nc(e,this.components.blockstore,t)}};async function*Tc(){throw new Error("Not supported in browsers")}function Dc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:Sd(r,e)}}async function*Sd(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Ne("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function Ed(r){return new zn(r)}return Oc(Bd);})();
2
+ "use strict";var HeliaUnixfs=(()=>{var Sc=Object.create;var gr=Object.defineProperty;var Ec=Object.getOwnPropertyDescriptor;var vc=Object.getOwnPropertyNames;var Bc=Object.getPrototypeOf,Ic=Object.prototype.hasOwnProperty;var wr=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),W=(r,e)=>{for(var t in e)gr(r,t,{get:e[t],enumerable:!0})},ji=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of vc(e))!Ic.call(r,i)&&i!==t&&gr(r,i,{get:()=>e[i],enumerable:!(n=Ec(e,i))||n.enumerable});return r};var zt=(r,e,t)=>(t=r!=null?Sc(Bc(r)):{},ji(e||!r||!r.__esModule?gr(t,"default",{value:r,enumerable:!0}):t,r)),Ac=r=>ji(gr({},"__esModule",{value:!0}),r);var Yo=wr((Qt,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,_=3432918353,S=461845907,B=0;B<x;B=B+4)w=u[B]|u[B+1]<<8|u[B+2]<<16|u[B+3]<<24,w=i(w,_),w=o(w,15),w=i(w,S),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=u[B+2]<<16;case 2:w^=u[B+1]<<8;case 1:w^=u[B],w=i(w,_),w=o(w,15),w=i(w,S),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,_=d,S=d,B=0,C=0,E=0,D=0,ye=597399067,pr=2869860233,mr=951274213,yr=2716044179,N=0;N<x;N=N+16)B=u[N]|u[N+1]<<8|u[N+2]<<16|u[N+3]<<24,C=u[N+4]|u[N+5]<<8|u[N+6]<<16|u[N+7]<<24,E=u[N+8]|u[N+9]<<8|u[N+10]<<16|u[N+11]<<24,D=u[N+12]|u[N+13]<<8|u[N+14]<<16|u[N+15]<<24,B=i(B,ye),B=o(B,15),B=i(B,pr),g^=B,g=o(g,19),g+=w,g=i(g,5)+1444728091,C=i(C,pr),C=o(C,16),C=i(C,mr),w^=C,w=o(w,17),w+=_,w=i(w,5)+197830471,E=i(E,mr),E=o(E,17),E=i(E,yr),_^=E,_=o(_,15),_+=S,_=i(_,5)+2530024501,D=i(D,yr),D=o(D,18),D=i(D,ye),S^=D,S=o(S,13),S+=g,S=i(S,5)+850148119;switch(B=0,C=0,E=0,D=0,m){case 15:D^=u[N+14]<<16;case 14:D^=u[N+13]<<8;case 13:D^=u[N+12],D=i(D,yr),D=o(D,18),D=i(D,ye),S^=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,mr),E=o(E,17),E=i(E,yr),_^=E;case 8:C^=u[N+7]<<24;case 7:C^=u[N+6]<<16;case 6:C^=u[N+5]<<8;case 5:C^=u[N+4],C=i(C,pr),C=o(C,16),C=i(C,mr),w^=C;case 4:B^=u[N+3]<<24;case 3:B^=u[N+2]<<16;case 2:B^=u[N+1]<<8;case 1:B^=u[N],B=i(B,ye),B=o(B,15),B=i(B,pr),g^=B}return g^=u.length,w^=u.length,_^=u.length,S^=u.length,g+=w,g+=_,g+=S,w+=g,_+=g,S+=g,g=s(g),w=s(w),_=s(_),S=s(S),g+=w,g+=_,g+=S,w+=g,_+=g,S+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(_>>>0).toString(16)).slice(-8)+("00000000"+(S>>>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],_=[0,0],S=[0,0],B=[2277735313,289559509],C=[1291169091,658871167],E=0;E<x;E=E+16)_=[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],S=[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],_=c(_,B),_=h(_,31),_=c(_,C),g=l(g,_),g=h(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),S=c(S,C),S=h(S,33),S=c(S,B),w=l(w,S),w=h(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(_=[0,0],S=[0,0],m){case 15:S=l(S,f([0,u[E+14]],48));case 14:S=l(S,f([0,u[E+13]],40));case 13:S=l(S,f([0,u[E+12]],32));case 12:S=l(S,f([0,u[E+11]],24));case 11:S=l(S,f([0,u[E+10]],16));case 10:S=l(S,f([0,u[E+9]],8));case 9:S=l(S,[0,u[E+8]]),S=c(S,C),S=h(S,33),S=c(S,B),w=l(w,S);case 8:_=l(_,f([0,u[E+7]],56));case 7:_=l(_,f([0,u[E+6]],48));case 6:_=l(_,f([0,u[E+5]],40));case 5:_=l(_,f([0,u[E+4]],32));case 4:_=l(_,f([0,u[E+3]],24));case 3:_=l(_,f([0,u[E+2]],16));case 2:_=l(_,f([0,u[E+1]],8));case 1:_=l(_,[0,u[E]]),_=c(_,B),_=h(_,31),_=c(_,C),g=l(g,_)}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 Qt<"u"?(typeof Dr<"u"&&Dr.exports&&(Qt=Dr.exports=t),Qt.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)})(Qt)});var es=wr((Vm,Qo)=>{Qo.exports=Yo()});var zr=wr((Xm,rs)=>{"use strict";rs.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(vf,0),c=~(4294967295<<o+1),h=ts(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(Bf),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(If)}};function vf(r,e){return r+ts(e)}function ts(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Bf(r,e){return r[0]-e[0]}function If(r){return r[1]}});var qa=wr((Sw,Ni)=>{"use strict";var Yl=Object.prototype.hasOwnProperty,Z="~";function ar(){}Object.create&&(ar.prototype=Object.create(null),new ar().__proto__||(Z=!1));function Ql(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 Ql(t,n||r,i),s=Z?Z+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function hn(r,e){--r._eventsCount===0?r._events=new ar:delete r._events[e]}function X(){this._events=new ar,this._eventsCount=0}X.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Yl.call(t,n)&&e.push(Z?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};X.prototype.listeners=function(e){var t=Z?Z+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=Z?Z+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=Z?Z+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=Z?Z+e:e;if(!this._events[o])return this;if(!t)return hn(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&hn(this,o);else{for(var a=0,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:hn(this,o)}return this};X.prototype.removeAllListeners=function(e){var t;return e?(t=Z?Z+e:e,this._events[t]&&hn(this,t)):(this._events=new ar,this._eventsCount=0),this};X.prototype.off=X.prototype.removeListener;X.prototype.addListener=X.prototype.on;X.prefixed=Z;X.EventEmitter=X;typeof Ni<"u"&&(Ni.exports=X)});var ed={};W(ed,{globSource:()=>_c,unixfs:()=>Qh,urlSource:()=>kc});function Cc(r){return r[Symbol.asyncIterator]!=null}function Nc(r){if(Cc(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var xr=Nc;function Tc(r){return r[Symbol.asyncIterator]!=null}function Dc(r,e=1){return e=Number(e),Tc(r)?(async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)})():(function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)})()}var br=Dc;async function*Ft(r,e=1){for await(let t of br(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}function ge(r=0){return new Uint8Array(r)}function ne(r=0){return new Uint8Array(r)}function Ie(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=ne(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}function _r(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 Gi=Symbol.for("@achingbrain/uint8arraylist");function qi(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 kr(r){return!!r?.[Gi]}var ot=class r{bufs;length;[Gi]=!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(kr(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(kr(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=qi(this.bufs,e);return t.buf[t.index]}set(e,t){let n=qi(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(kr(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 Ie(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:Ie(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(!kr(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=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=ne(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=ge(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=ge(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=ge(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!_r(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 Lc=262144,Pt=(r={})=>{let e=r.chunkSize??Lc;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 O={};W(O,{code:()=>q,createLink:()=>ho,createNode:()=>lo,decode:()=>$,encode:()=>T,name:()=>Du,prepare:()=>P,validate:()=>Vn});var Fn={};W(Fn,{base32:()=>Ue,base32hex:()=>Gc,base32hexpad:()=>Kc,base32hexpadupper:()=>Xc,base32hexupper:()=>Wc,base32pad:()=>jc,base32padupper:()=>qc,base32upper:()=>Hc,base32z:()=>Jc});var st={};W(st,{coerce:()=>le,empty:()=>Wi,equals:()=>An,fromHex:()=>Fc,fromString:()=>Cn,isBinary:()=>Pc,toHex:()=>zc,toString:()=>Nn});var Wi=new Uint8Array(0);function zc(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function Fc(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):Wi}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 Pc(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Cn(r){return new TextEncoder().encode(r)}function Nn(r){return new TextDecoder().decode(r)}function Uc(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 _=(w-g)*f+1>>>0,S=new Uint8Array(_);g!==w;){for(var B=d[g],C=0,E=_-1;(B!==0||C<x)&&E!==-1;E--,C++)B+=256*S[E]>>>0,S[E]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=C,g++}for(var D=_-x;D!==_&&S[D]===0;)D++;for(var ye=c.repeat(m);D<_;++D)ye+=r.charAt(S[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,_=new Uint8Array(w);d[m];){var S=t[d.charCodeAt(m)];if(S===255)return;for(var B=0,C=w-1;(S!==0||B<g)&&C!==-1;C--,B++)S+=a*_[C]>>>0,_[C]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");g=B,m++}if(d[m]!==" "){for(var E=w-g;E!==w&&_[E]===0;)E++;for(var D=new Uint8Array(x+(w-E)),ye=x;E!==w;)D[ye++]=_[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 $c=Uc,Rc=$c,Ki=Rc;var Tn=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},Dn=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let i=t.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Xi(this,e)}},Ln=class{decoders;constructor(e){this.decoders=e}or(e){return Xi(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Xi(r,e){return new Ln({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var zn=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Tn(e,t,n),this.decoder=new Dn(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function at({name:r,prefix:e,encode:t,decode:n}){return new zn(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=>le(i(o))})}function Mc(r,e,t,n){let i=r.length;for(;r[i-1]==="=";)--i;let o=new Uint8Array(i*t/8|0),s=0,a=0,c=0;for(let h=0;h<i;++h){let f=e[r[h]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|f,s+=t,s>=8&&(s-=8,o[c++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return o}function Oc(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)!==0;)o+="=";return o}function Vc(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function F({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let i=Vc(n);return at({prefix:e,name:r,encode(o){return Oc(o,n,t)},decode(o){return Mc(o,i,t,r)}})}var Ue=F({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Hc=F({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),jc=F({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),qc=F({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Gc=F({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Wc=F({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Kc=F({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Xc=F({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Jc=F({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Pn={};W(Pn,{base36:()=>Ut,base36upper:()=>Zc});var Ut=Pe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Zc=Pe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Un={};W(Un,{base58btc:()=>he,base58flickr:()=>Yc});var he=Pe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Yc=Pe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Qc=Yi,Ji=128,eu=127,tu=~eu,ru=Math.pow(2,31);function Yi(r,e,t){e=e||[],t=t||0;for(var n=t;r>=ru;)e[t++]=r&255|Ji,r/=128;for(;r&tu;)e[t++]=r&255|Ji,r>>>=7;return e[t]=r|0,Yi.bytes=t-n+1,e}var nu=$n,iu=128,Zi=127;function $n(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw $n.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Zi)<<i:(s&Zi)*Math.pow(2,i),i+=7}while(s>=iu);return $n.bytes=o-n,t}var ou=Math.pow(2,7),su=Math.pow(2,14),au=Math.pow(2,21),cu=Math.pow(2,28),uu=Math.pow(2,35),fu=Math.pow(2,42),lu=Math.pow(2,49),hu=Math.pow(2,56),du=Math.pow(2,63),pu=function(r){return r<ou?1:r<su?2:r<au?3:r<cu?4:r<uu?5:r<fu?6:r<lu?7:r<hu?8:r<du?9:10},mu={encode:Qc,decode:nu,encodingLength:pu},yu=mu,$t=yu;function Rt(r,e=0){return[$t.decode(r,e),$t.decode.bytes]}function ct(r,e,t=0){return $t.encode(r,e,t),e}function ut(r){return $t.encodingLength(r)}function lt(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 Er(r){let e=le(r),[t,n]=Rt(e),[i,o]=Rt(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new ft(t,i,s,e)}function Qi(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 ft=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function eo(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return wu(t,Rn(r),e??he.encoder);default:return xu(t,Rn(r),e??Ue.encoder)}}var to=new WeakMap;function Rn(r){let e=to.get(r);if(e==null){let t=new Map;return to.set(r,t),t}return e}var A=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==Mt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==bu)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=lt(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&&Qi(e.multihash,n.multihash)}toString(e){return eo(this,e)}toJSON(){return{"/":eo(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??ro(n,i,o.bytes))}else if(t[_u]===!0){let{version:n,multihash:i,code:o}=t,s=Er(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Mt)throw new Error(`Version 0 CID must use dag-pb (code: ${Mt}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=ro(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Mt,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=le(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new ft(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[l,y]=Rt(e.subarray(t));return t+=y,l},i=n(),o=Mt;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),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]=gu(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 Rn(o).set(n,e),o}};function gu(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 Ue.prefix:{let t=e??Ue;return[Ue.prefix,t.decode(r)]}case Ut.prefix:{let t=e??Ut;return[Ut.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function wu(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 xu(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Mt=112,bu=18;function ro(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 _u=Symbol.for("@ipld/js-cid/CID");var ku=new TextDecoder;function Mn(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function vr(r,e){let t;[t,e]=Mn(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function no(r,e){let t;return[t,e]=Mn(r,e),[t&7,t>>3,e]}function Su(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=no(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=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=ku.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Mn(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function io(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=no(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=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(Su(h))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var so=new TextEncoder,oo=2**32,Eu=2**31;function vu(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Ot(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=so.encode(r.Name);t-=n.length,e.set(n,t),t=Ot(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ot(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function ao(r){let e=Iu(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ot(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=vu(r.Links[i],t.subarray(0,n));n-=o,n=Ot(t,n,o)-1,t[n]=18}return t}function Bu(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+dt(t)}if(typeof r.Name=="string"){let t=so.encode(r.Name).length;e+=1+t+dt(t)}return typeof r.Tsize=="number"&&(e+=1+dt(r.Tsize)),e}function Iu(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+dt(t)}if(r.Links)for(let t of r.Links){let n=Bu(t);e+=1+n+dt(n)}return e}function Ot(r,e,t){e-=dt(t);let n=e;for(;t>=Eu;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function dt(r){return r%2===0&&r++,Math.floor((Au(r)+6)/7)}function Au(r){let e=0;return r>=oo&&(r=Math.floor(r/oo),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+Cu[r]}var Cu=[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 Nu=["Data","Links"],Tu=["Hash","Name","Tsize"],On=new TextEncoder;function uo(r,e){if(r===e)return 0;let t=r.Name?On.encode(r.Name):[],n=e.Name?On.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function co(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function fo(r){if(typeof r.asCID=="object"){let t=A.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=A.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=A.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=A.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function P(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=On.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(fo),e.Links.sort(uo);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Vn(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!co(r,Nu))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!co(t,Tu))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&uo(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function lo(r,e=[]){return P({Data:r,Links:e})}function ho(r,e,t){return fo({Hash:t,Name:r,Tsize:e})}function po(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Du="dag-pb",q=112;function T(r){Vn(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),ao(e)}function $(r){let e=po(r),t=io(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=A.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var Vt=class r extends Error{static name="InvalidTypeError";static code="ERR_INVALID_TYPE";name=r.name;code=r.code;constructor(e="Invalid type"){super(e)}},Br=class r extends Error{static name="InvalidUnixFSMessageError";static code="ERR_INVALID_MESSAGE";name=r.name;code=r.code;constructor(e="Invalid message"){super(e)}};var Lu=Math.pow(2,7),zu=Math.pow(2,14),Fu=Math.pow(2,21),mo=Math.pow(2,28),yo=Math.pow(2,35),go=Math.pow(2,42),wo=Math.pow(2,49),J=128,$e=127;function Ht(r){if(r<Lu)return 1;if(r<zu)return 2;if(r<Fu)return 3;if(r<mo)return 4;if(r<yo)return 5;if(r<go)return 6;if(r<wo)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function xo(r,e,t=0){switch(Ht(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 bo(r,e){let t=r[e],n=0;if(n+=t&$e,t<J||(t=r[e+1],n+=(t&$e)<<7,t<J)||(t=r[e+2],n+=(t&$e)<<14,t<J)||(t=r[e+3],n+=(t&$e)<<21,t<J)||(t=r[e+4],n+=(t&$e)*mo,t<J)||(t=r[e+5],n+=(t&$e)*yo,t<J)||(t=r[e+6],n+=(t&$e)*go,t<J)||(t=r[e+7],n+=(t&$e)*wo,t<J))return n;throw new RangeError("Could not decode varint")}var Hn=new Float32Array([-0]),Re=new Uint8Array(Hn.buffer);function _o(r,e,t){Hn[0]=r,e[t]=Re[0],e[t+1]=Re[1],e[t+2]=Re[2],e[t+3]=Re[3]}function ko(r,e){return Re[0]=r[e],Re[1]=r[e+1],Re[2]=r[e+2],Re[3]=r[e+3],Hn[0]}var jn=new Float64Array([-0]),K=new Uint8Array(jn.buffer);function So(r,e,t){jn[0]=r,e[t]=K[0],e[t+1]=K[1],e[t+2]=K[2],e[t+3]=K[3],e[t+4]=K[4],e[t+5]=K[5],e[t+6]=K[6],e[t+7]=K[7]}function Eo(r,e){return K[0]=r[e],K[1]=r[e+1],K[2]=r[e+2],K[3]=r[e+3],K[4]=r[e+4],K[5]=r[e+5],K[6]=r[e+6],K[7]=r[e+7],jn[0]}var Pu=BigInt(Number.MAX_SAFE_INTEGER),Uu=BigInt(Number.MIN_SAFE_INTEGER),ie=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return qe;if(e<Pu&&e>Uu)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 ie(0,0);qe.toBigInt=function(){return 0n};qe.zzEncode=qe.zzDecode=function(){return this};qe.length=function(){return 1};var vo=4294967296n;function Bo(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 Io(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 qn(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function we(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Ir(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Gn=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,we(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw we(this,4);return Ir(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw we(this,4);return Ir(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw we(this,4);let e=ko(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw we(this,4);let e=Eo(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw we(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Io(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw we(this,e);this.pos+=e}else do if(this.pos>=this.len)throw we(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new ie(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw we(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw we(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw we(this,8);let e=Ir(this.buf,this.pos+=4),t=Ir(this.buf,this.pos+=4);return new ie(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=bo(this.buf,this.pos);return this.pos+=Ht(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 Wn(r){return new Gn(r instanceof Uint8Array?r:r.subarray())}function jt(r,e,t){let n=Wn(r);return e.decode(n,void 0,t)}var Kn={};W(Kn,{base10:()=>$u});var $u=Pe({prefix:"9",name:"base10",alphabet:"0123456789"});var Xn={};W(Xn,{base16:()=>Ru,base16upper:()=>Mu});var Ru=F({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Mu=F({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Jn={};W(Jn,{base2:()=>Ou});var Ou=F({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Zn={};W(Zn,{base256emoji:()=>Gu});var Co=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Vu=Co.reduce((r,e,t)=>(r[t]=e,r),[]),Hu=Co.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function ju(r){return r.reduce((e,t)=>(e+=Vu[t],e),"")}function qu(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let i=Hu[n];if(i==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(i)}return new Uint8Array(e)}var Gu=at({prefix:"\u{1F680}",name:"base256emoji",encode:ju,decode:qu});var Yn={};W(Yn,{base64:()=>qt,base64pad:()=>Wu,base64url:()=>Ku,base64urlpad:()=>Xu});var qt=F({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Wu=F({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ku=F({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Xu=F({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Qn={};W(Qn,{base8:()=>Ju});var Ju=F({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ei={};W(ei,{identity:()=>Zu});var Zu=at({prefix:"\0",name:"identity",encode:r=>Nn(r),decode:r=>Cn(r)});var cp=new TextEncoder,Yu=new TextDecoder;var No=512;function To(r){return JSON.parse(Yu.decode(r))}var Ae={};W(Ae,{code:()=>Q,decode:()=>tf,encode:()=>ef,name:()=>Qu});var Qu="raw",Q=85;function ef(r){return le(r)}function tf(r){return le(r)}var ni={};W(ni,{identity:()=>ri});var Do=0,rf="identity",Lo=le;function nf(r,e){if(e?.truncate!=null&&e.truncate!==r.byteLength){if(e.truncate<0||e.truncate>r.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${r.byteLength}`);r=r.subarray(0,e.truncate)}return lt(Do,Lo(r))}var ri={code:Do,name:rf,encode:Lo,digest:nf};var oi={};W(oi,{sha256:()=>oe,sha512:()=>sf});var of=20;function Ge({name:r,code:e,encode:t,minDigestLength:n,maxDigestLength:i}){return new ii(r,e,t,n,i)}var ii=class{name;code;encode;minDigestLength;maxDigestLength;constructor(e,t,n,i,o){this.name=e,this.code=t,this.encode=n,this.minDigestLength=i??of,this.maxDigestLength=o}digest(e,t){if(t?.truncate!=null){if(t.truncate<this.minDigestLength)throw new Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&t.truncate>this.maxDigestLength)throw new Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(e instanceof Uint8Array){let n=this.encode(e);return n instanceof Uint8Array?zo(n,this.code,t?.truncate):n.then(i=>zo(i,this.code,t?.truncate))}else throw Error("Unknown type, must be binary type")}};function zo(r,e,t){if(t!=null&&t!==r.byteLength){if(t>r.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${r.byteLength}`);r=r.subarray(0,t)}return lt(e,r)}function Po(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var oe=Ge({name:"sha2-256",code:18,encode:Po("SHA-256")}),sf=Ge({name:"sha2-512",code:19,encode:Po("SHA-512")});var si={...ei,...Jn,...Qn,...Kn,...Xn,...Fn,...Pn,...Un,...Yn,...Zn},_p={...oi,...ni};function $o(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Uo=$o("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),ai=$o("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=ne(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),af={utf8:Uo,"utf-8":Uo,hex:si.base16,latin1:ai,ascii:ai,binary:ai,...si},Ro=af;function M(r,e="utf8"){let t=Ro[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function ci(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return ne(s);i+s>e&&(n=ne(e),i=0);let a=n.subarray(i,i+=s);return(i&7)!==0&&(i=(i|7)+1),a}}var We=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function ui(){}var li=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},cf=ci();function uf(r){return globalThis.Buffer!=null?ne(r):cf(r)}var Wt=class{len;head;tail;states;constructor(){this.len=0,this.head=new We(ui,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new We(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new hi((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Ar,10,ie.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=ie.fromBigInt(e);return this._push(Ar,t.length(),t)}uint64Number(e){return this._push(xo,Ht(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=ie.fromBigInt(e).zzEncode();return this._push(Ar,t.length(),t)}sint64Number(e){let t=ie.fromNumber(e).zzEncode();return this._push(Ar,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(fi,1,e?1:0)}fixed32(e){return this._push(Gt,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=ie.fromBigInt(e);return this._push(Gt,4,t.lo)._push(Gt,4,t.hi)}fixed64Number(e){let t=ie.fromNumber(e);return this._push(Gt,4,t.lo)._push(Gt,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(_o,4,e)}double(e){return this._push(So,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(fi,1,0):this.uint32(t)._push(lf,t,e)}string(e){let t=Bo(e);return t!==0?this.uint32(t)._push(qn,t,e):this._push(fi,1,0)}fork(){return this.states=new li(this),this.head=this.tail=new We(ui,0,0),this.len=0,this}reset(){return this.states!=null?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new We(ui,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=uf(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function fi(r,e,t){e[t]=r&255}function ff(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var hi=class extends We{next;constructor(e,t){super(ff,e,t),this.next=void 0}};function Ar(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function Gt(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function lf(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Wt.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(hf,e,r),this},Wt.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(df,e,r),this});function hf(r,e,t){e.set(r,t)}function df(r,e,t){r.length<40?qn(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(M(r),t)}function di(){return new Wt}function Kt(r,e){let t=di();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var pt;(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"})(pt||(pt={}));function Cr(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function pi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return Cr("enum",pt.VARINT,t,n)}function Xt(r,e){return Cr("message",pt.LENGTH_DELIMITED,r,e)}var xe;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),(function(i){i.codec=()=>pi(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),Nr.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let 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=Nr.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Kt(i,r.codec()),r.decode=i=>jt(i,r.codec())})(xe||(xe={}));var Nr;(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=>Kt(t,r.codec()),r.decode=t=>jt(t,r.codec())})(Nr||(Nr={}));var Mo;(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=>Kt(t,r.codec()),r.decode=t=>jt(t,r.codec())})(Mo||(Mo={}));var Oo={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},pf=["directory","hamt-sharded-directory"],Vo=parseInt("0644",8),Ho=parseInt("0755",8),jo=BigInt(1024),I=class r{static unmarshal(e){let t=xe.decode(e);if(t.fanout!=null&&t.fanout>jo)throw new Br(`Fanout size was too large - ${t.fanout} > ${jo}`);let n=new r({type:Oo[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(Oo).includes(t))throw new Vt("Type: "+t+" is not valid");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Ho:Vo:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return pf.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=xe.DataType.Raw;break;case"directory":e=xe.DataType.Directory;break;case"file":e=xe.DataType.File;break;case"metadata":e=xe.DataType.Metadata;break;case"symlink":e=xe.DataType.Symlink;break;case"hamt-sharded-directory":e=xe.DataType.HAMTShard;break;default:throw new Vt(`Type: ${e} is not valid`)}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Vo&&!this.isDirectory()&&(n=void 0),n===Ho&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),xe.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var U=class extends Event{type;detail;constructor(e,t){super(e),this.type=e,this.detail=t}};var be=async(r,e,t)=>{t.codec==null&&(t.codec=O);let n=await oe.digest(r),i=A.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function qo(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:O,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Ae,a.cidVersion=1):(s=new I({type:r.leafType,data:o}),o=T({Data:s.marshal(),Links:[]}));let c=await be(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 Tr=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Me=class r extends Error{static name="InvalidContentError";static code="ERR_INVALID_CONTENT";name=r.name;code=r.code;constructor(e="Invalid content"){super(e)}};var Go=async(r,e,t)=>{let n=new I({type:"directory",mtime:r.mtime,mode:r.mode}),i=T(P({Data:n.marshal()})),o=await be(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*mf(r,e,t){let n=-1,i;for await(let o of Ft(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 Wo(r){return r.single===!0}var yf=(r,e,t)=>async function(i){if(i.length===1&&Wo(i[0])&&t.reduceSingleLeafToSelf){let f=i[0],l=f.block;return Wo(f)&&(r.mtime!==void 0||r.mode!==void 0)&&(f.unixfs=new I({type:"file",mtime:r.mtime,mode:r.mode,data:f.block}),l={Data:f.unixfs.marshal(),Links:[]},f.block=T(P(l)),f.cid=await be(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 I({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(f=>f.cid.code===Q&&f.size>0||f.unixfs!=null&&f.unixfs.data==null&&f.unixfs.fileSize()>0n?!0:!!f.unixfs?.data?.length).map(f=>f.cid.code===Q?(o.addBlockSize(f.size),{Name:"",Tsize:Number(f.size),Hash:f.cid}):(f.unixfs?.data==null?o.addBlockSize(f.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(f.unixfs.data.length)),{Name:"",Tsize:Number(f.size),Hash:f.cid})),a={Data:o.marshal(),Links:s},c=T(P(a)),h=await be(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(mf(r,e,t),yf(r,e,t));function gf(r){return Symbol.iterator in r}function wf(r){return Symbol.asyncIterator in r}function xf(r){try{if(r instanceof Uint8Array)return(async function*(){yield r})();if(gf(r))return(async function*(){yield*r})();if(wf(r))return r}catch{throw new Me("Content was invalid")}throw new Me("Content was invalid")}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("/")),bf(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:(async function*(){let c=0n;for await(let h of r.chunker(r.chunkValidator(xf(i.content)))){let f=BigInt(h.byteLength);c+=f,r.onProgress?.(new U("unixfs:importer:progress:file:read",{bytesRead:c,chunkSize:f,path:i.path})),yield h}})(),originalPath:o},a=r.fileBuilder??Ko;yield async()=>a(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o},a=r.dirBuilder??Go;yield async()=>a(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function bf(r){return r.content!=null}var Jo=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw new Me("Content was invalid");if(typeof t=="string"||t instanceof String)yield M(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw new Me("Content was invalid")}};var _f=174;function Jt(r){let e=r?.maxChildrenPerNode??_f;return async function t(n,i){let o=[];for await(let s of br(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}function kf(r){return r[Symbol.asyncIterator]!=null}function Sf(r){if(kf(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 Zo=Sf;var Ce=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Zt=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Yt=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Ke=class extends Ce{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Yt.bytes.byteLength:Zt.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,h]of this._children.entries()){let f=h;if(h instanceof Ce)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 I({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=T(P(i)),s=await be(o,e,this.options),a=o.length+i.Links.reduce((c,h)=>c+(h.Tsize??0),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Lr=zt(es(),1);function Ef(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var qm=Ge({name:"murmur3-32",code:35,encode:r=>Ef(Lr.default.x86.hash32(r))}),Xe=Ge({name:"murmur3-128",code:34,encode:r=>st.fromHex(Lr.default.x64.hash128(r))}),Gm=Ge({name:"murmur3-x64-64",code:34,encode:r=>st.fromHex(Lr.default.x64.hash128(r)).subarray(0,8)});var ns=zt(zr(),1);var se=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new ns.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 is(this,e,t)}toJSON(){return this.serialize(Cf,Nf)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?M(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(Af);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 Af(r){return!!r}function Cf(r,e){return r.key}function Nf(r){return r}async function is(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof se)await is(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var Tf=[255,254,252,248,240,224,192,128],Df=[1,3,7,15,31,63,127,255],Fr=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=Lf(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function Lf(r,e,t){let n=zf(e,t);return(r&n)>>>e}function zf(r,e){return Tf[r]&Df[Math.min(e+r-1,7)]}function os(r){function e(t){return t instanceof Pr?t:new Pr(t,r)}return e}var Pr=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?Ie([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Fr(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function mt(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:os(r.hashFn)};return new se(e)}async function Ff(r){return(await Xe.encode(r)).slice(0,8).reverse()}var ss=BigInt(34),Pf=8,mi=class extends Ce{_bucket;constructor(e,t){super(e,t),this._bucket=mt({hashFn:Ff,bits:t.shardFanoutBits??Pf})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=us(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of cs(this._bucket,e,this,this.options))yield{...t,path:this.path}}},as=mi;async function*cs(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let d=0;d<i.length;d++){let m=i.get(d);if(m==null)continue;let x=d.toString(16).toUpperCase().padStart(o,"0");if(m instanceof se){let g;for await(let w of cs(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(Uf(m.value)){let g=m.value,w;for await(let S of g.flush(e))w=S,yield w;if(w==null)throw new Error("Did not flush dir");let _=x+m.key;s.push({Name:_,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,_=g.size;s.push({Name:w,Tsize:Number(_),Hash:g.cid}),a+=BigInt(_??0)}}let c=Uint8Array.from(i.bitField().reverse()),h=new I({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:ss,mtime:t?.mtime,mode:t?.mode}),f={Data:h.marshal(),Links:s},l=T(P(f)),y=await be(l,e,n),u=BigInt(l.byteLength)+a;yield{cid:y,unixfs:h,size:u}}function Uf(r){return typeof r.flush=="function"}function us(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let h=0;h<n.length;h++){let f=n.get(h);if(f==null)continue;let l=h.toString(16).toUpperCase().padStart(i,"0");if(f instanceof se){let y=us(f,null,t);o.push({Name:l,Tsize:Number(y),Hash:t.cidVersion===0?Zt:Yt})}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?Zt:Yt})}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 I({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:ss,mtime:e?.mtime,mode:e?.mode});return T(P({Data:a.marshal(),Links:o})).length}async function yi(r,e,t,n){let i=e;e instanceof Ke&&e.estimateNodeSize()>t&&(i=await $f(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return yi(i,o,t,n)}return i}async function $f(r,e){let t=new as({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var fs=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function Rf(r,e,t){let n=fs(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let h=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,h)await o.put(c,r),e=await yi(null,o,t.shardSplitThresholdBytes,t);else{let f=await o.get(c);(f==null||!(f instanceof Ce))&&(f=new Ke({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*ls(r,e){if(!(r instanceof Ce)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function hs(r){return async function*(t,n){let i=new Ke({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 Rf(a,i,r),a.unixfs?.isDirectory()!==!0&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*ls(i,n);else for(let a of i.eachChildSeries())a!=null&&(yield*ls(a.child,n))}}async function*Je(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??Pt(),d=t.chunkValidator??Jo(),m=t.dagBuilder??Xo({chunker:u,chunkValidator:d,wrapWithDirectory:i,layout:t.layout??Jt(),bufferImporter:t.bufferImporter??qo({cidVersion:a,rawLeaves:c,leafType:h,onProgress:t.onProgress}),blockWriteConcurrency:l,reduceSingleLeafToSelf:y,cidVersion:a,onProgress:t.onProgress,dirBuilder:t.dirBuilder,fileBuilder:t.fileBuilder}),x=t.treeBuilder??hs({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Ft(m(n,e),f),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function ds(r,e,t={}){let n=await xr(Je([r],e,t));if(n==null)throw new Tr("Nothing imported");return n}async function ps(r,e,t={}){return ds({content:r},e,t)}async function ms(r,e,t={}){return ds({content:r},e,t)}function Mf(r){return r[Symbol.asyncIterator]!=null}function Of(r){if(Mf(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var _e=Of;var ke=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Ne=class extends ke{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ee=class extends ke{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PB_NODE")}},Te=class extends ke{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},er=class extends ke{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Ur=class extends ke{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},yt=class extends ke{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},$r=class extends ke{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Oe=class extends ke{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},V=class extends ke{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var tr={cidVersion:1,rawLeaves:!0,layout:Jt({maxChildrenPerNode:1024}),chunker:Pt({chunkSize:1048576})};async function*Rr(r,e,t={}){yield*Je(r,e,{...tr,...t})}async function ys(r,e,t={}){let{cid:n}=await ps(r,e,{...tr,...t});return n}async function gs(r,e,t={}){let{cid:n}=await ms(r,e,{...tr,...t});return n}async function ws(r,e,t={}){if(r.path==null)throw new V("path is required");if(r.content==null)throw new V("content is required");let n=await _e(Rr([r],e,{...tr,...t,wrapWithDirectory:!0}));if(n==null)throw new V("Nothing imported");return n.cid}async function xs(r,e,t={}){if(r.content!=null)throw new V("Directories cannot have content, use addFile instead");let i=await(r.path==null?xr:_e)(Rr([{...r,path:r.path??"-"}],e,{...tr,...t,wrapWithDirectory:r.path!=null}));if(i==null)throw new V("Nothing imported");return i.cid}var Mr=class r extends Error{static name="BadPathError";static code="ERR_BAD_PATH";name=r.name;code=r.code;constructor(e="Bad path"){super(e)}},de=class r extends Error{static name="NotFoundError";static code="ERR_NOT_FOUND";name=r.name;code=r.code;constructor(e="Not found"){super(e)}},Or=class r extends Error{static name="NoResolverError";static code="ERR_NO_RESOLVER";name=r.name;code=r.code;constructor(e="No resolver"){super(e)}},H=class r extends Error{static name="NotUnixFSError";static code="ERR_NOT_UNIXFS";name=r.name;code=r.code;constructor(e="Not UnixFS"){super(e)}},Vr=class r extends Error{static name="OverReadError";static code="ERR_OVER_READ";name=r.name;code=r.code;constructor(e="Over read"){super(e)}},Hr=class r extends Error{static name="UnderReadError";static code="ERR_UNDER_READ";name=r.name;code=r.code;constructor(e="Under read"){super(e)}},jr=class r extends Error{static name="NoPropError";static code="ERR_NO_PROP";name=r.name;code=r.code;constructor(e="No Property found"){super(e)}},Ze=class r extends Error{static name="InvalidParametersError";static code="ERR_INVALID_PARAMS";name=r.name;code=r.code;constructor(e="Invalid parameters"){super(e)}};var Vf=["string","number","bigint","symbol"],Hf=["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 bs(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(Vf.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(jf(r))return"Buffer";let t=qf(r);return t||"Object"}function jf(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(Hf.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 b=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",Gf=new TextDecoder,Wf=new TextEncoder;function qr(r){return gt&&globalThis.Buffer.isBuffer(r)}function Gr(r){return r instanceof Uint8Array?qr(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Es=gt?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):ks(r,e,t):(r,e,t)=>t-e>64?Gf.decode(r.subarray(e,t)):ks(r,e,t),Wr=gt?r=>r.length>64?globalThis.Buffer.from(r):_s(r):r=>r.length>64?Wf.encode(r):_s(r);var wt=gt?(r,e,t)=>qr(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),vs=gt?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Gr(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Bs=gt?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function Is(r,e){if(qr(r)&&qr(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function _s(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 ks(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,h,f;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(f=(i&31)<<6|a&63,f>127&&(o=f));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(f=(i&15)<<12|(a&63)<<6|c&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:a=r[e+1],c=r[e+2],h=r[e+3],(a&192)===128&&(c&192)===128&&(h&192)===128&&(f=(i&15)<<18|(a&63)<<12|(c&63)<<6|h&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return gi(n)}var Ss=4096;function gi(r){let e=r.length;if(e<=Ss)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Ss));return t}var Kf=256,Kr=class{constructor(e=Kf){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=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=wt(n,0,this.cursor)}else t=vs(this.chunks,this.cursor);return e&&this.reset(),t}};var v="CBOR decode error:",xt="CBOR encode error:",rr=[];rr[23]=1;rr[24]=2;rr[25]=3;rr[26]=5;rr[27]=9;function Fe(r,e,t){if(r.length-e<t)throw new Error(`${v} not enough data for type`)}var j=[24,256,65536,4294967296,BigInt("18446744073709551616")];function ae(r,e,t){Fe(r,e,1);let n=r[e];if(t.strict===!0&&n<j[0])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ce(r,e,t){Fe(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<j[1])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function ue(r,e,t){Fe(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<j[2])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);return n}function fe(r,e,t){Fe(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<j[3])throw new Error(`${v} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${v} integers outside of the safe integer range are not supported`)}function As(r,e,t,n){return new b(p.uint,ae(r,e+1,n),2)}function Cs(r,e,t,n){return new b(p.uint,ce(r,e+1,n),3)}function Ns(r,e,t,n){return new b(p.uint,ue(r,e+1,n),5)}function Ts(r,e,t,n){return new b(p.uint,fe(r,e+1,n),9)}function pe(r,e){return G(r,0,e.value)}function G(r,e,t){if(t<j[0]){let n=Number(t);r.push([e|n])}else if(t<j[1]){let n=Number(t);r.push([e|24,n])}else if(t<j[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<j[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<j[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${v} encountered BigInt larger than allowable range`)}}pe.encodedSize=function(e){return G.encodedSize(e.value)};G.encodedSize=function(e){return e<j[0]?1:e<j[1]?2:e<j[2]?3:e<j[3]?5:9};pe.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Ds(r,e,t,n){return new b(p.negint,-1-ae(r,e+1,n),2)}function Ls(r,e,t,n){return new b(p.negint,-1-ce(r,e+1,n),3)}function zs(r,e,t,n){return new b(p.negint,-1-ue(r,e+1,n),5)}var wi=BigInt(-1),Fs=BigInt(1);function Ps(r,e,t,n){let i=fe(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new b(p.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${v} integers outside of the safe integer range are not supported`);return new b(p.negint,wi-BigInt(i),9)}function Xr(r,e){let t=e.value,n=typeof t=="bigint"?t*wi-Fs:t*-1-1;G(r,e.type.majorEncoded,n)}Xr.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*wi-Fs:t*-1-1;return n<j[0]?1:n<j[1]?2:n<j[2]?3:n<j[3]?5:9};Xr.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function nr(r,e,t,n){Fe(r,e,t+n);let i=wt(r,e+t,e+t+n);return new b(p.bytes,i,t+n)}function Us(r,e,t,n){return nr(r,e,1,t)}function $s(r,e,t,n){return nr(r,e,2,ae(r,e+1,n))}function Rs(r,e,t,n){return nr(r,e,3,ce(r,e+1,n))}function Ms(r,e,t,n){return nr(r,e,5,ue(r,e+1,n))}function Os(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer bytes lengths not supported`);return nr(r,e,9,i)}function Jr(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===p.string?Wr(r.value):r.value),r.encodedBytes}function bt(r,e){let t=Jr(e);G(r,e.type.majorEncoded,t.length),r.push(t)}bt.encodedSize=function(e){let t=Jr(e);return G.encodedSize(t.length)+t.length};bt.compareTokens=function(e,t){return Jf(Jr(e),Jr(t))};function Jf(r,e){return r.length<e.length?-1:r.length>e.length?1:Is(r,e)}function ir(r,e,t,n,i){let o=t+n;Fe(r,e,o);let s=new b(p.string,Es(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=wt(r,e+t,e+o)),s}function Vs(r,e,t,n){return ir(r,e,1,t,n)}function Hs(r,e,t,n){return ir(r,e,2,ae(r,e+1,n),n)}function js(r,e,t,n){return ir(r,e,3,ce(r,e+1,n),n)}function qs(r,e,t,n){return ir(r,e,5,ue(r,e+1,n),n)}function Gs(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer string lengths not supported`);return ir(r,e,9,i,n)}var Ws=bt;function _t(r,e,t,n){return new b(p.array,n,t)}function Ks(r,e,t,n){return _t(r,e,1,t)}function Xs(r,e,t,n){return _t(r,e,2,ae(r,e+1,n))}function Js(r,e,t,n){return _t(r,e,3,ce(r,e+1,n))}function Zs(r,e,t,n){return _t(r,e,5,ue(r,e+1,n))}function Ys(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer array lengths not supported`);return _t(r,e,9,i)}function Qs(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return _t(r,e,1,1/0)}function Zr(r,e){G(r,p.array.majorEncoded,e.value)}Zr.compareTokens=pe.compareTokens;Zr.encodedSize=function(e){return G.encodedSize(e.value)};function kt(r,e,t,n){return new b(p.map,n,t)}function ea(r,e,t,n){return kt(r,e,1,t)}function ta(r,e,t,n){return kt(r,e,2,ae(r,e+1,n))}function ra(r,e,t,n){return kt(r,e,3,ce(r,e+1,n))}function na(r,e,t,n){return kt(r,e,5,ue(r,e+1,n))}function ia(r,e,t,n){let i=fe(r,e+1,n);if(typeof i=="bigint")throw new Error(`${v} 64-bit integer map lengths not supported`);return kt(r,e,9,i)}function oa(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return kt(r,e,1,1/0)}function Yr(r,e){G(r,p.map.majorEncoded,e.value)}Yr.compareTokens=pe.compareTokens;Yr.encodedSize=function(e){return G.encodedSize(e.value)};function sa(r,e,t,n){return new b(p.tag,t,1)}function aa(r,e,t,n){return new b(p.tag,ae(r,e+1,n),2)}function ca(r,e,t,n){return new b(p.tag,ce(r,e+1,n),3)}function ua(r,e,t,n){return new b(p.tag,ue(r,e+1,n),5)}function fa(r,e,t,n){return new b(p.tag,fe(r,e+1,n),9)}function Qr(r,e){G(r,p.tag.majorEncoded,e.value)}Qr.compareTokens=pe.compareTokens;Qr.encodedSize=function(e){return G.encodedSize(e.value)};var rl=20,nl=21,il=22,ol=23;function la(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${v} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new b(p.null,null,1):new b(p.undefined,void 0,1)}function ha(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${v} indefinite length items not allowed`);return new b(p.break,void 0,1)}function xi(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${v} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${v} Infinity values are not supported`)}return new b(p.float,r,e)}function da(r,e,t,n){return xi(bi(r,e+1),3,n)}function pa(r,e,t,n){return xi(_i(r,e+1),5,n)}function ma(r,e,t,n){return xi(xa(r,e+1),9,n)}function en(r,e,t){let n=e.value;if(n===!1)r.push([p.float.majorEncoded|rl]);else if(n===!0)r.push([p.float.majorEncoded|nl]);else if(n===null)r.push([p.float.majorEncoded|il]);else if(n===void 0)r.push([p.float.majorEncoded|ol]);else{let i,o=!1;(!t||t.float64!==!0)&&(ga(n),i=bi(Se,1),n===i||Number.isNaN(n)?(Se[0]=249,r.push(Se.slice(0,3)),o=!0):(wa(n),i=_i(Se,1),n===i&&(Se[0]=250,r.push(Se.slice(0,5)),o=!0))),o||(sl(n),i=xa(Se,1),Se[0]=251,r.push(Se.slice(0,9)))}}en.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){ga(n);let i=bi(Se,1);if(n===i||Number.isNaN(n))return 3;if(wa(n),i=_i(Se,1),n===i)return 5}return 9};var ya=new ArrayBuffer(9),me=new DataView(ya,1),Se=new Uint8Array(ya,0);function ga(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 bi(r,e){if(r.length-e<2)throw new Error(`${v} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function wa(r){me.setFloat32(0,r,!1)}function _i(r,e){if(r.length-e<4)throw new Error(`${v} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function sl(r){me.setFloat64(0,r,!1)}function xa(r,e){if(r.length-e<8)throw new Error(`${v} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}en.compareTokens=pe.compareTokens;function L(r,e,t){throw new Error(`${v} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function tn(r){return()=>{throw new Error(`${v} ${r}`)}}var k=[];for(let r=0;r<=23;r++)k[r]=L;k[24]=As;k[25]=Cs;k[26]=Ns;k[27]=Ts;k[28]=L;k[29]=L;k[30]=L;k[31]=L;for(let r=32;r<=55;r++)k[r]=L;k[56]=Ds;k[57]=Ls;k[58]=zs;k[59]=Ps;k[60]=L;k[61]=L;k[62]=L;k[63]=L;for(let r=64;r<=87;r++)k[r]=Us;k[88]=$s;k[89]=Rs;k[90]=Ms;k[91]=Os;k[92]=L;k[93]=L;k[94]=L;k[95]=tn("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)k[r]=Vs;k[120]=Hs;k[121]=js;k[122]=qs;k[123]=Gs;k[124]=L;k[125]=L;k[126]=L;k[127]=tn("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)k[r]=Ks;k[152]=Xs;k[153]=Js;k[154]=Zs;k[155]=Ys;k[156]=L;k[157]=L;k[158]=L;k[159]=Qs;for(let r=160;r<=183;r++)k[r]=ea;k[184]=ta;k[185]=ra;k[186]=na;k[187]=ia;k[188]=L;k[189]=L;k[190]=L;k[191]=oa;for(let r=192;r<=215;r++)k[r]=sa;k[216]=aa;k[217]=ca;k[218]=ua;k[219]=fa;k[220]=L;k[221]=L;k[222]=L;k[223]=L;for(let r=224;r<=243;r++)k[r]=tn("simple values are not supported");k[244]=L;k[245]=L;k[246]=L;k[247]=la;k[248]=tn("simple values are not supported");k[249]=da;k[250]=pa;k[251]=ma;k[252]=L;k[253]=L;k[254]=L;k[255]=ha;var Ee=[];for(let r=0;r<24;r++)Ee[r]=new b(p.uint,r,1);for(let r=-1;r>=-24;r--)Ee[31-r]=new b(p.negint,r,1);Ee[64]=new b(p.bytes,new Uint8Array(0),1);Ee[96]=new b(p.string,"",1);Ee[128]=new b(p.array,0,1);Ee[160]=new b(p.map,0,1);Ee[244]=new b(p.false,!1,1);Ee[245]=new b(p.true,!0,1);Ee[246]=new b(p.null,null,1);function cl(){let r=[];return r[p.uint.major]=pe,r[p.negint.major]=Xr,r[p.bytes.major]=bt,r[p.string.major]=Ws,r[p.array.major]=Zr,r[p.map.major]=Yr,r[p.tag.major]=Qr,r[p.float.major]=en,r}var Fy=cl(),Py=new Kr,rn=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${xt} object contains circular references`);return new r(t,e)}},Ve={null:new b(p.null,null),undefined:new b(p.undefined,void 0),true:new b(p.true,!0),false:new b(p.false,!1),emptyArray:new b(p.array,0),emptyMap:new b(p.map,0)},He={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new b(p.float,r):r>=0?new b(p.uint,r):new b(p.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new b(p.uint,r):new b(p.negint,r)},Uint8Array(r,e,t,n){return new b(p.bytes,r)},string(r,e,t,n){return new b(p.string,r)},boolean(r,e,t,n){return r?Ve.true:Ve.false},null(r,e,t,n){return Ve.null},undefined(r,e,t,n){return Ve.undefined},ArrayBuffer(r,e,t,n){return new b(p.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new b(p.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Ve.emptyArray,new b(p.break)]:Ve.emptyArray;n=rn.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=ki(s,t,n);return t.addBreakTokens?[new b(p.array,r.length),i,new b(p.break)]:[new b(p.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Ve.emptyMap,new b(p.break)]:Ve.emptyMap;n=rn.createCheck(n,r);let a=[],c=0;for(let h of o)a[c++]=[ki(h,t,n),ki(i?r.get(h):r[h],t,n)];return ul(a,t),t.addBreakTokens?[new b(p.map,s),a,new b(p.break)]:[new b(p.map,s),a]}};He.Map=He.Object;He.Buffer=He.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))He[`${r}Array`]=He.DataView;function ki(r,e={},t){let n=bs(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||He[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=He[n];if(!o)throw new Error(`${xt} unsupported type: ${n}`);return o(r,n,e,t)}function ul(r,e){e.mapSorter&&r.sort(e.mapSorter)}var fl={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},nn=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=Ee[e];if(t===void 0){let n=k[e];if(!n)throw new Error(`${v} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},or=Symbol.for("DONE"),on=Symbol.for("BREAK");function ll(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=St(e,t);if(o===on){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed array`)}if(o===or)throw new Error(`${v} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function hl(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=St(e,t);if(a===on){if(r.value===1/0)break;throw new Error(`${v} got unexpected break to lengthed map`)}if(a===or)throw new Error(`${v} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${v} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${v} found repeat map key "${a}"`);let c=St(e,t);if(c===or)throw new Error(`${v} 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 or;let t=r.next();if(t.type===p.break)return on;if(t.type.terminal)return t.value;if(t.type===p.array)return ll(t,r,e);if(t.type===p.map)return hl(t,r,e);if(t.type===p.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=St(r,e);return e.tags[t.value](n)}throw new Error(`${v} tag not supported (${t.value})`)}throw new Error("unsupported")}function Si(r,e){if(!(r instanceof Uint8Array))throw new Error(`${v} data to decode must be a Uint8Array`);e=Object.assign({},fl,e);let t=e.tokenizer||new nn(r,e),n=St(t,e);if(n===or)throw new Error(`${v} did not find any content to decode`);if(n===on)throw new Error(`${v} got unexpected break`);return[n,r.subarray(t.pos())]}function sr(r,e){let[t,n]=Si(r,e);if(n.length>0)throw new Error(`${v} too many terminals, data makes no sense`);return t}var _a=42;function ml(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function yl(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=A.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new b(p.tag,_a),new b(p.bytes,t)]}function gl(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function wl(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}function xl(r){for(let e of r.keys())if(typeof e!="string"||e.length===0)throw new Error("Non-string Map keys are not supported by the IPLD Data Model and cannot be encoded");return null}var ba={float64:!0,typeEncoders:{Map:xl,Object:yl,undefined:gl,number:wl}},Gy={...ba,typeEncoders:{...ba.typeEncoders}};function bl(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return A.decode(r.subarray(1))}var sn={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};sn.tags[_a]=bl;var Wy={...sn,tags:sn.tags.slice()};var ka=113;var Sa=r=>sr(ml(r),sn);var va=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=Wr(JSON.stringify(t.value));e.push(n.length>32?Gr(n):n)}[p.array.major](e,t){this.prefix(e),this.inRecursive.push({type:p.array,elements:0}),e.push([91])}[p.map.major](e,t){this.prefix(e),this.inRecursive.push({type:p.map,elements:0}),e.push([123])}[p.tag.major](e,t){}[p.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===p.array)e.push([93]);else if(s.type===p.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${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(`${v} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${v} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let 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 b(p.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${v} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${v} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new b(p.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new b(s>=0?p.uint:p.negint,s,this._pos-e):new b(s>=0?p.uint:p.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${v} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new b(p.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${v} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${v} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${v} unexpected unicode sequence at position ${this._pos}`);let 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(`${v} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${v} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new b(p.string,gi(t),this._pos-e);default:if(o<32)throw new Error(`${v} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${v} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new b(p.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new b(p.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new b(p.null,null,4);case 102:return this.expect([102,97,108,115,101]),new b(p.false,!1,5);case 116:return this.expect([116,114,117,101]),new b(p.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${v} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new b(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${v} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new b(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 b(p.break,void 0,1);if(this.ch()!==44)throw new Error(`${v} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new b(p.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${v} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${v} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Ei(r,e){return e=Object.assign({tokenizer:new Et(r,e)},e),sr(r,e)}function Sl(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var vi=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 b(p.tag,42,0)}if(n.type===p.map){let i=this._next();if(i.type===p.string&&i.value==="bytes"){let o=this._next();if(o.type===p.string){for(let a=0;a<2;a++)if(this._next().type!==p.break)throw new Error("Invalid encoded Bytes form");let s=qt.decode(`m${o.value}`);return new b(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]=A.parse;var Ba=297;var Ia=r=>{let e=Sl(r),t=Object.assign(Bi,{tokenizer:new vi(e,Bi)});return Ei(e,t)};var lg=new TextDecoder;var hg=new TextEncoder;function El(r){return r[Symbol.asyncIterator]!=null}function vl(r){if(El(r))return(async()=>{let n=new Uint8Array(0);for await(let i of r)n=Ie([n,i],n.length+i.length);return n})();let e=[],t=0;for(let n of r)e.push(n),t+=n.byteLength;return Ie(e,t)}var z=vl;function vt(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=A.asCID(a[h]);if(f!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:f,name:h,path:c,toResolve:o}};a=a[h]}else throw new jr(`No property named ${h} found in node ${t}`)}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var Bl=async(r,e,t,n,i,o,s,a)=>{let c=await z(s.get(r,a)),h=Sa(c);return vt(h,c,r,e,t,n,o)},Ca=Bl;var Il=async(r,e,t,n,i,o,s,a)=>{let c=await z(s.get(r,a)),h=Ia(c);return vt(h,c,r,e,t,n,o)},Na=Il;function Al(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 Qe=Al;var Cl=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw new Ze("Offset must be greater than or equal to 0");if(i>n)throw new Ze("Offset must be less than the file size");if(o<0n)throw new Ze("Length must be greater than or equal to 0");if(o>n)throw new Ze("Length must be less than the file size");return{start:i,end:o}},Bt=Cl;var Nl=r=>{async function*e(t={}){let{start:n,end:i}=Bt(r.length,t.offset,t.length),o=Qe(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},Tl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let c=Er(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:Nl(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Ta=Tl;var Dl=async(r,e,t,n,i,o,s,a)=>{let c=await z(s.get(r,a)),h=To(c);return vt(h,c,r,e,t,n,o)},Da=Dl;var Ll=r=>{async function*e(t={}){let{start:n,end:i}=Bt(r.length,t.offset,t.length),o=Qe(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},zl=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw new de(`No link named ${t} found in raw node ${r}`);let c=await z(s.get(r,a));return{entry:{type:"raw",name:e,path:t,cid:r,content:Ll(c),depth:o,size:BigInt(c.length),node:c}}},La=zl;var Fl=async function(r){return(await Xe.encode(r)).slice(0,8).reverse()},Pl=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new se({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},za=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),Ul=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Fa=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw new H("no data in PBNode");let l;try{l=I.unmarshal(r.Data)}catch(u){throw new H(u.message)}if(l.type!=="hamt-sharded-directory")throw new H("not a HAMT");if(l.fanout==null)throw new H("missing fanout");let y=mt({hashFn:Fl,bits:Math.log2(Number(l.fanout))});n={rootBucket:y,hamtDepth:1,lastBucket:y}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await Pl(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=za(s.pos,o),c=Ul(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=za(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 z(t.get(h.Hash,i));return r=$(f),Fa(r,e,t,n,i)},Pa=Fa;function It(r){return r?.extended===!1}function $l(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var an=$l;function Rl(r){return r[Symbol.asyncIterator]!=null}function Ml(r,e){let t=0;if(Rl(r))return(async function*(){for await(let c of r)await e(c,t++)&&(yield c)})();let n=an(r),{value:i,done:o}=n.next();if(o===!0)return(function*(){})();let s=e(i,t++);if(typeof s.then=="function")return(async function*(){await s&&(yield i);for(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 Ua=Ml;function Ol(r){return r[Symbol.asyncIterator]!=null}function Vl(r,e){let t=0;if(Ol(r))return(async function*(){for await(let c of r)yield e(c,t++)})();let n=an(r),{value:i,done:o}=n.next();if(o===!0)return(function*(){})();let s=e(i,t++);if(typeof s.then=="function")return(async function*(){yield await s;for(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=Vl;function te(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var cn=globalThis.CustomEvent??Event;async function*et(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered??!1,i=new EventTarget,o=[],s=te(),a=te(),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=te(),await s.promise),f)break;let m={done:!1};o.push(m),d().then(x=>{m.done=!0,m.ok=!0,m.value=x,i.dispatchEvent(new cn("task-complete"))},x=>{m.done=!0,m.err=x,i.dispatchEvent(new cn("task-complete"))})}c=!0,i.dispatchEvent(new cn("task-complete"))}catch(d){h=d,i.dispatchEvent(new cn("task-complete"))}});function l(){return n?o[0]?.done:!!o.find(d=>d.done)}function*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=te(),await a.promise),h!=null||(n?yield*y():yield*u(),h!=null))throw h;if(c&&o.length===0)break}}var un=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||(e-1&e)!==0)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Ct=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new un(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new un(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ii=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function fn(r={}){return Hl(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 Hl(r,e){e=e??{};let t=e.onEnd,n=new Ct,i,o,s,a=te(),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(_){g(_)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=te()})}},h=x=>o!=null?o(x):(n.push(x),i),f=x=>(n=new Ct,o!=null?o({error:x}):(n.push({error:x}),i)),l=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return h({done:!1,value:x})},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,_;g!=null&&(w=new Promise((S,B)=>{_=()=>{B(new Ii)},g.addEventListener("abort",_)}));try{await Promise.race([a.promise,w])}finally{_!=null&&g!=null&&g?.removeEventListener("abort",_)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(x){return m.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:l,end(x){return m.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:x=>m.onEmpty(x)},i}var ln=class extends Error{type;code;constructor(e,t,n){super(e??"The operation was aborted"),this.type="aborted",this.name=n??"AbortError",this.code=t??"ABORT_ERR"}};async function $a(r,e,t){if(e==null)return r;if(e.aborted)return r.catch(()=>{}),Promise.reject(new ln(t?.errorMessage,t?.errorCode,t?.errorName));let n,i=new ln(t?.errorMessage,t?.errorCode,t?.errorName);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Ai=class{readNext;haveNext;ended;nextResult;error;constructor(){this.ended=!1,this.readNext=te(),this.haveNext=te()}[Symbol.asyncIterator](){return this}async next(){if(this.nextResult==null&&await this.haveNext.promise,this.nextResult==null)throw new Error("HaveNext promise resolved but nextResult was undefined");let e=this.nextResult;return this.nextResult=void 0,this.readNext.resolve(),this.readNext=te(),e}async throw(e){return this.ended=!0,this.error=e,e!=null&&(this.haveNext.promise.catch(()=>{}),this.haveNext.reject(e)),{done:!0,value:void 0}}async return(){let e={done:!0,value:void 0};return this.ended=!0,this.nextResult=e,this.haveNext.resolve(),e}async push(e,t){await this._push(e,t)}async end(e,t){e!=null?await this.throw(e):await this._push(void 0,t)}async _push(e,t){if(e!=null&&this.ended)throw this.error??new Error("Cannot push value onto an ended pushable");for(;this.nextResult!=null;)await this.readNext.promise;e!=null?this.nextResult={done:!1,value:e}:(this.ended=!0,this.nextResult={done:!0,value:void 0}),this.haveNext.resolve(),this.haveNext=te(),await $a(this.readNext.promise,t?.signal,t)}};function Ra(){return new Ai}function jl(r){return r[Symbol.asyncIterator]!=null}async function ql(r,e,t){try{await Promise.all(r.map(async n=>{for await(let i of n)await e.push(i,{signal:t}),t.throwIfAborted()})),await e.end(void 0,{signal:t})}catch(n){await e.end(n,{signal:t}).catch(()=>{})}}async function*Gl(r){let e=new AbortController,t=Ra();ql(r,t,e.signal).catch(()=>{});try{yield*t}finally{e.abort()}}function*Wl(r){for(let e of r)yield*e}function Kl(...r){let e=[];for(let t of r)jl(t)||e.push(t);return e.length===r.length?Wl(e):Gl(r)}var Ma=Kl;function De(r,...e){if(r==null)throw new Error("Empty pipeline");if(Ci(r)){let n=r;r=()=>n.source}else if(Va(r)||Oa(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Ci(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++)Ci(t[n])&&(t[n]=Jl(t[n]));return Xl(...t)}var Xl=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},Oa=r=>r?.[Symbol.asyncIterator]!=null,Va=r=>r?.[Symbol.iterator]!=null,Ci=r=>r==null?!1:r.sink!=null&&r.source!=null,Jl=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=fn({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(Oa(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 Ma(n,i())}return r.source};var Zl=(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*De(l,y=>At(y,u=>async()=>{let d=u.Name??"",m=`${n}/${d}`;return It(c)?{cid:u.Hash,name:d,path:m}:(await i(u.Hash,d,m,[],o+1,s,c)).entry}),y=>et(y,{ordered:!0,concurrency:c.blockReadConcurrency}),y=>Ua(y,u=>u!=null))}return a},Ha=Zl;var Ti=zt(qa(),1);var Di=class r extends Error{name="TimeoutError";constructor(e,t){super(e,t),Error.captureStackTrace?.(this,r)}},Ga=r=>r.reason??new DOMException("This operation was aborted.","AbortError");function Li(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout},signal:s}=e,a,c,f=new Promise((l,y)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s?.aborted){y(Ga(s));return}if(s&&(c=()=>{y(Ga(s))},s.addEventListener("abort",c,{once:!0})),r.then(l,y),t===Number.POSITIVE_INFINITY)return;let u=new Di;a=o.setTimeout.call(void 0,()=>{if(n){try{l(n())}catch(d){y(d)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?l():i instanceof Error?y(i):(u.message=i??`Promise timed out after ${t} milliseconds`,y(u))},t)}).finally(()=>{f.clear(),c&&s&&s.removeEventListener("abort",c)});return f.clear=()=>{o.clearTimeout.call(void 0,a),a=void 0},f}function zi(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{#t=[];enqueue(e,t){let{priority:n=0,id:i}=t??{},o={priority:n,id:i,run:e};if(this.size===0||this.#t[this.size-1].priority>=n){this.#t.push(o);return}let s=zi(this.#t,o,(a,c)=>c.priority-a.priority);this.#t.splice(s,0,o)}setPriority(e,t){let n=this.#t.findIndex(o=>o.id===e);if(n===-1)throw new ReferenceError(`No promise function with the id "${e}" exists in the queue.`);let[i]=this.#t.splice(n,1);this.enqueue(i.run,{priority:t,id:e})}dequeue(){return this.#t.shift()?.run}filter(e){return this.#t.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#t.length}};var ur=class extends Ti.default{#t;#n;#i=0;#d;#p=!1;#m=!1;#u;#x=0;#y=0;#o;#s;#e;#b;#r=0;#f;#a;#B=1n;#l=new Map;timeout;constructor(e){if(super(),e={carryoverIntervalCount:!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})`);if(this.#t=e.carryoverIntervalCount??e.carryoverConcurrencyCount??!1,this.#n=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#d=e.intervalCap,this.#u=e.interval,this.#e=new e.queueClass,this.#b=e.queueClass,this.concurrency=e.concurrency,e.timeout!==void 0&&!(Number.isFinite(e.timeout)&&e.timeout>0))throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${e.timeout}\` (${typeof e.timeout})`);this.timeout=e.timeout,this.#a=e.autoStart===!1,this.#z()}get#I(){return this.#n||this.#i<this.#d}get#A(){return this.#r<this.#f}#C(){this.#r--,this.#r===0&&this.emit("pendingZero"),this.#g(),this.emit("next")}#N(){this.#E(),this.#S(),this.#s=void 0}get#T(){let e=Date.now();if(this.#o===void 0){let t=this.#x-e;if(t<0){if(this.#y>0){let n=e-this.#y;if(n<this.#u)return this.#_(this.#u-n),!0}this.#i=this.#t?this.#r:0}else return this.#_(t),!0}return!1}#_(e){this.#s===void 0&&(this.#s=setTimeout(()=>{this.#N()},e))}#k(){this.#o&&(clearInterval(this.#o),this.#o=void 0)}#D(){this.#s&&(clearTimeout(this.#s),this.#s=void 0)}#g(){if(this.#e.size===0)return this.#k(),this.emit("empty"),this.#r===0&&(this.#D(),this.emit("idle")),!1;let e=!1;if(!this.#a){let t=!this.#T;if(this.#I&&this.#A){let n=this.#e.dequeue();this.#n||(this.#i++,this.#h()),this.emit("active"),this.#y=Date.now(),n(),t&&this.#S(),e=!0}}return e}#S(){this.#n||this.#o!==void 0||(this.#o=setInterval(()=>{this.#E()},this.#u),this.#x=Date.now()+this.#u)}#E(){this.#i===0&&this.#r===0&&this.#o&&this.#k(),this.#i=this.#t?this.#r:0,this.#w(),this.#h()}#w(){for(;this.#g(););}get concurrency(){return this.#f}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.#f=e,this.#w()}async#L(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}setPriority(e,t){if(typeof t!="number"||!Number.isFinite(t))throw new TypeError(`Expected \`priority\` to be a finite number, got \`${t}\` (${typeof t})`);this.#e.setPriority(e,t)}async add(e,t={}){return t.id??=(this.#B++).toString(),t={timeout:this.timeout,...t},new Promise((n,i)=>{let o=Symbol(`task-${t.id}`);this.#e.enqueue(async()=>{this.#r++,this.#l.set(o,{id:t.id,priority:t.priority??0,startTime:Date.now(),timeout:t.timeout});try{try{t.signal?.throwIfAborted()}catch(c){throw this.#n||this.#i--,this.#l.delete(o),c}let s=e({signal:t.signal});t.timeout&&(s=Li(Promise.resolve(s),{milliseconds:t.timeout,message:`Task timed out after ${t.timeout}ms (queue has ${this.#r} running, ${this.#e.size} waiting)`})),t.signal&&(s=Promise.race([s,this.#L(t.signal)]));let a=await s;n(a),this.emit("completed",a)}catch(s){i(s),this.emit("error",s)}finally{this.#l.delete(o),queueMicrotask(()=>{this.#C()})}},t),this.emit("add"),this.#g()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#w(),this):this}pause(){this.#a=!0}clear(){this.#e=new this.#b,this.#v()}async onEmpty(){this.#e.size!==0&&await this.#c("empty")}async onSizeLessThan(e){this.#e.size<e||await this.#c("next",()=>this.#e.size<e)}async onIdle(){this.#r===0&&this.#e.size===0||await this.#c("idle")}async onPendingZero(){this.#r!==0&&await this.#c("pendingZero")}async onRateLimit(){this.isRateLimited||await this.#c("rateLimit")}async onRateLimitCleared(){this.isRateLimited&&await this.#c("rateLimitCleared")}async onError(){return new Promise((e,t)=>{let n=i=>{this.off("error",n),t(i)};this.on("error",n)})}async#c(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#e.size}sizeBy(e){return this.#e.filter(e).length}get pending(){return this.#r}get isPaused(){return this.#a}#z(){this.#n||(this.on("add",()=>{this.#e.size>0&&this.#h()}),this.on("next",()=>{this.#h()}))}#h(){this.#n||this.#m||(this.#m=!0,queueMicrotask(()=>{this.#m=!1,this.#v()}))}#v(){let e=this.#p,t=!this.#n&&this.#i>=this.#d&&this.#e.size>0;t!==e&&(this.#p=t,this.emit(t?"rateLimit":"rateLimitCleared"))}get isRateLimited(){return this.#p}get isSaturated(){return this.#r===this.#f&&this.#e.size>0||this.isRateLimited&&this.#e.size>0}get runningTasks(){return[...this.#l.values()].map(e=>({...e}))}};async function Wa(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let h=Qe(e,n,i,o);t.push(h);return}if(e.Data==null)throw new H("no data in PBNode");let a;try{a=I.unmarshal(e.Data)}catch(h){throw new H(h.message)}if(a.data!=null){let h=a.data,f=Qe(h,n,i,o);t.push(f),n+=BigInt(f.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw new H("Inconsistent block sizes and dag links");for(let h=0;h<e.Links.length;h++){let f=e.Links[h],l=n,y=l+a.blockSizes[h];if((i>=l&&i<y||o>=l&&o<=y||i<l&&o>y)&&c.push({link:f,blockStart:n}),n=y,n>o)break}await De(c,h=>At(h,f=>async()=>{let l=await z(r.get(f.link.Hash,s));return{...f,block:l}}),h=>et(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 q:u=$(l);break;case Q:u=l;break;default:t.end(new H(`Unsupported codec: ${f.Hash.code}`));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 Wa(r,u,t,y,i,o,s)}),await d.onIdle()}}),n>=o&&t.end()}var eh=(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}=Bt(h,c.offset,c.length);if(l===0n)return;let y=0n,u=l-f,d=fn();c.onProgress?.(new U("unixfs:exporter:walk:file",{cid:r})),Wa(s,e,d,0n,f,l,c).catch(m=>{d.end(m)});for await(let m of d)if(m!=null){if(y+=BigInt(m.byteLength),y>u)throw d.end(),new Vr("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect");y===u&&d.end(),c.onProgress?.(new U("unixfs:exporter:progress:unixfs:file",{bytesRead:y,totalBytes:u,fileSize:h})),yield m}if(y<u)throw new Hr("Traversed entire DAG but did not read enough bytes")}return a},Fi=eh;var th=(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 new H("no data in PBNode");let a;try{a=I.unmarshal(r.Data)}catch(f){throw new H(f.message)}if(a.fanout==null)throw new H("missing fanout");let c=(a.fanout-1n).toString(16).length,h=De(s,f=>At(f,l=>async()=>{let y=l.Name!=null?l.Name.substring(c):null;if(y!=null&&y!==""){let u=`${e}/${y}`;return It(o)?{entries:[{cid:l.Hash,name:y,path:u}]}:{entries:[(await t(l.Hash,y,u,[],n+1,i,o)).entry].filter(Boolean)}}else{let u=await z(i.get(l.Hash,o));return r=$(u),o.onProgress?.(new U("unixfs:exporter:walk:hamt-sharded-directory",{cid:l.Hash})),{entries:Ka(r,e,t,n,i,o)}}}),f=>et(f,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:f}of h)yield*f}var Xa=th;var rh=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,nh={raw:Fi,file:Fi,directory:Ha,"hamt-sharded-directory":Xa,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},ih=async(r,e,t,n,i,o,s,a)=>{if(It(a)&&n.length===0)return{entry:{cid:r,name:e,path:t}};let c=await z(s.get(r,a)),h=$(c),f,l;if(e==null&&(e=r.toString()),h.Data==null)throw new H("no data in PBNode");try{f=I.unmarshal(h.Data)}catch(u){throw new H(u.message)}if(t==null&&(t=e),n.length>0){let u;if(f?.type==="hamt-sharded-directory"?u=await Pa(h,n[0],s):u=rh(h,n[0]),u==null)throw new de("file does not exist");let d=n.shift(),m=`${t}/${d}`;l={cid:u,toResolve:n,name:d??"",path:m}}let y=nh[f.type](r,h,f,t,i,o,s);if(y==null)throw new de("could not find content exporter");return f.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}:{entry:{type:"file",name:e,path:t,cid:r,content:y,unixfs:f,depth:o,node:h,size:f.fileSize()},next:l}},Ja=ih;var oh={[q]:Ja,[Q]:La,[ka]:Ca,[Ba]:Na,[ri.code]:Ta,[No]:Da},Za=async(r,e,t,n,i,o,s)=>{let a=oh[r.code];if(a==null)throw new Or(`No resolver for code ${r.code}`);return a(r,e,t,n,Za,i,o,s)},Ya=Za;var sh=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),ah=r=>{if(r instanceof Uint8Array)return{cid:A.decode(r),toResolve:[]};let e=A.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=sh(r);return{cid:A.parse(t[0]),toResolve:t.slice(1)}}throw new Mr(`Unknown path type ${r}`)};async function*Pi(r,e,t={}){let{cid:n,toResolve:i}=ah(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await Ya(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw new de(`Could not resolve ${r}`);if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Y(r,e,t={}){let n=await _e(Pi(r,e,t));if(n==null)throw new de(`Could not resolve ${r}`);return n}async function*dn(r,e,t={}){let n=await Y(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}function ch(r,e){if(typeof r=="string")return uh(r);if(typeof r=="number")return hh(r,e);throw Error(`Value provided to ms() must be a string or number. value=${JSON.stringify(r)}`)}var pn=ch;function uh(r){if(typeof r!="string"||r.length===0||r.length>100)throw Error(`Value provided to ms.parse() must be a string with length between 1 and 99. value=${JSON.stringify(r)}`);let e=/^(?<value>-?\d*\.?\d+) *(?<unit>milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|months?|mo|years?|yrs?|y)?$/i.exec(r);if(!e?.groups)return NaN;let{value:t,unit:n="ms"}=e.groups,i=parseFloat(t),o=n.toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return i*315576e5;case"months":case"month":case"mo":return i*26298e5;case"weeks":case"week":case"w":return i*6048e5;case"days":case"day":case"d":return i*864e5;case"hours":case"hour":case"hrs":case"hr":case"h":return i*36e5;case"minutes":case"minute":case"mins":case"min":case"m":return i*6e4;case"seconds":case"second":case"secs":case"sec":case"s":return i*1e3;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return i;default:throw Error(`Unknown unit "${o}" provided to ms.parse(). value=${JSON.stringify(r)}`)}}function fh(r){let e=Math.abs(r);return e>=315576e5?`${Math.round(r/315576e5)}y`:e>=26298e5?`${Math.round(r/26298e5)}mo`:e>=6048e5?`${Math.round(r/6048e5)}w`: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 lh(r){let e=Math.abs(r);return e>=315576e5?tt(r,e,315576e5,"year"):e>=26298e5?tt(r,e,26298e5,"month"):e>=6048e5?tt(r,e,6048e5,"week"):e>=864e5?tt(r,e,864e5,"day"):e>=36e5?tt(r,e,36e5,"hour"):e>=6e4?tt(r,e,6e4,"minute"):e>=1e3?tt(r,e,1e3,"second"):`${r} ms`}function hh(r,e){if(typeof r!="number"||!Number.isFinite(r))throw Error("Value provided to ms.format() must be of type number.");return e?.long?lh(r):fh(r)}function tt(r,e,t,n){let i=e>=t*1.5;return`${Math.round(r/t)} ${n}${i?"s":""}`}function Ui(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=pn,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),_=w-(l||w);g.diff=_,g.prev=l,g.curr=w,l=w,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let S=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(C,E)=>{if(C==="%%")return"%";S++;let D=t.formatters[E];if(typeof D=="function"){let ye=x[S];C=D.call(g,ye),x.splice(S,1),S--}return C}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return m.namespace=f,m.useColors=t.useColors(),m.color=t.selectColor(f),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>y!==null?y:(u!==t.namespaces&&(u=t.namespaces,d=t.enabled(f)),d),set:x=>{y=x}}),typeof t.init=="function"&&t.init(m),m}function n(f,l){let y=t(this.namespace+(typeof l>"u"?":":l)+f);return y.log=this.log,y}function i(f){t.save(f),t.namespaces=f,t.names=[],t.skips=[];let l,y=(typeof f=="string"?f:"").split(/[\s,]+/),u=y.length;for(l=0;l<u;l++)y[l]&&(f=y[l].replace(/\*/g,".*?"),f[0]==="-"?t.skips.push(new RegExp("^"+f.substr(1)+"$")):t.names.push(new RegExp("^"+f+"$")))}function o(){let f=[...t.names.map(a),...t.skips.map(a).map(l=>"-"+l)].join(",");return t.enable(""),f}function s(f){if(f[f.length-1]==="*")return!0;let l,y;for(l=0,y=t.skips.length;l<y;l++)if(t.skips[l].test(f))return!1;for(l=0,y=t.names.length;l<y;l++)if(t.names[l].test(f))return!0;return!1}function a(f){return f.toString().substring(2,f.toString().length-2).replace(/\.\*\?$/,"*")}function c(f){return f instanceof Error?f.stack??f.message:f}function h(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.setupFormatters(t.formatters),t.enable(t.load()),t}var mn=xh(),dh=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ph(){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 mh(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+pn(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 yh=console.debug??console.log??(()=>{});function gh(r){try{r?mn?.setItem("debug",r):mn?.removeItem("debug")}catch{}}function wh(){let r;try{r=mn?.getItem("debug")}catch{}return!r&&typeof globalThis.process<"u"&&"env"in globalThis.process&&(r=globalThis.process.env.DEBUG),r}function xh(){try{return localStorage}catch{}}function bh(r){r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}}var Qa=Ui({formatArgs:mh,save:gh,load:wh,useColors:ph,setupFormatters:bh,colors:dh,storage:mn,log:yh});var re=Qa;re.formatters.b=r=>r==null?"undefined":he.baseEncode(r);re.formatters.t=r=>r==null?"undefined":Ue.baseEncode(r);re.formatters.m=r=>r==null?"undefined":qt.baseEncode(r);re.formatters.p=r=>r==null?"undefined":r.toString();re.formatters.c=r=>r==null?"undefined":r.toString();re.formatters.k=r=>r==null?"undefined":r.toString();re.formatters.a=r=>r==null?"undefined":r.toString();re.formatters.e=r=>{if(r==null)return"undefined";let e=ec(r.message),t=ec(r.stack);return e!=null&&t!=null?t.includes(e)?t:`${e}
3
+ ${t}`:t??e??r.toString()};function _h(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function R(r){let e=_h(`${r}:trace`);return re.enabled(`${r}:trace`)&&re.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=re(`${r}:trace`)),Object.assign(re(r),{error:re(`${r}:error`),trace:e,newScope:t=>R(`${r}:${t}`)})}function ec(r){if(r!=null&&(r=r.trim(),r.length!==0))return r}var Oi=zt(zr(),1);function gn(r){function e(t){return t instanceof yn?t:new yn(t,r)}return e}var yn=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?Ie([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()}},kh=[255,254,252,248,240,224,192,128],Sh=[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=Eh(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 Eh(r,e,t){let n=vh(e,t);return(r&n)>>>e}function vh(r,e){return kh[r]&Sh[Math.min(e+r-1,7)]}var fr=BigInt(Xe.code),rt=8;async function Nt(r){return(await Xe.encode(r)).subarray(0,8).reverse()}var nc=zt(zr(),1);var ve=async(r,e,t)=>{t.codec==null&&(t.codec=O);let n=await oe.digest(r),i=A.create(t.cidVersion??1,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var Ri=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}},wn=class extends Ri{_bucket;constructor(e,t){super(e,t),this._bucket=mt({hashFn:Nt,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=rc(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of tc(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*tc(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 se){let x;for await(let g of tc(d,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no sub-shard found");o.push({Name:m,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(Ih(d.value)){let x=d.value,g;for await(let _ of x.flush(e))g=_,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 I({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:fr,mtime:t?.mtime,mode:t?.mode}),h={Data:c.marshal(),Links:o},f=T(P(h)),l=await ve(f,e,n),y=BigInt(f.byteLength)+s;yield{cid:l,unixfs:c,size:y}}function Ih(r){return typeof r.flush=="function"}function rc(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 se){let l=rc(h,null,t);i.push({Name:f,Tsize:Number(l),Hash:t.cidVersion===0?xn:bn})}else if(typeof h.value.flush=="function"){let y=h.value.nodeSize();i.push({Name:f+h.key,Tsize:Number(y),Hash:t.cidVersion===0?xn:bn})}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 I({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:fr,mtime:e?.mtime,mode:e?.mode});return T(P({Data:s.marshal(),Links:i})).length}var xn=A.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),bn=A.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Mi=R("helia:unixfs:commands:utils:hamt-utils"),_n=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),ic=async(r,e,t)=>{let n=new wn({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},kn=async(r,e,t)=>{let n=I.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,rt));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,h=r[a],f=Uint8Array.from(h.children.bitField().reverse()),l=new I({type:"hamt-sharded-directory",data:f,fanout:i,hashType:fr});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 ve(y,e,t),!c){let u=r[a+1];if(u==null)throw new Error("Was not operating on shard root but also had no parent?");Mi("updating link in parent sub-shard with prefix %s",u.prefix),u.node.Links=u.node.Links.filter(d=>d.Name!==u.prefix),u.node.Links.push({Name:u.prefix,Hash:o,Tsize:h.node.Links.reduce((d,m)=>d+(m.Tsize??0),y.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Sn=async(r,e,t,n)=>{let o=gn(Nt)(M(e)),s=[];for(;;){let a=await z(t.get(r,n)),c=$(a),h=new nc.default,f=await o.take(rt),l=_n(f);s.push({prefix:l,children:h,node:c});let y;for(let d of c.Links){let m=d.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(m.substring(0,2),16);h.set(x,!0),m.startsWith(l)&&(y=d)}if(y==null){Mi("no link found with prefix %s for %s",l,e);break}let u=y.Name??"";if(u.length<2)throw new Error("Invalid HAMT - link name was too short");if(u.length===2){r=y.Hash,Mi("descend into sub-shard with prefix %s",u);continue}break}return{path:s,hash:o}};async function En(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=I.unmarshal(r.Data),o;if(i.type==="directory")o=Ah(r);else if(i.type==="hamt-sharded-directory")o=await oc(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function Ah(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?bn.bytes.byteLength:xn.bytes.byteLength;return e}async function oc(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!I.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===q){let c=await z(n.get(s.Hash,i)),h=$(c);e+=await oc(h,e,t,n,i)}}return e}var Le=R("helia:unixfs:components:utils:add-link");async function Tt(r,e,t,n){if(r.node.Data==null)throw new V("Invalid parent passed to addLink");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Le("adding link to sharded directory"),Dh(r,e,t,n);Le(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await Th(r,e,t,n);if(await En(o.node,t,n.shardSplitThresholdBytes??262144,n)){Le("converting directory to sharded directory");let s=await Nh(o,t);o.cid=s.cid,o.node=$(await z(t.get(s.cid,n)))}return o}var Nh=async(r,e)=>{if(r.node.Data==null)throw new V("Invalid parent passed to convertToShardedDirectory");let t=I.unmarshal(r.node.Data),n=await ic(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 Le(`converted directory to sharded directory ${n.cid}`),n},Th=async(r,e,t,n)=>{let i=r.node.Links.filter(f=>{let l=f.Name===e.Name;if(l&&!n.allowOverwriting)throw new er;return!l});if(i.push(e),r.node.Data==null)throw new ee("Parent node with no data passed to addToDirectory");let o=I.unmarshal(r.node.Data),s;if(o.mtime!=null){let f=Date.now(),l=Math.floor(f/1e3);o.mtime={secs:BigInt(l),nsecs:(f-l*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=P({Data:s,Links:i});let a=T(r.node),c=await oe.digest(a),h=A.create(r.cid.version,q,c);return await t.put(h,a),{node:r.node,cid:h}},Dh=async(r,e,t,n)=>{let{path:i,hash:o}=await Sn(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);Le("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(Le("link %s was present in shard",h),f.Name===h){if(!n.allowOverwriting)throw new er;Le("overwriting %s in sub-shard",e.Name),s.node.Links=s.node.Links.filter(l=>l.Name!==h),s.node.Links.push({Name:h,Hash:e.Hash,Tsize:e.Tsize})}else{if(f.Name?.length===2)throw new Error("Existing link was sub-shard?!");{Le("prefix %s already exists, creating new sub-shard",a);let l=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),y=s.node.Links.splice(l,1)[0],u=(y.Name??"").substring(2),m=gn(Nt)(M(u));for(let x=0;x<i.length;x++)await m.take(rt);for(;;){let x=await m.take(rt),g=_n(x);y.Name=`${g}${u}`;let w=await o.take(rt),_=_n(w);if(g===_){let B=new Oi.default;B.set(w,!0),i.push({prefix:_,children:B,node:{Links:[]}});continue}let S=new Oi.default;S.set(w,!0),S.set(x,!0),i.push({prefix:a,children:S,node:{Links:[y,{Name:`${_}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Le("link %s was not present in sub-shard",h),e.Name=h,s.node.Links.push(e),s.children.set(c,!0),Le("adding %s to existing sub-shard",h);return kn(i,t,n)};async function je(r,e,t={}){let n=await Y(r,e,t);if(n.type!=="directory")throw new Oe(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Dt(r,e,t,n){let i=await Y(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Ne(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:Lh(i.node),Hash:r}}function Lh(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return T(r).byteLength+e}var zh=R("helia:unixfs:components:utils:resolve");async function ze(r,e,t,n){if(e==null||e==="")return{cid:r};let i=`/ipfs/${r}${e==null?"":`/${e}`}`,o=await Zo(Pi(i,t,n));if(o.length===0)throw new Ur("Could not find path in directory");return zh("resolved %s to %c",e,r),{cid:o[o.length-1].cid,path:e,segments:o}}async function Lt(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([je(o.cid,t,n),Dt(i.cid,i.name,t,n)]);r=(await Tt(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}async function*sc(r,e,t={}){let n=await ze(r,t.path,e,t),i=await Y(n.cid,e,t);if(i.type!=="file"&&i.type!=="raw")throw new $r;if(i.content==null)throw new yt;yield*i.content(t)}var Fh=R("helia:unixfs:chmod");async function ac(r,e,t,n={}){let i=await ze(r,n.path,t,n);if(Fh("chmod %c %d",i.cid,e),n.recursive===!0){let l=await De(async function*(){for await(let y of dn(i.cid,t,n)){let u,d=[];if(y.type==="raw")u=new I({type:"file",data:y.node});else if(y.type==="file"||y.type==="directory")u=y.unixfs,d=y.node.Links;else throw new Ne;u.mode=e;let m={Data:u.marshal(),Links:d};yield{path:y.path,content:m}}},y=>Je(y,t,{...n,dagBuilder:async function*(u,d){for await(let m of u)yield async function(){let x=m.content,g=T(x),w=await ve(g,d,{...n,cidVersion:r.version});if(x.Data==null)throw new ee(`${w} had no data`);let _=I.unmarshal(x.Data);return{cid:w,size:BigInt(g.length),path:m.path,unixfs:_}}}}),async y=>_e(y));if(l==null)throw new Te(`Could not chmod ${i.cid.toString()}`);return Lt(l.cid,i,t,n)}let o=await z(t.get(i.cid,n)),s,a=[];if(i.cid.code===Q)s=new I({type:"file",data:o});else{let l=$(o);if(l.Data==null)throw new ee(`${i.cid.toString()} had no data`);a=l.Links,s=I.unmarshal(l.Data)}s.mode=e;let c=T({Data:s.marshal(),Links:a}),h=await oe.digest(c),f=A.create(i.cid.version,q,h);return await t.put(f,c),Lt(f,i,t,n)}var Ph=R("helia:unixfs:cp");async function cc(r,e,t,n,i={}){if(t.includes("/"))throw new V("Name must not have slashes");let[o,s]=await Promise.all([je(e,n,i),Dt(r,t,n,i)]);return Ph('Adding %c as "%s" to %c',r,t,e),(await Tt(o,s,n,{allowOverwriting:i.force,cidVersion:e.version,...i})).cid}async function*uc(r,e,t={}){let n=await ze(r,t.path,e,t),i=await Y(n.cid,e,{...t,extended:!0});if(i.type==="file"||i.type==="raw"){t.extended===!1?yield{name:i.name,path:i.path,cid:i.cid}:yield i;return}if(i.content==null)throw new yt;if(i.type!=="directory")throw new Oe;yield*i.content(t)}var fc=R("helia:unixfs:mkdir");async function lc(r,e,t,n={}){if(e.includes("/"))throw new V("Path must not have slashes");if((await Y(r,t,n)).type!=="directory")throw new Oe(`${r.toString()} was not a UnixFS directory`);fc("creating %s",e);let s={Data:new I({type:"directory",mode:n.mode,mtime:n.mtime}).marshal(),Links:[]},a=T(s),c=await oe.digest(a),h=A.create(n.cidVersion??1,q,c);await t.put(h,a);let[f,l]=await Promise.all([je(r,t,n),Dt(h,e,t,n)]);return fc("adding empty dir called %s to %c",e,r),(await Tt(f,l,t,{...n,allowOverwriting:n.force})).cid}var vn=R("helia:unixfs:utils:remove-link");async function hc(r,e,t,n){if(r.node.Data==null)throw new ee("Parent node had no data");if(I.unmarshal(r.node.Data).type==="hamt-sharded-directory"){vn(`removing ${e} from sharded directory`);let o=await $h(r,e,t,n);return await En(o.node,t,n.shardSplitThresholdBytes??262144,n)?o:(vn("converting shard to flat directory %c",r.cid),Rh(o,t,n))}return vn(`removing link ${e} regular directory`),Uh(r,e,t,n)}var Uh=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=T(r.node),o=await ve(i,t,{...n,cidVersion:r.cid.version});return vn(`Updated regular directory ${o}`),{node:r.node,cid:o}},$h=async(r,e,t,n)=>{let{path:i}=await Sn(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 kn(i,t,n)},Rh=async(r,e,t)=>{if(r.node.Data==null)throw new V("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Y(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let h=0;c.node instanceof Uint8Array?h=c.node.byteLength:h=T(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:h})}let o=I.unmarshal(r.node.Data);n.Data=new I({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=T(P(n));return{cid:await ve(s,e,{codec:O,cidVersion:r.cid.version,signal:t.signal}),node:n}};var Mh=R("helia:unixfs:rm");async function dc(r,e,t,n={}){if(e.includes("/"))throw new V("Name must not have slashes");let i=await je(r,t,n);return Mh("Removing %s from %c",e,r),(await hc(i,e,t,{...n,cidVersion:r.version})).cid}var Vi={32:16777619n,64:1099511628211n,128:309485009821345068724781371n,256:374144419156711147060143317175368453031918731002211n,512:35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852759n,1024:5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082573n},pc={32:2166136261n,64:14695981039346656037n,128:144066263297769815596495629667062367629n,256:100029257958052580907070968620625704837092796014241193945225284501741471925557n,512:9659303129496669498009435400716310466090418745672637896108374329434462657994582932197716438449813051892206539805784495328239340083876191928701583869517785n,1024:14197795064947621068722070641403218320880622795441933960878474914617582723252296732303717722150864096521202355549365628174669108571814760471015076148029755969804077320157692458563003215304957150157403644460363550505412711285966361610267868082893823963790439336411086884584107735010676915n},mc=new globalThis.TextEncoder;function Oh(r,e){let t=Vi[e],n=pc[e];for(let i=0;i<r.length;i++)n^=BigInt(r[i]),n=BigInt.asUintN(e,n*t);return n}function Vh(r,e,t){if(t.length===0)throw new Error("The `utf8Buffer` option must have a length greater than zero");let n=Vi[e],i=pc[e],o=r;for(;o.length>0;){let s=mc.encodeInto(o,t);o=o.slice(s.read);for(let a=0;a<s.written;a++)i^=BigInt(t[a]),i=BigInt.asUintN(e,i*n)}return i}function Hi(r,{size:e=32,utf8Buffer:t}={}){if(!Vi[e])throw new Error("The `size` option must be one of 32, 64, 128, 256, 512, or 1024");if(typeof r=="string"){if(t)return Vh(r,e,t);r=mc.encode(r)}return Oh(r,e)}var lr={hash:r=>Number(Hi(r,{size:32})),hashV:(r,e)=>Hh(lr.hash(r,e))};function Hh(r){let e=r.toString(16);return e.length%2===1&&(e=`0${e}`),M(e,"base16")}var yc=64,Be=class{fp;h;seed;constructor(e,t,n,i=2){if(i>yc)throw new TypeError("Invalid Fingerprint Size");let o=t.hashV(e,n),s=ge(i);for(let a=0;a<s.length;a++)s[a]=o[a];s.length===0&&(s[0]=7),this.fp=s,this.h=t,this.seed=n}hash(){return this.h.hash(this.fp,this.seed)}equals(e){return e?.fp instanceof Uint8Array?_r(this.fp,e.fp):!1}};function nt(r,e){return Math.floor(Math.random()*(e-r))+r}var it=class{contents;constructor(e){this.contents=new Array(e).fill(null)}has(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");return this.contents.some(t=>e.equals(t))}add(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");for(let t=0;t<this.contents.length;t++)if(this.contents[t]==null)return this.contents[t]=e,!0;return!0}swap(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=nt(0,this.contents.length-1),n=this.contents[t];return this.contents[t]=e,n}remove(e){if(!(e instanceof Be))throw new TypeError("Invalid Fingerprint");let t=this.contents.findIndex(n=>e.equals(n));return t>-1?(this.contents[t]=null,!0):!1}};var jh=500,hr=class{bucketSize;filterSize;fingerprintSize;buckets;count;hash;seed;constructor(e){this.filterSize=e.filterSize,this.bucketSize=e.bucketSize??4,this.fingerprintSize=e.fingerprintSize??2,this.count=0,this.buckets=[],this.hash=e.hash??lr,this.seed=e.seed??nt(0,Math.pow(2,10))}add(e){typeof e=="string"&&(e=M(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=(n^t.hash())%this.filterSize;if(this.buckets[n]==null&&(this.buckets[n]=new it(this.bucketSize)),this.buckets[i]==null&&(this.buckets[i]=new it(this.bucketSize)),this.buckets[n].add(t)||this.buckets[i].add(t))return this.count++,!0;let o=[n,i],s=o[nt(0,o.length-1)];this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize));for(let a=0;a<jh;a++){let c=this.buckets[s].swap(t);if(c!=null&&(s=(s^c.hash())%this.filterSize,this.buckets[s]==null&&(this.buckets[s]=new it(this.bucketSize)),this.buckets[s].add(c)))return this.count++,!0}return!1}has(e){typeof e=="string"&&(e=M(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.has(t)??!1;if(i)return i;let o=(n^t.hash())%this.filterSize;return this.buckets[o]?.has(t)??!1}remove(e){typeof e=="string"&&(e=M(e));let t=new Be(e,this.hash,this.seed,this.fingerprintSize),n=this.hash.hash(e,this.seed)%this.filterSize,i=this.buckets[n]?.remove(t)??!1;if(i)return this.count--,i;let o=(n^t.hash())%this.filterSize,s=this.buckets[o]?.remove(t)??!1;return s&&this.count--,s}get reliable(){return Math.floor(100*(this.count/this.filterSize))<=90}};var dr=class{filterSize;bucketSize;fingerprintSize;scale;filterSeries;hash;seed;constructor(e){this.bucketSize=e.bucketSize??4,this.filterSize=e.filterSize??(1<<18)/this.bucketSize,this.fingerprintSize=e.fingerprintSize??2,this.scale=e.scale??2,this.hash=e.hash??lr,this.seed=e.seed??nt(0,Math.pow(2,10)),this.filterSeries=[new hr({filterSize:this.filterSize,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed})]}add(e){if(typeof e=="string"&&(e=M(e)),this.has(e))return!0;let t=this.filterSeries.find(n=>n.reliable);if(t==null){let n=this.filterSize*Math.pow(this.scale,this.filterSeries.length);t=new hr({filterSize:n,bucketSize:this.bucketSize,fingerprintSize:this.fingerprintSize,hash:this.hash,seed:this.seed}),this.filterSeries.push(t)}return t.add(e)}has(e){typeof e=="string"&&(e=M(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].has(e))return!0;return!1}remove(e){typeof e=="string"&&(e=M(e));for(let t=0;t<this.filterSeries.length;t++)if(this.filterSeries[t].remove(e))return!0;return!1}get count(){return this.filterSeries.reduce((e,t)=>e+t.count,0)}};var gc=1877,Bn=1604,qh=R("helia:unixfs:stat");async function wc(r,e,t={}){let n=await ze(r,t.path,e,t);qh("stat %c",n.cid);let i=await Y(n.cid,e,t);if(i.type==="raw")return t.extended===!0?Xh(i):Kh(i);if(i.type==="file"||i.type==="directory")return t.extended===!0?Wh(i,e,t.filter??new dr({filterSize:1024}),t):Gh(i);throw new Ne}function Gh(r){return{type:r.type,cid:r.cid,unixfs:r.unixfs,mode:r.unixfs.mode??(r.unixfs.isDirectory()?gc:Bn),mtime:r.unixfs.mtime,size:r.unixfs.fileSize()}}async function Wh(r,e,t,n){let i=await xc(r.cid,e,!1,t,n);return{type:r.type,cid:r.cid,unixfs:r.unixfs,size:r.unixfs.isDirectory()?i.dirSize:r.unixfs.fileSize(),mode:r.unixfs.mode??(r.unixfs.isDirectory()?gc:Bn),mtime:r.unixfs.mtime,localSize:i.localSize,dagSize:i.dagSize,deduplicatedDagSize:i.deduplicatedDagSize,blocks:i.blocks,uniqueBlocks:i.uniqueBlocks}}function Kh(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Bn,mtime:void 0,size:BigInt(r.node.byteLength)}}function Xh(r){return{type:r.type,cid:r.cid,unixfs:void 0,mode:Bn,mtime:void 0,size:BigInt(r.node.byteLength),localSize:BigInt(r.node.byteLength),dagSize:BigInt(r.node.byteLength),deduplicatedDagSize:BigInt(r.node.byteLength),blocks:1n,uniqueBlocks:1n}}async function xc(r,e,t,n,i){let o={dirSize:0n,localSize:0n,dagSize:0n,deduplicatedDagSize:0n,blocks:0n,uniqueBlocks:0n};try{let s=n.has(r.bytes);n.add(r.bytes);let a=await z(e.get(r,i));if(o.blocks++,o.dagSize+=BigInt(a.byteLength),s||(o.uniqueBlocks++,o.deduplicatedDagSize+=BigInt(a.byteLength)),r.code===Q)o.localSize+=BigInt(a.byteLength),t&&(o.dirSize+=BigInt(a.byteLength));else if(r.code===q){let c=$(a),h;if(c.Data!=null&&(h=I.unmarshal(c.Data)),c.Links.length>0){for(let f of c.Links){let l=await xc(f.Hash,e,Jh(f,h),n,i);o.localSize+=l.localSize,o.dagSize+=l.dagSize,o.deduplicatedDagSize+=l.deduplicatedDagSize,o.blocks+=l.blocks,o.uniqueBlocks+=l.uniqueBlocks,o.dirSize+=l.dirSize}t&&h!=null&&(o.dirSize+=h.fileSize())}else{if(h==null)throw new ee(`PBNode ${r.toString()} had no data`);h.data!=null&&(o.localSize+=BigInt(h.data.byteLength??0)),t&&(o.dirSize+=h.fileSize())}}else throw new Te(`${r.toString()} was neither DAG_PB nor RAW`)}catch(s){if(s.name!=="NotFoundError"||i.offline!==!0)throw s}return o}function Jh(r,e){if(e==null)return!1;let t=r.Name;return t==null?!1:e.type==="directory"?!0:e.type==="hamt-sharded-directory"&&t.length>2}var Zh=R("helia:unixfs:touch");async function bc(r,e,t={}){let n=await ze(r,t.path,e,t),i=t.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(Zh("touch %c %o",n.cid,i),t.recursive){let l=await De(async function*(){for await(let y of dn(n.cid,e)){let u,d;if(y.type==="raw")u=new I({data:y.node}),d=[];else if(y.type==="file"||y.type==="directory")u=y.unixfs,d=y.node.Links;else throw new Ne;u.mtime=i;let m={Data:u.marshal(),Links:d};yield{path:y.path,content:m}}},y=>Je(y,e,{...t,dagBuilder:async function*(u,d){for await(let m of u)yield async function(){let x=m.content,g=T(x),w=await ve(g,d,{...t,cidVersion:r.version});if(x.Data==null)throw new ee(`${w} had no data`);let _=I.unmarshal(x.Data);return{cid:w,size:BigInt(g.length),path:m.path,unixfs:_}}}}),async y=>_e(y));if(l==null)throw new Te(`Could not chmod ${n.cid.toString()}`);return Lt(l.cid,n,e,t)}let o=await z(e.get(n.cid,t)),s,a=[];if(n.cid.code===Q)s=new I({data:o});else{let l=$(o);if(a=l.Links,l.Data==null)throw new ee(`${n.cid.toString()} had no data`);s=I.unmarshal(l.Data)}s.mtime=i;let c=T({Data:s.marshal(),Links:a}),h=await oe.digest(c),f=A.create(n.cid.version,q,h);return await e.put(f,c),Lt(f,n,e,t)}var In=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Rr(e,this.components.blockstore,t)}async addBytes(e,t={}){return ys(e,this.components.blockstore,t)}async addByteStream(e,t={}){return gs(e,this.components.blockstore,t)}async addFile(e,t={}){return ws(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return xs(e,this.components.blockstore,t)}async*cat(e,t={}){yield*sc(e,this.components.blockstore,t)}async chmod(e,t,n={}){return ac(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return cc(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*uc(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return lc(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return dc(e,t,this.components.blockstore,n)}async stat(e,t={}){return wc(e,this.components.blockstore,t)}async touch(e,t={}){return bc(e,this.components.blockstore,t)}};async function*_c(){throw new Error("Not supported in browsers")}function kc(r,e){return r=new URL(r),{path:decodeURIComponent(new URL(r).pathname.split("/").pop()??""),content:Yh(r,e)}}async function*Yh(r,e){let t=await globalThis.fetch(r,e);if(t.body==null)throw new Te("HTTP response did not have a body");let n=t.body.getReader();try{for(;;){let{done:i,value:o}=await n.read();if(i)return;o!=null&&(yield o)}}finally{n.releaseLock()}}function Qh(r){return new In(r)}return Ac(ed);})();
3
4
  return HeliaUnixfs}));
4
5
  //# sourceMappingURL=index.min.js.map