@libp2p/fetch 4.1.6 → 4.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +4 -4
- package/package.json +9 -9
package/dist/index.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PFetch = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var Libp2PFetch=(()=>{var Xe=Object.defineProperty;var Cn=Object.getOwnPropertyDescriptor;var Dn=Object.getOwnPropertyNames;var Un=Object.prototype.hasOwnProperty;var g=(r,e)=>{for(var t in e)Xe(r,t,{get:e[t],enumerable:!0})},Fn=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Dn(e))!Un.call(r,o)&&o!==t&&Xe(r,o,{get:()=>e[o],enumerable:!(n=Cn(e,o))||n.enumerable});return r};var Tn=r=>Fn(Xe({},"__esModule",{value:!0}),r);var Ds={};g(Ds,{fetch:()=>Cs});var Q=class extends Error{static name="InvalidParametersError";constructor(e="Invalid parameters"){super(e),this.name="InvalidParametersError"}};var Ne=class extends Error{static name="InvalidMessageError";constructor(e="Invalid message"){super(e),this.name="InvalidMessageError"}},Ce=class extends Error{static name="ProtocolError";constructor(e="Protocol error"){super(e),this.name="ProtocolError"}};var Qe={};g(Qe,{base58btc:()=>B,base58flickr:()=>Vn});var Ts=new Uint8Array(0);function ur(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 P(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return X(r);if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return X(new Uint8Array(r.buffer,r.byteOffset,r.byteLength));throw new Error("Unknown type, must be binary type")}function hr(r){return new TextEncoder().encode(r)}function lr(r){return new TextDecoder().decode(r)}function On(r){return r?.buffer instanceof ArrayBuffer}function X(r){return On(r)?r:r.slice()}function Mn(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 o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=o}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function f(l){if(l instanceof Uint8Array||(ArrayBuffer.isView(l)?l=new Uint8Array(l.buffer,l.byteOffset,l.byteLength):Array.isArray(l)&&(l=Uint8Array.from(l))),!(l instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(l.length===0)return"";for(var p=0,U=0,w=0,L=l.length;w!==L&&l[w]===0;)w++,p++;for(var S=(L-w)*u+1>>>0,x=new Uint8Array(S);w!==L;){for(var A=l[w],N=0,y=S-1;(A!==0||N<U)&&y!==-1;y--,N++)A+=256*x[y]>>>0,x[y]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");U=N,w++}for(var I=S-U;I!==S&&x[I]===0;)I++;for(var k=c.repeat(p);I<S;++I)k+=r.charAt(x[I]);return k}function d(l){if(typeof l!="string")throw new TypeError("Expected String");if(l.length===0)return new Uint8Array;var p=0;if(l[p]!==" "){for(var U=0,w=0;l[p]===c;)U++,p++;for(var L=(l.length-p)*h+1>>>0,S=new Uint8Array(L);l[p];){var x=t[l.charCodeAt(p)];if(x===255)return;for(var A=0,N=L-1;(x!==0||A<w)&&N!==-1;N--,A++)x+=a*S[N]>>>0,S[N]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");w=A,p++}if(l[p]!==" "){for(var y=L-w;y!==L&&S[y]===0;)y++;for(var I=new Uint8Array(U+(L-y)),k=U;y!==L;)I[k++]=S[y++];return I}}}function b(l){var p=d(l);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:d,decode:b}}var Bn=Mn,Rn=Bn,dr=Rn;var Je=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")}},Ke=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let o=t.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,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 pr(this,e)}},We=class{decoders;constructor(e){this.decoders=e}or(e){return pr(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 pr(r,e){return new We({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var He=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new Je(e,t,n),this.decoder=new Ke(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Y({name:r,prefix:e,encode:t,decode:n}){return new He(r,e,t,n)}function _({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=dr(t,r);return Y({prefix:e,name:r,encode:n,decode:i=>P(o(i))})}function kn(r,e,t,n){let o=r.length;for(;r[o-1]==="=";)--o;let i=new Uint8Array(o*t/8|0),s=0,a=0,c=0;for(let h=0;h<o;++h){let u=e[r[h]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|u,s+=t,s>=8&&(s-=8,i[c++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return i}function Pn(r,e,t){let n=e[e.length-1]==="=",o=(1<<t)-1,i="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,i+=e[o&a>>s];if(s!==0&&(i+=e[o&a<<t-s]),n)for(;(i.length*t&7)!==0;)i+="=";return i}function zn(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function E({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let o=zn(n);return Y({prefix:e,name:r,encode(i){return Pn(i,n,t)},decode(i){return kn(i,o,t,r)}})}var B=_({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Vn=_({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ye={};g(Ye,{base32:()=>Z,base32hex:()=>jn,base32hexpad:()=>Xn,base32hexpadupper:()=>Jn,base32hexupper:()=>Gn,base32pad:()=>$n,base32padupper:()=>qn,base32upper:()=>_n,base32z:()=>Kn});var Z=E({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),_n=E({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),$n=E({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),qn=E({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),jn=E({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Gn=E({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Xn=E({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Jn=E({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Kn=E({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ze={};g(Ze,{base36:()=>he,base36upper:()=>Wn});var he=_({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Wn=_({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Hn=xr,mr=128,Qn=127,Yn=~Qn,Zn=Math.pow(2,31);function xr(r,e,t){e=e||[],t=t||0;for(var n=t;r>=Zn;)e[t++]=r&255|mr,r/=128;for(;r&Yn;)e[t++]=r&255|mr,r>>>=7;return e[t]=r|0,xr.bytes=t-n+1,e}var eo=et,to=128,br=127;function et(r,n){var t=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw et.bytes=0,new RangeError("Could not decode varint");s=r[i++],t+=o<28?(s&br)<<o:(s&br)*Math.pow(2,o),o+=7}while(s>=to);return et.bytes=i-n,t}var ro=Math.pow(2,7),no=Math.pow(2,14),oo=Math.pow(2,21),io=Math.pow(2,28),so=Math.pow(2,35),ao=Math.pow(2,42),co=Math.pow(2,49),uo=Math.pow(2,56),ho=Math.pow(2,63),lo=function(r){return r<ro?1:r<no?2:r<oo?3:r<io?4:r<so?5:r<ao?6:r<co?7:r<uo?8:r<ho?9:10},fo={encode:Hn,decode:eo,encodingLength:lo},po=fo,le=po;function fe(r,e=0){return[le.decode(r,e),le.decode.bytes]}function ee(r,e,t=0){return le.encode(r,e,t),e}function te(r){return le.encodingLength(r)}function ne(r,e){let t=e.byteLength,n=te(r),o=n+te(t),i=new Uint8Array(o+t);return ee(r,i,0),ee(t,i,n),i.set(e,o),new re(r,t,e,i)}function gr(r){let e=P(r),[t,n]=fe(e),[o,i]=fe(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new re(t,o,s,e)}function wr(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&ur(r.bytes,t.bytes)}}var re=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=X(n),this.bytes=X(o)}};function yr(r,e){let{bytes:t,version:n}=r;return n===0?bo(t,tt(r),e??B.encoder):xo(t,tt(r),e??Z.encoder)}var Er=new WeakMap;function tt(r){let e=Er.get(r);if(e==null){let t=new Map;return Er.set(r,t),t}return e}var Ue=class r{code;version;multihash;bytes;"/";constructor(e,t,n,o){this.code=t,this.version=e,this.multihash=n,this.bytes=X(o),this["/"]=this.bytes}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!==pe)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==go)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=ne(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&&wr(e.multihash,n.multihash)}toString(e){return yr(this,e)}toJSON(){return{"/":yr(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:o,multihash:i,bytes:s}=t;return new r(n,o,i,s??vr(n,o,i.bytes))}else if(t[wo]===!0){let{version:n,multihash:o,code:i}=t,s=gr(o);return r.create(n,i,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!==pe)throw new Error(`Version 0 CID must use dag-pb (code: ${pe}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=vr(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,pe,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,o=P(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let i=o.subarray(t.multihashSize-t.digestSize),s=new re(t.multihashCode,t.digestSize,i,o);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[f,d]=fe(e.subarray(t));return t+=d,f},o=n(),i=pe;if(o===18?(o=0,t=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=t,a=n(),c=n(),h=t+c,u=h-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:h}}static parse(e,t){let[n,o]=mo(e,t),i=r.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return tt(i).set(n,e),i}};function mo(r,e){switch(r[0]){case"Q":{let t=e??B;return[B.prefix,t.decode(`${B.prefix}${r}`)]}case B.prefix:{let t=e??B;return[B.prefix,t.decode(r)]}case Z.prefix:{let t=e??Z;return[Z.prefix,t.decode(r)]}case he.prefix:{let t=e??he;return[he.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 bo(r,e,t){let{prefix:n}=t;if(n!==B.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let i=t.encode(r).slice(1);return e.set(n,i),i}else return o}function xo(r,e,t){let{prefix:n}=t,o=e.get(n);if(o==null){let i=t.encode(r);return e.set(n,i),i}else return o}var pe=112,go=18;function vr(r,e,t){let n=te(r),o=n+te(e),i=new Uint8Array(o+t.byteLength);return ee(r,i,0),ee(e,i,n),i.set(t,o),i}var wo=Symbol.for("@ipld/js-cid/CID");var rt={};g(rt,{identity:()=>vo});var Lr=0,yo="identity",Sr=P;function Eo(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 ne(Lr,Sr(r))}var vo={code:Lr,name:yo,encode:Sr,digest:Eo};function z(r=0){return new Uint8Array(r)}function me(r=0){return new Uint8Array(r)}function nt(r,e){e==null&&(e=r.reduce((o,i)=>o+i.length,0));let t=me(e),n=0;for(let o of r)t.set(o,n),n+=o.length;return t}function Ar(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 Nr=Symbol.for("@achingbrain/uint8arraylist");function Ir(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let o=t+n.byteLength;if(e<o)return{buf:n,index:e-t};t=o}throw new RangeError("index is out of bounds")}function Fe(r){return!!r?.[Nr]}var J=class r{bufs;length;[Nr]=!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(Fe(n)){t+=n.byteLength;for(let o of n.bufs)this.bufs.push(o)}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(Fe(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=Ir(this.bufs,e);return t.buf[t.index]}set(e,t){let n=Ir(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(Fe(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:o}=this._subList(e,t);return nt(n,o)}subarray(e,t){let{bufs:n,length:o}=this._subList(e,t);return n.length===1?n[0]:nt(n,o)}sublist(e,t){let{bufs:n,length:o}=this._subList(e,t),i=new r;return i.length=o,i.bufs=n,i}_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=[],o=0;for(let i=0;i<this.bufs.length;i++){let s=this.bufs[i],a=o,c=a+s.byteLength;if(o=c,e>=c)continue;let h=e>=a&&e<c,u=t>a&&t<=c;if(h&&u){if(e===a&&t===c){n.push(s);break}let f=e-a;n.push(s.subarray(f,f+(t-e)));break}if(h){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(u){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(!Fe(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 o=n.byteLength;if(o===0)throw new TypeError("search must be at least 1 byte long");let i=256,s=new Int32Array(i);for(let f=0;f<i;f++)s[f]=-1;for(let f=0;f<o;f++)s[n[f]]=f;let a=s,c=this.byteLength-n.byteLength,h=n.byteLength-1,u;for(let f=t;f<=c;f+=u){u=0;for(let d=h;d>=0;d--){let b=this.get(f+d);if(n[d]!==b){u=Math.max(1,d-a[b]);break}}if(u===0)return f}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=me(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 o=z(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt16(0,t,n),this.write(o,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 o=z(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setInt32(0,t,n),this.write(o,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 o=z(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigInt64(0,t,n),this.write(o,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=me(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 o=z(2);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint16(0,t,n),this.write(o,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 o=z(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setUint32(0,t,n),this.write(o,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 o=z(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setBigUint64(0,t,n),this.write(o,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 o=z(4);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat32(0,t,n),this.write(o,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 o=z(8);new DataView(o.buffer,o.byteOffset,o.byteLength).setFloat64(0,t,n),this.write(o,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(!Ar(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((o,i)=>o+i.byteLength,0)),n.length=t,n}};var ot={};g(ot,{base10:()=>Lo});var Lo=_({prefix:"9",name:"base10",alphabet:"0123456789"});var it={};g(it,{base16:()=>So,base16upper:()=>Ao});var So=E({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Ao=E({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var st={};g(st,{base2:()=>Io});var Io=E({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var at={};g(at,{base256emoji:()=>Fo});var Cr=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}"),No=Cr.reduce((r,e,t)=>(r[t]=e,r),[]),Co=Cr.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function Do(r){return r.reduce((e,t)=>(e+=No[t],e),"")}function Uo(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let o=Co[n];if(o==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(o)}return new Uint8Array(e)}var Fo=Y({prefix:"\u{1F680}",name:"base256emoji",encode:Do,decode:Uo});var ct={};g(ct,{base64:()=>To,base64pad:()=>Oo,base64url:()=>Mo,base64urlpad:()=>Bo});var To=E({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Oo=E({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Mo=E({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Bo=E({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var ut={};g(ut,{base8:()=>Ro});var Ro=E({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ht={};g(ht,{identity:()=>ko});var ko=Y({prefix:"\0",name:"identity",encode:r=>lr(r),decode:r=>hr(r)});var ma=new TextEncoder,ba=new TextDecoder;var dt={};g(dt,{sha256:()=>_o,sha512:()=>$o});var Vo=20;function ft({name:r,code:e,encode:t,minDigestLength:n,maxDigestLength:o}){return new lt(r,e,t,n,o)}var lt=class{name;code;encode;minDigestLength;maxDigestLength;constructor(e,t,n,o,i){this.name=e,this.code=t,this.encode=n,this.minDigestLength=o??Vo,this.maxDigestLength=i}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?Dr(n,this.code,t?.truncate):n.then(o=>Dr(o,this.code,t?.truncate))}else throw Error("Unknown type, must be binary type")}};function Dr(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 ne(e,r)}function Fr(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var _o=ft({name:"sha2-256",code:18,encode:Fr("SHA-256")}),$o=ft({name:"sha2-512",code:19,encode:Fr("SHA-512")});var pt={...ht,...st,...ut,...ot,...it,...Ye,...Ze,...Qe,...ct,...at},Ca={...dt,...rt};function mt(r=0){return new Uint8Array(r)}function Tr(r=0){return new Uint8Array(r)}function Mr(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var Or=Mr("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),bt=Mr("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=Tr(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),qo={utf8:Or,"utf-8":Or,hex:pt.base16,latin1:bt,ascii:bt,binary:bt,...pt},Te=qo;function Oe(r,e="utf8"){let t=Te[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function xt(r,e="utf8"){let t=Te[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}function $(r=0){return new Uint8Array(r)}var jo=Math.pow(2,7),Go=Math.pow(2,14),Xo=Math.pow(2,21),Br=Math.pow(2,28),Rr=Math.pow(2,35),kr=Math.pow(2,42),Pr=Math.pow(2,49),F=128,q=127;function be(r){if(r<jo)return 1;if(r<Go)return 2;if(r<Xo)return 3;if(r<Br)return 4;if(r<Rr)return 5;if(r<kr)return 6;if(r<Pr)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function zr(r,e,t=0){switch(be(r)){case 8:e[t++]=r&255|F,r/=128;case 7:e[t++]=r&255|F,r/=128;case 6:e[t++]=r&255|F,r/=128;case 5:e[t++]=r&255|F,r/=128;case 4:e[t++]=r&255|F,r>>>=7;case 3:e[t++]=r&255|F,r>>>=7;case 2:e[t++]=r&255|F,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function Vr(r,e){let t=r[e],n=0;if(n+=t&q,t<F||(t=r[e+1],n+=(t&q)<<7,t<F)||(t=r[e+2],n+=(t&q)<<14,t<F)||(t=r[e+3],n+=(t&q)<<21,t<F)||(t=r[e+4],n+=(t&q)*Br,t<F)||(t=r[e+5],n+=(t&q)*Rr,t<F)||(t=r[e+6],n+=(t&q)*kr,t<F)||(t=r[e+7],n+=(t&q)*Pr,t<F))return n;throw new RangeError("Could not decode varint")}var gt=new Float32Array([-0]),j=new Uint8Array(gt.buffer);function _r(r,e,t){gt[0]=r,e[t]=j[0],e[t+1]=j[1],e[t+2]=j[2],e[t+3]=j[3]}function $r(r,e){return j[0]=r[e],j[1]=r[e+1],j[2]=r[e+2],j[3]=r[e+3],gt[0]}var wt=new Float64Array([-0]),C=new Uint8Array(wt.buffer);function qr(r,e,t){wt[0]=r,e[t]=C[0],e[t+1]=C[1],e[t+2]=C[2],e[t+3]=C[3],e[t+4]=C[4],e[t+5]=C[5],e[t+6]=C[6],e[t+7]=C[7]}function jr(r,e){return C[0]=r[e],C[1]=r[e+1],C[2]=r[e+2],C[3]=r[e+3],C[4]=r[e+4],C[5]=r[e+5],C[6]=r[e+6],C[7]=r[e+7],wt[0]}var Jo=BigInt(Number.MAX_SAFE_INTEGER),Ko=BigInt(Number.MIN_SAFE_INTEGER),T=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 K;if(e<Jo&&e>Ko)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,o=e-(n<<32n);return t&&(n=~n|0n,o=~o|0n,++o>Gr&&(o=0n,++n>Gr&&(n=0n))),new r(Number(o),Number(n))}static fromNumber(e){if(e===0)return K;let t=e<0;t&&(e=-e);let n=e>>>0,o=(e-n)/4294967296>>>0;return t&&(o=~o>>>0,n=~n>>>0,++n>4294967295&&(n=0,++o>4294967295&&(o=0))),new r(n,o)}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):K}},K=new T(0,0);K.toBigInt=function(){return 0n};K.zzEncode=K.zzDecode=function(){return this};K.length=function(){return 1};var Gr=4294967296n;function Xr(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 Jr(r,e,t){if(t-e<1)return"";let o,i=[],s=0,a;for(;e<t;)a=r[e++],a<128?i[s++]=a:a>191&&a<224?i[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,i[s++]=55296+(a>>10),i[s++]=56320+(a&1023)):i[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((o??(o=[])).push(String.fromCharCode.apply(String,i)),s=0);return o!=null?(s>0&&o.push(String.fromCharCode.apply(String,i.slice(0,s))),o.join("")):String.fromCharCode.apply(String,i.slice(0,s))}function yt(r,e,t){let n=t,o,i;for(let s=0;s<r.length;++s)o=r.charCodeAt(s),o<128?e[t++]=o:o<2048?(e[t++]=o>>6|192,e[t++]=o&63|128):(o&64512)===55296&&((i=r.charCodeAt(s+1))&64512)===56320?(o=65536+((o&1023)<<10)+(i&1023),++s,e[t++]=o>>18|240,e[t++]=o>>12&63|128,e[t++]=o>>6&63|128,e[t++]=o&63|128):(e[t++]=o>>12|224,e[t++]=o>>6&63|128,e[t++]=o&63|128);return t-n}function M(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Me(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var Et=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,M(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 M(this,4);return Me(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw M(this,4);return Me(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw M(this,4);let e=$r(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw M(this,4);let e=jr(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 M(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return Jr(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw M(this,e);this.pos+=e}else do if(this.pos>=this.len)throw M(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 T(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 M(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 M(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 M(this,8);let e=Me(this.buf,this.pos+=4),t=Me(this.buf,this.pos+=4);return new T(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=Vr(this.buf,this.pos);return this.pos+=be(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 xe(r){return new Et(r instanceof Uint8Array?r:r.subarray())}function Be(r,e,t){let n=xe(r);return e.decode(n,void 0,t)}var It={};g(It,{base10:()=>ti});var Wa=new Uint8Array(0);function Wr(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 V(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 Hr(r){return new TextEncoder().encode(r)}function Qr(r){return new TextDecoder().decode(r)}function Wo(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 o=0;o<r.length;o++){var i=r.charAt(o),s=i.charCodeAt(0);if(t[s]!==255)throw new TypeError(i+" is ambiguous");t[s]=o}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function f(l){if(l instanceof Uint8Array||(ArrayBuffer.isView(l)?l=new Uint8Array(l.buffer,l.byteOffset,l.byteLength):Array.isArray(l)&&(l=Uint8Array.from(l))),!(l instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(l.length===0)return"";for(var p=0,U=0,w=0,L=l.length;w!==L&&l[w]===0;)w++,p++;for(var S=(L-w)*u+1>>>0,x=new Uint8Array(S);w!==L;){for(var A=l[w],N=0,y=S-1;(A!==0||N<U)&&y!==-1;y--,N++)A+=256*x[y]>>>0,x[y]=A%a>>>0,A=A/a>>>0;if(A!==0)throw new Error("Non-zero carry");U=N,w++}for(var I=S-U;I!==S&&x[I]===0;)I++;for(var k=c.repeat(p);I<S;++I)k+=r.charAt(x[I]);return k}function d(l){if(typeof l!="string")throw new TypeError("Expected String");if(l.length===0)return new Uint8Array;var p=0;if(l[p]!==" "){for(var U=0,w=0;l[p]===c;)U++,p++;for(var L=(l.length-p)*h+1>>>0,S=new Uint8Array(L);l[p];){var x=t[l.charCodeAt(p)];if(x===255)return;for(var A=0,N=L-1;(x!==0||A<w)&&N!==-1;N--,A++)x+=a*S[N]>>>0,S[N]=x%256>>>0,x=x/256>>>0;if(x!==0)throw new Error("Non-zero carry");w=A,p++}if(l[p]!==" "){for(var y=L-w;y!==L&&S[y]===0;)y++;for(var I=new Uint8Array(U+(L-y)),k=U;y!==L;)I[k++]=S[y++];return I}}}function b(l){var p=d(l);if(p)return p;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:d,decode:b}}var Ho=Wo,Qo=Ho,Zr=Qo;var vt=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")}},Lt=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){this.name=e,this.prefix=t;let o=t.codePointAt(0);if(o===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=o,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 en(this,e)}},St=class{decoders;constructor(e){this.decoders=e}or(e){return en(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 en(r,e){return new St({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var At=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,o){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=o,this.encoder=new vt(e,t,n),this.decoder=new Lt(e,t,o)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function oe({name:r,prefix:e,encode:t,decode:n}){return new At(r,e,t,n)}function G({name:r,prefix:e,alphabet:t}){let{encode:n,decode:o}=Zr(t,r);return oe({prefix:e,name:r,encode:n,decode:i=>V(o(i))})}function Yo(r,e,t,n){let o=r.length;for(;r[o-1]==="=";)--o;let i=new Uint8Array(o*t/8|0),s=0,a=0,c=0;for(let h=0;h<o;++h){let u=e[r[h]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<t|u,s+=t,s>=8&&(s-=8,i[c++]=255&a>>s)}if(s>=t||(255&a<<8-s)!==0)throw new SyntaxError("Unexpected end of data");return i}function Zo(r,e,t){let n=e[e.length-1]==="=",o=(1<<t)-1,i="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,i+=e[o&a>>s];if(s!==0&&(i+=e[o&a<<t-s]),n)for(;(i.length*t&7)!==0;)i+="=";return i}function ei(r){let e={};for(let t=0;t<r.length;++t)e[r[t]]=t;return e}function v({name:r,prefix:e,bitsPerChar:t,alphabet:n}){let o=ei(n);return oe({prefix:e,name:r,encode(i){return Zo(i,n,t)},decode(i){return Yo(i,o,t,r)}})}var ti=G({prefix:"9",name:"base10",alphabet:"0123456789"});var Nt={};g(Nt,{base16:()=>ri,base16upper:()=>ni});var ri=v({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ni=v({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ct={};g(Ct,{base2:()=>oi});var oi=v({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Dt={};g(Dt,{base256emoji:()=>ui});var tn=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}"),ii=tn.reduce((r,e,t)=>(r[t]=e,r),[]),si=tn.reduce((r,e,t)=>{let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);return r[n]=t,r},[]);function ai(r){return r.reduce((e,t)=>(e+=ii[t],e),"")}function ci(r){let e=[];for(let t of r){let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);let o=si[n];if(o==null)throw new Error(`Non-base256emoji character: ${t}`);e.push(o)}return new Uint8Array(e)}var ui=oe({prefix:"\u{1F680}",name:"base256emoji",encode:ai,decode:ci});var Ut={};g(Ut,{base32:()=>ie,base32hex:()=>di,base32hexpad:()=>mi,base32hexpadupper:()=>bi,base32hexupper:()=>pi,base32pad:()=>li,base32padupper:()=>fi,base32upper:()=>hi,base32z:()=>xi});var ie=v({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),hi=v({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),li=v({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),fi=v({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),di=v({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),pi=v({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),mi=v({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),bi=v({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),xi=v({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ft={};g(Ft,{base36:()=>ge,base36upper:()=>gi});var ge=G({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),gi=G({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Tt={};g(Tt,{base58btc:()=>R,base58flickr:()=>wi});var R=G({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),wi=G({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ot={};g(Ot,{base64:()=>yi,base64pad:()=>Ei,base64url:()=>vi,base64urlpad:()=>Li});var yi=v({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Ei=v({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),vi=v({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Li=v({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Mt={};g(Mt,{base8:()=>Si});var Si=v({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Bt={};g(Bt,{identity:()=>Ai});var Ai=oe({prefix:"\0",name:"identity",encode:r=>Qr(r),decode:r=>Hr(r)});var lc=new TextEncoder,fc=new TextDecoder;var kt={};g(kt,{identity:()=>Ki});var Ci=on,rn=128,Di=127,Ui=~Di,Fi=Math.pow(2,31);function on(r,e,t){e=e||[],t=t||0;for(var n=t;r>=Fi;)e[t++]=r&255|rn,r/=128;for(;r&Ui;)e[t++]=r&255|rn,r>>>=7;return e[t]=r|0,on.bytes=t-n+1,e}var Ti=Rt,Oi=128,nn=127;function Rt(r,n){var t=0,n=n||0,o=0,i=n,s,a=r.length;do{if(i>=a)throw Rt.bytes=0,new RangeError("Could not decode varint");s=r[i++],t+=o<28?(s&nn)<<o:(s&nn)*Math.pow(2,o),o+=7}while(s>=Oi);return Rt.bytes=i-n,t}var Mi=Math.pow(2,7),Bi=Math.pow(2,14),Ri=Math.pow(2,21),ki=Math.pow(2,28),Pi=Math.pow(2,35),zi=Math.pow(2,42),Vi=Math.pow(2,49),_i=Math.pow(2,56),$i=Math.pow(2,63),qi=function(r){return r<Mi?1:r<Bi?2:r<Ri?3:r<ki?4:r<Pi?5:r<zi?6:r<Vi?7:r<_i?8:r<$i?9:10},ji={encode:Ci,decode:Ti,encodingLength:qi},Gi=ji,we=Gi;function ye(r,e=0){return[we.decode(r,e),we.decode.bytes]}function se(r,e,t=0){return we.encode(r,e,t),e}function ae(r){return we.encodingLength(r)}function ue(r,e){let t=e.byteLength,n=ae(r),o=n+ae(t),i=new Uint8Array(o+t);return se(r,i,0),se(t,i,n),i.set(e,o),new ce(r,t,e,i)}function sn(r){let e=V(r),[t,n]=ye(e),[o,i]=ye(e.subarray(n)),s=e.subarray(n+i);if(s.byteLength!==o)throw new Error("Incorrect length");return new ce(t,o,s,e)}function an(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Wr(r.bytes,t.bytes)}}var ce=class{code;size;digest;bytes;constructor(e,t,n,o){this.code=e,this.size=t,this.digest=n,this.bytes=o}};var cn=0,Xi="identity",un=V;function Ji(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 ue(cn,un(r))}var Ki={code:cn,name:Xi,encode:un,digest:Ji};var Vt={};g(Vt,{sha256:()=>Hi,sha512:()=>Qi});var Wi=20;function zt({name:r,code:e,encode:t,minDigestLength:n,maxDigestLength:o}){return new Pt(r,e,t,n,o)}var Pt=class{name;code;encode;minDigestLength;maxDigestLength;constructor(e,t,n,o,i){this.name=e,this.code=t,this.encode=n,this.minDigestLength=o??Wi,this.maxDigestLength=i}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?hn(n,this.code,t?.truncate):n.then(o=>hn(o,this.code,t?.truncate))}else throw Error("Unknown type, must be binary type")}};function hn(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 ue(e,r)}function fn(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var Hi=zt({name:"sha2-256",code:18,encode:fn("SHA-256")}),Qi=zt({name:"sha2-512",code:19,encode:fn("SHA-512")});function dn(r,e){let{bytes:t,version:n}=r;return n===0?Zi(t,_t(r),e??R.encoder):es(t,_t(r),e??ie.encoder)}var pn=new WeakMap;function _t(r){let e=pn.get(r);if(e==null){let t=new Map;return pn.set(r,t),t}return e}var ke=class r{code;version;multihash;bytes;"/";constructor(e,t,n,o){this.code=t,this.version=e,this.multihash=n,this.bytes=o,this["/"]=o}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!==ve)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==ts)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=ue(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&&an(e.multihash,n.multihash)}toString(e){return dn(this,e)}toJSON(){return{"/":dn(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:o,multihash:i,bytes:s}=t;return new r(n,o,i,s??mn(n,o,i.bytes))}else if(t[rs]===!0){let{version:n,multihash:o,code:i}=t,s=sn(o);return r.create(n,i,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!==ve)throw new Error(`Version 0 CID must use dag-pb (code: ${ve}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let o=mn(e,t,n.bytes);return new r(e,t,n,o)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,ve,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,o=V(e.subarray(n,n+t.multihashSize));if(o.byteLength!==t.multihashSize)throw new Error("Incorrect length");let i=o.subarray(t.multihashSize-t.digestSize),s=new ce(t.multihashCode,t.digestSize,i,o);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[f,d]=ye(e.subarray(t));return t+=d,f},o=n(),i=ve;if(o===18?(o=0,t=0):i=n(),o!==0&&o!==1)throw new RangeError(`Invalid CID version ${o}`);let s=t,a=n(),c=n(),h=t+c,u=h-s;return{version:o,codec:i,multihashCode:a,digestSize:c,multihashSize:u,size:h}}static parse(e,t){let[n,o]=Yi(e,t),i=r.decode(o);if(i.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return _t(i).set(n,e),i}};function Yi(r,e){switch(r[0]){case"Q":{let t=e??R;return[R.prefix,t.decode(`${R.prefix}${r}`)]}case R.prefix:{let t=e??R;return[R.prefix,t.decode(r)]}case ie.prefix:{let t=e??ie;return[ie.prefix,t.decode(r)]}case ge.prefix:{let t=e??ge;return[ge.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 Zi(r,e,t){let{prefix:n}=t;if(n!==R.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let o=e.get(n);if(o==null){let i=t.encode(r).slice(1);return e.set(n,i),i}else return o}function es(r,e,t){let{prefix:n}=t,o=e.get(n);if(o==null){let i=t.encode(r);return e.set(n,i),i}else return o}var ve=112,ts=18;function mn(r,e,t){let n=ae(r),o=n+ae(e),i=new Uint8Array(o+t.byteLength);return se(r,i,0),se(e,i,n),i.set(t,o),i}var rs=Symbol.for("@ipld/js-cid/CID");var $t={...Bt,...Ct,...Mt,...It,...Nt,...Ut,...Ft,...Tt,...Ot,...Dt},Mc={...Vt,...kt};function xn(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var bn=xn("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),qt=xn("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=$(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),ns={utf8:bn,"utf-8":bn,hex:$t.base16,latin1:qt,ascii:qt,binary:qt,...$t},gn=ns;function wn(r,e="utf8"){let t=gn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function jt(r){let e=r??8192,t=e>>>1,n,o=e;return function(s){if(s<1||s>t)return $(s);o+s>e&&(n=$(e),o=0);let a=n.subarray(o,o+=s);return(o&7)!==0&&(o=(o|7)+1),a}}var W=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Gt(){}var Jt=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},os=jt();function is(r){return globalThis.Buffer!=null?$(r):os(r)}var Se=class{len;head;tail;states;constructor(){this.len=0,this.head=new W(Gt,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new W(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Kt((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(Pe,10,T.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=T.fromBigInt(e);return this._push(Pe,t.length(),t)}uint64Number(e){return this._push(zr,be(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=T.fromBigInt(e).zzEncode();return this._push(Pe,t.length(),t)}sint64Number(e){let t=T.fromNumber(e).zzEncode();return this._push(Pe,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Xt,1,e?1:0)}fixed32(e){return this._push(Le,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=T.fromBigInt(e);return this._push(Le,4,t.lo)._push(Le,4,t.hi)}fixed64Number(e){let t=T.fromNumber(e);return this._push(Le,4,t.lo)._push(Le,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(_r,4,e)}double(e){return this._push(qr,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Xt,1,0):this.uint32(t)._push(as,t,e)}string(e){let t=Xr(e);return t!==0?this.uint32(t)._push(yt,t,e):this._push(Xt,1,0)}fork(){return this.states=new Jt(this),this.head=this.tail=new W(Gt,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 W(Gt,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=is(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Xt(r,e,t){e[t]=r&255}function ss(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var Kt=class extends W{next;constructor(e,t){super(ss,e,t),this.next=void 0}};function Pe(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 Le(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 as(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Se.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(cs,e,r),this},Se.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(us,e,r),this});function cs(r,e,t){e.set(r,t)}function us(r,e,t){r.length<40?yt(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(wn(r),t)}function Wt(){return new Se}function ze(r,e){let t=Wt();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}function*Ve(r,e,t){let n=xe(r);yield*e.stream(n,void 0,"$",t)}var _e={VARINT:0,BIT64:1,LENGTH_DELIMITED:2,START_GROUP:3,END_GROUP:4,BIT32:5};function $e(r,e,t,n,o){return{name:r,type:e,encode:t,decode:n,stream:o}}function Ht(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(s,a){let c=e(s);a.int32(c)},n=function(s){let a=s.int32();return e(a)},o=function*(s){let a=s.int32();yield e(a)};return $e("enum",_e.VARINT,t,n,o)}function qe(r,e,t){return $e("message",_e.LENGTH_DELIMITED,r,e,t)}var Qt=class r extends Error{name="TimeoutError";constructor(e,t){super(e,t),Error.captureStackTrace?.(this,r)}},yn=r=>r.reason??new DOMException("This operation was aborted.","AbortError");function Yt(r,e){let{milliseconds:t,fallback:n,message:o,customTimers:i={setTimeout,clearTimeout},signal:s}=e,a,c,u=new Promise((f,d)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s?.aborted){d(yn(s));return}if(s&&(c=()=>{d(yn(s))},s.addEventListener("abort",c,{once:!0})),r.then(f,d),t===Number.POSITIVE_INFINITY)return;let b=new Qt;a=i.setTimeout.call(void 0,()=>{if(n){try{f(n())}catch(l){d(l)}return}typeof r.cancel=="function"&&r.cancel(),o===!1?f():o instanceof Error?d(o):(b.message=o??`Promise timed out after ${t} milliseconds`,d(b))},t)}).finally(()=>{u.clear(),c&&s&&s.removeEventListener("abort",c)});return u.clear=()=>{i.clearTimeout.call(void 0,a),a=void 0},u}var hs=r=>{let e=r.addEventListener||r.on||r.addListener,t=r.removeEventListener||r.off||r.removeListener;if(!e||!t)throw new TypeError("Emitter is not compatible");return{addListener:e.bind(r),removeListener:t.bind(r)}};function ls(r,e,t){let n,o=new Promise((i,s)=>{if(t={rejectionEvents:["error"],multiArgs:!1,rejectionMultiArgs:!1,resolveImmediately:!1,...t},!(t.count>=0&&(t.count===Number.POSITIVE_INFINITY||Number.isInteger(t.count))))throw new TypeError("The `count` option should be at least 0 or more");t.signal?.throwIfAborted();let a=[e].flat(),c=[],{addListener:h,removeListener:u}=hs(r),f=async(...b)=>{let l=t.multiArgs?b:b[0];if(t.filter)try{if(!await t.filter(l))return}catch(p){n(),s(p);return}c.push(l),t.count===c.length&&(n(),i(c))},d=(...b)=>{n(),s(t.rejectionMultiArgs?b:b[0])};n=()=>{for(let b of a)u(b,f);for(let b of t.rejectionEvents)a.includes(b)||u(b,d)};for(let b of a)h(b,f);for(let b of t.rejectionEvents)a.includes(b)||h(b,d);t.signal&&t.signal.addEventListener("abort",()=>{d(t.signal.reason)},{once:!0}),t.resolveImmediately&&i(c)});if(o.cancel=n,typeof t.timeout=="number"){let i=Yt(o,{milliseconds:t.timeout});return i.cancel=()=>{n(),i.clear()},i}return o}function En(r,e,t){typeof t=="function"&&(t={filter:t}),t={...t,count:1,resolveImmediately:!1};let n=ls(r,e,t),o=n.then(i=>i[0]);return o.cancel=n.cancel,o}var H=class extends Error{static name="UnexpectedEOFError";name="UnexpectedEOFError"};function fs(r){return r.reason}async function Zt(r,e,t){if(e==null)return r;let n=t?.translateError??fs;if(e.aborted)return r.catch(()=>{}),Promise.reject(n(e));let o;try{return await Promise.race([r,new Promise((i,s)=>{o=()=>{s(n(e))},e.addEventListener("abort",o)})])}finally{o!=null&&e.removeEventListener("abort",o)}}function vn(r=0){return new Uint8Array(r)}var ds=Math.pow(2,7),ps=Math.pow(2,14),ms=Math.pow(2,21),er=Math.pow(2,28),tr=Math.pow(2,35),rr=Math.pow(2,42),nr=Math.pow(2,49),m=128,D=127;function Ae(r){if(r<ds)return 1;if(r<ps)return 2;if(r<ms)return 3;if(r<er)return 4;if(r<tr)return 5;if(r<rr)return 6;if(r<nr)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function bs(r,e,t=0){switch(Ae(r)){case 8:e[t++]=r&255|m,r/=128;case 7:e[t++]=r&255|m,r/=128;case 6:e[t++]=r&255|m,r/=128;case 5:e[t++]=r&255|m,r/=128;case 4:e[t++]=r&255|m,r>>>=7;case 3:e[t++]=r&255|m,r>>>=7;case 2:e[t++]=r&255|m,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function xs(r,e,t=0){switch(Ae(r)){case 8:e.set(t++,r&255|m),r/=128;case 7:e.set(t++,r&255|m),r/=128;case 6:e.set(t++,r&255|m),r/=128;case 5:e.set(t++,r&255|m),r/=128;case 4:e.set(t++,r&255|m),r>>>=7;case 3:e.set(t++,r&255|m),r>>>=7;case 2:e.set(t++,r&255|m),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function gs(r,e){let t=r[e],n=0;if(n+=t&D,t<m||(t=r[e+1],n+=(t&D)<<7,t<m)||(t=r[e+2],n+=(t&D)<<14,t<m)||(t=r[e+3],n+=(t&D)<<21,t<m)||(t=r[e+4],n+=(t&D)*er,t<m)||(t=r[e+5],n+=(t&D)*tr,t<m)||(t=r[e+6],n+=(t&D)*rr,t<m)||(t=r[e+7],n+=(t&D)*nr,t<m))return n;throw new RangeError("Could not decode varint")}function ws(r,e){let t=r.get(e),n=0;if(n+=t&D,t<m||(t=r.get(e+1),n+=(t&D)<<7,t<m)||(t=r.get(e+2),n+=(t&D)<<14,t<m)||(t=r.get(e+3),n+=(t&D)<<21,t<m)||(t=r.get(e+4),n+=(t&D)*er,t<m)||(t=r.get(e+5),n+=(t&D)*tr,t<m)||(t=r.get(e+6),n+=(t&D)*rr,t<m)||(t=r.get(e+7),n+=(t&D)*nr,t<m))return n;throw new RangeError("Could not decode varint")}function Ln(r,e,t=0){return e==null&&(e=vn(Ae(r))),e instanceof Uint8Array?bs(r,e,t):xs(r,e,t)}function Sn(r,e=0){return r instanceof Uint8Array?gs(r,e):ws(r,e)}var vs=4194304,je=class extends Error{static name="UnwrappedError";name="UnwrappedError"},ir=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},sr=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},ar=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function Ls(r){return typeof r?.closeRead=="function"}function Ss(r){return typeof r?.close=="function"}function or(r){return Ls(r)?r.remoteWriteStatus!=="writable"&&r.readBufferLength===0:Ss(r)?r.status!=="open":!1}function As(r){return r?.addEventListener!=null&&r?.removeEventListener!=null&&r?.send!=null&&r?.push!=null&&r?.log!=null}function Is(r,e){let t=e?.maxBufferSize??vs,n=new J,o,i=!1;if(!As(r))throw new Q("Argument should be a Stream or a Multiaddr");let s=u=>{if(n.append(u.data),n.byteLength>t){let f=n.byteLength;n.consume(n.byteLength),o?.reject(new Error(`Read buffer overflow - ${f} > ${t}`))}o?.resolve()};r.addEventListener("message",s);let a=u=>{u.error!=null?o?.reject(u.error):o?.resolve()};r.addEventListener("close",a);let c=()=>{o?.resolve()};r.addEventListener("remoteCloseWrite",c);let h={readBuffer:n,async read(u){if(i===!0)throw new je("Stream was unwrapped");if(or(r)){if(n.byteLength===0&&u?.bytes==null)return null;if(u?.bytes!=null&&n.byteLength<u.bytes)throw r.log.error("closed after reading %d/%d bytes",n.byteLength,u.bytes),new H(`Unexpected EOF - stream closed after reading ${n.byteLength}/${u.bytes} bytes`)}let f=u?.bytes??1;for(o=Promise.withResolvers();;){if(n.byteLength>=f){o.resolve();break}if(await Zt(o.promise,u?.signal),or(r)){if(n.byteLength===0&&u?.bytes==null)return null;break}o=Promise.withResolvers()}let d=u?.bytes??n.byteLength;if(n.byteLength<d){if(or(r))throw r.log.error("closed while reading %d/%d bytes",n.byteLength,d),new H(`Unexpected EOF - stream closed while reading ${n.byteLength}/${d} bytes`);return h.read(u)}let b=n.sublist(0,d);return n.consume(d),b},async write(u,f){if(i===!0)throw new je("Stream was unwrapped");r.send(u)||await En(r,"drain",{signal:f?.signal,rejectionEvents:["close"]})},unwrap(){return i||(i=!0,r.removeEventListener("message",s),r.removeEventListener("close",a),r.removeEventListener("remoteCloseWrite",c),n.byteLength>0&&(r.log("stream unwrapped with %d unread bytes",n.byteLength),r.unshift(n))),r}};return h}function Ns(r,e={}){let t=Is(r,e);e.maxDataLength!=null&&e.maxLengthLength==null&&(e.maxLengthLength=Ae(e.maxDataLength));let n=e?.lengthDecoder??Sn,o=e?.lengthEncoder??Ln;return{async read(s){let a=-1,c=new J;for(;;){let u=await t.read({...s,bytes:1});if(u==null)break;c.append(u);try{a=n(c)}catch(f){if(f instanceof RangeError)continue;throw f}if(a<0)throw new ir("Invalid message length");if(e?.maxLengthLength!=null&&c.byteLength>e.maxLengthLength)throw new ar(`Message length length too long - ${c.byteLength} > ${e.maxLengthLength}`);if(a>-1)break}if(e?.maxDataLength!=null&&a>e.maxDataLength)throw new sr(`Message length too long - ${a} > ${e.maxDataLength}`);let h=await t.read({...s,bytes:a});if(h==null)throw r.log.error("tried to read %d bytes but the stream closed",a),new H(`Unexpected EOF - tried to read ${a} bytes but the stream closed`);if(h.byteLength!==a)throw r.log.error("read %d/%d bytes before the stream closed",h.byteLength,a),new H(`Unexpected EOF - read ${h.byteLength}/${a} bytes before the stream closed`);return h},async write(s,a){await t.write(new J(o(s.byteLength),s),a)},async writeV(s,a){let c=new J(...s.flatMap(h=>[o(h.byteLength),h]));await t.write(c,a)},unwrap(){return t.unwrap()}}}function cr(r,e){let t=Ns(r,e),n={read:async(o,i)=>{let s=await t.read(i);return o.decode(s)},write:async(o,i,s)=>{await t.write(i.encode(o),s)},writeV:async(o,i,s)=>{await t.writeV(o.map(a=>i.encode(a)),s)},pb:o=>({read:async i=>n.read(o,i),write:async(i,s)=>n.write(i,o,s),writeV:async(i,s)=>n.writeV(i,o,s),unwrap:()=>n}),unwrap:()=>t.unwrap()};return n}var An="0.0.1",In="fetch";var Ie;(function(r){let e;r.codec=()=>(e==null&&(e=qe((i,s,a={})=>{a.lengthDelimited!==!1&&s.fork(),i.identifier!=null&&i.identifier.byteLength>0&&(s.uint32(10),s.bytes(i.identifier)),a.lengthDelimited!==!1&&s.ldelim()},(i,s,a={})=>{let c={identifier:mt(0)},h=s==null?i.len:i.pos+s;for(;i.pos<h;){let u=i.uint32();u>>>3===1?c.identifier=i.bytes():i.skipType(u&7)}return c},function*(i,s,a,c={}){let h=s==null?i.len:i.pos+s;for(;i.pos<h;){let u=i.uint32();u>>>3===1?yield{field:`${a}.identifier`,value:i.bytes()}:i.skipType(u&7)}})),e);function t(i){return ze(i,r.codec())}r.encode=t;function n(i,s){return Be(i,r.codec(),s)}r.decode=n;function o(i,s){return Ve(i,r.codec(),s)}r.stream=o})(Ie||(Ie={}));var O;(function(r){let e;(function(a){a.OK="OK",a.NOT_FOUND="NOT_FOUND",a.ERROR="ERROR"})(e=r.StatusCode||(r.StatusCode={}));let t;(function(a){a[a.OK=0]="OK",a[a.NOT_FOUND=1]="NOT_FOUND",a[a.ERROR=2]="ERROR"})(t||(t={})),(function(a){a.codec=()=>Ht(t)})(e=r.StatusCode||(r.StatusCode={}));let n;r.codec=()=>(n==null&&(n=qe((a,c,h={})=>{h.lengthDelimited!==!1&&c.fork(),a.status!=null&&t[a.status]!==0&&(c.uint32(8),r.StatusCode.codec().encode(a.status,c)),a.data!=null&&a.data.byteLength>0&&(c.uint32(18),c.bytes(a.data)),h.lengthDelimited!==!1&&c.ldelim()},(a,c,h={})=>{let u={status:e.OK,data:mt(0)},f=c==null?a.len:a.pos+c;for(;a.pos<f;){let d=a.uint32();switch(d>>>3){case 1:{u.status=r.StatusCode.codec().decode(a);break}case 2:{u.data=a.bytes();break}default:{a.skipType(d&7);break}}}return u},function*(a,c,h,u={}){let f=c==null?a.len:a.pos+c;for(;a.pos<f;){let d=a.uint32();switch(d>>>3){case 1:{yield{field:`${h}.status`,value:r.StatusCode.codec().decode(a)};break}case 2:{yield{field:`${h}.data`,value:a.bytes()};break}default:{a.skipType(d&7);break}}}})),n);function o(a){return ze(a,r.codec())}r.encode=o;function i(a,c){return Be(a,r.codec(),c)}r.decode=i;function s(a,c){return Ve(a,r.codec(),c)}r.stream=s})(O||(O={}));var Nn=1e4,Ge=class{protocol;components;lookupFunctions;started;init;constructor(e,t={}){this.started=!1,this.components=e,this.protocol=`/${t.protocolPrefix??"libp2p"}/${In}/${An}`,this.lookupFunctions=new Map,this.init=t,this.handleMessage=this.handleMessage.bind(this)}[Symbol.toStringTag]="@libp2p/fetch";async start(){await this.components.registrar.handle(this.protocol,this.handleMessage,{maxInboundStreams:this.init.maxInboundStreams,maxOutboundStreams:this.init.maxOutboundStreams}),this.started=!0}async stop(){await this.components.registrar.unhandle(this.protocol),this.started=!1}isStarted(){return this.started}async fetch(e,t,n={}){if(typeof t=="string"&&(t=Oe(t)),n.signal==null){let i=this.init.timeout??Nn,s=AbortSignal.timeout(i);n={...n,signal:s}}let o;try{o=await(await this.components.connectionManager.openConnection(e,n)).newStream(this.protocol,n);let s=o.log.newScope("fetch");s.trace("fetch %m",t);let a=cr(o);await a.write({identifier:t},Ie,n);let c=await a.read(O,n);switch(await o.close(n),c.status){case O.StatusCode.OK:return s.trace("received status OK for %m",t),c.data;case O.StatusCode.NOT_FOUND:{s("received status NOT_FOUND for %m",t);return}case O.StatusCode.ERROR:{s("received status ERROR for %m",t);let h=xt(c.data);throw new Ce("Error in fetch protocol response: "+h)}default:throw s("received status unknown for %m",t),new Ne("Unknown response status")}}catch(i){throw o?.abort(i),i}}async handleMessage(e){let t=e.log.newScope("fetch"),n=AbortSignal.timeout(this.init.timeout??Nn),o=cr(e),i=await o.read(Ie,{signal:n}),s,a=xt(i.identifier),c=this._getLookupFunction(a);if(c==null){t.trace("sending status ERROR for %m",i.identifier);let h=Oe("No lookup function registered for key");s={status:O.StatusCode.ERROR,data:h}}else{t.trace("lookup data with identifier %s",c.prefix);try{let h=await c.fn(i.identifier);h==null?(t.trace("sending status NOT_FOUND for %m",i.identifier),s={status:O.StatusCode.NOT_FOUND,data:new Uint8Array(0)}):(t.trace("sending status OK for %m",i.identifier),s={status:O.StatusCode.OK,data:h})}catch(h){t.error("error during lookup of %m - %e",i.identifier,h);let u=Oe(h.message);s={status:O.StatusCode.ERROR,data:u}}}await o.write(s,O,{signal:n}),await e.close({signal:n})}_getLookupFunction(e){for(let t of this.lookupFunctions.keys())if(e.startsWith(t)){let n=this.lookupFunctions.get(t);if(n!=null)return{fn:n,prefix:t}}}registerLookupFunction(e,t){if(this.lookupFunctions.has(e))throw new Q(`Fetch protocol handler for key prefix '${e}' already registered`);this.lookupFunctions.set(e,t)}unregisterLookupFunction(e,t){t!=null&&this.lookupFunctions.get(e)!==t||this.lookupFunctions.delete(e)}};function Cs(r={}){return e=>new Ge(e,r)}return Tn(Ds);})();
|
|
2
|
+
"use strict";var Libp2PFetch=(()=>{var It=Object.defineProperty;var ur=Object.getOwnPropertyDescriptor;var hr=Object.getOwnPropertyNames;var lr=Object.prototype.hasOwnProperty;var E=(r,t)=>{for(var e in t)It(r,e,{get:t[e],enumerable:!0})},fr=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of hr(t))!lr.call(r,i)&&i!==e&&It(r,i,{get:()=>t[i],enumerable:!(n=ur(t,i))||n.enumerable});return r};var dr=r=>fr(It({},"__esModule",{value:!0}),r);var Qn={};E(Qn,{fetch:()=>Yn});var q=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}};var ut=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}},ht=class extends Error{static name="ProtocolError";constructor(t="Protocol error"){super(t),this.name="ProtocolError"}};function S(r=0){return new Uint8Array(r)}function y(r=0){return new Uint8Array(r)}function pr(r){return r?.buffer instanceof ArrayBuffer}function Ee(r){if(pr(r))return r;let t=r.slice();return new Uint8Array(t.buffer,0,t.byteLength)}function At(r,t){t==null&&(t=r.reduce((i,s)=>i+s.length,0));let e=y(t),n=0;for(let i of r)e.set(i,n),n+=i.length;return Ee(e)}function Le(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}var Se=Symbol.for("@achingbrain/uint8arraylist");function ve(r,t){if(t==null||t<0)throw new RangeError("index is out of bounds");let e=0;for(let n of r){let i=e+n.byteLength;if(t<i)return{buf:n,index:t-e};e=i}throw new RangeError("index is out of bounds")}function lt(r){return!!r?.[Se]}var V=class r{bufs;length;[Se]=!0;constructor(...t){this.bufs=[],this.length=0,t.length>0&&this.appendAll(t)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...t){this.appendAll(t)}appendAll(t){let e=0;for(let n of t)if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.push(n);else if(lt(n)){e+=n.byteLength;for(let i of n.bufs)this.bufs.push(i)}else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(lt(n))e+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}get(t){let e=ve(this.bufs,t);return e.buf[e.index]}set(t,e){let n=ve(this.bufs,t);n.buf[n.index]=e}write(t,e=0){if(t instanceof Uint8Array)for(let n=0;n<t.length;n++)this.set(e+n,t[n]);else if(lt(t))for(let n=0;n<t.length;n++)this.set(e+n,t.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(t){if(t=Math.trunc(t),!(Number.isNaN(t)||t<=0)){if(t===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(t>=this.bufs[0].byteLength)t-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(t),this.length-=t;break}}}slice(t,e){let{bufs:n,length:i}=this._subList(t,e);return At(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:At(n,i)}sublist(t,e){let{bufs:n,length:i}=this._subList(t,e),s=new r;return s.length=i,s.bufs=n,s}_subList(t,e){if(t=t??0,e=e??this.length,t<0&&(t=this.length+t),e<0&&(e=this.length+e),t<0||e>this.length)throw new RangeError("index is out of bounds");if(t===e)return{bufs:[],length:0};if(t===0&&e===this.length)return{bufs:[...this.bufs],length:this.length};let n=[],i=0;for(let s=0;s<this.bufs.length;s++){let o=this.bufs[s],a=i,c=a+o.byteLength;if(i=c,t>=c)continue;let h=t>=a&&t<c,u=e>a&&e<=c;if(h&&u){if(t===a&&e===c){n.push(o);break}let l=t-a;n.push(o.subarray(l,l+(e-t)));break}if(h){if(t===0){n.push(o);continue}n.push(o.subarray(t-a));continue}if(u){if(e===c){n.push(o);break}n.push(o.subarray(0,e-a));break}n.push(o)}return{bufs:n,length:e-t}}indexOf(t,e=0){if(!lt(t)&&!(t instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=t instanceof Uint8Array?t:t.subarray();if(e=Number(e??0),isNaN(e)&&(e=0),e<0&&(e=this.length+e),e<0&&(e=0),t.length===0)return e>this.length?this.length:e;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let s=256,o=new Int32Array(s);for(let l=0;l<s;l++)o[l]=-1;for(let l=0;l<i;l++)o[n[l]]=l;let a=o,c=this.byteLength-n.byteLength,h=n.byteLength-1,u;for(let l=e;l<=c;l+=u){u=0;for(let f=h;f>=0;f--){let m=this.get(l+f);if(n[f]!==m){u=Math.max(1,f-a[m]);break}}if(u===0)return l}return-1}getInt8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getInt8(0)}setInt8(t,e){let n=y(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,e),this.write(n,t)}getInt16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,e)}setInt16(t,e,n){let i=S(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,e,n),this.write(i,t)}getInt32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,e)}setInt32(t,e,n){let i=S(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,e,n),this.write(i,t)}getBigInt64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,e)}setBigInt64(t,e,n){let i=S(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,e,n),this.write(i,t)}getUint8(t){let e=this.subarray(t,t+1);return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint8(0)}setUint8(t,e){let n=y(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,e),this.write(n,t)}getUint16(t,e){let n=this.subarray(t,t+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,e)}setUint16(t,e,n){let i=S(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,e,n),this.write(i,t)}getUint32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,e)}setUint32(t,e,n){let i=S(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,e,n),this.write(i,t)}getBigUint64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,e)}setBigUint64(t,e,n){let i=S(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,e,n),this.write(i,t)}getFloat32(t,e){let n=this.subarray(t,t+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,e)}setFloat32(t,e,n){let i=S(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,e,n),this.write(i,t)}getFloat64(t,e){let n=this.subarray(t,t+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,e)}setFloat64(t,e,n){let i=S(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,e,n),this.write(i,t)}equals(t){if(t==null||!(t instanceof r)||t.bufs.length!==this.bufs.length)return!1;for(let e=0;e<this.bufs.length;e++)if(!Le(this.bufs[e],t.bufs[e]))return!1;return!0}static fromUint8Arrays(t,e){let n=new r;return n.bufs=t,e==null&&(e=t.reduce((i,s)=>i+s.byteLength,0)),n.length=e,n}};var Tt={};E(Tt,{base10:()=>Lr});var li=new Uint8Array(0);function Ie(r,t){if(r===t)return!0;if(r.byteLength!==t.byteLength)return!1;for(let e=0;e<r.byteLength;e++)if(r[e]!==t[e])return!1;return!0}function B(r){if(r instanceof Uint8Array&&r.constructor.name==="Uint8Array")return z(r);if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return z(new Uint8Array(r.buffer,r.byteOffset,r.byteLength));throw new Error("Unknown type, must be binary type")}function Ae(r){return new TextEncoder().encode(r)}function Ne(r){return new TextDecoder().decode(r)}function mr(r){return r?.buffer instanceof ArrayBuffer}function z(r){return mr(r)?r:r.slice()}function br(r,t){if(r.length>=255)throw new TypeError("Alphabet too long");for(var e=new Uint8Array(256),n=0;n<e.length;n++)e[n]=255;for(var i=0;i<r.length;i++){var s=r.charAt(i),o=s.charCodeAt(0);if(e[o]!==255)throw new TypeError(s+" is ambiguous");e[o]=i}var a=r.length,c=r.charAt(0),h=Math.log(a)/Math.log(256),u=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 g=0,_=0,A=0,C=d.length;A!==C&&d[A]===0;)A++,g++;for(var U=(C-A)*u+1>>>0,v=new Uint8Array(U);A!==C;){for(var T=d[A],R=0,N=U-1;(T!==0||R<_)&&N!==-1;N--,R++)T+=256*v[N]>>>0,v[N]=T%a>>>0,T=T/a>>>0;if(T!==0)throw new Error("Non-zero carry");_=R,A++}for(var F=U-_;F!==U&&v[F]===0;)F++;for(var ct=c.repeat(g);F<U;++F)ct+=r.charAt(v[F]);return ct}function f(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var g=0;if(d[g]!==" "){for(var _=0,A=0;d[g]===c;)_++,g++;for(var C=(d.length-g)*h+1>>>0,U=new Uint8Array(C);d[g];){var v=e[d.charCodeAt(g)];if(v===255)return;for(var T=0,R=C-1;(v!==0||T<A)&&R!==-1;R--,T++)v+=a*U[R]>>>0,U[R]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");A=T,g++}if(d[g]!==" "){for(var N=C-A;N!==C&&U[N]===0;)N++;for(var F=new Uint8Array(_+(C-N)),ct=_;N!==C;)F[ct++]=U[N++];return F}}}function m(d){var g=f(d);if(g)return g;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:f,decode:m}}var gr=br,wr=gr,Ce=wr;var Nt=class{name;prefix;baseEncode;constructor(t,e,n){this.name=t,this.prefix=e,this.baseEncode=n}encode(t){if(t instanceof Uint8Array)return`${this.prefix}${this.baseEncode(t)}`;throw Error("Unknown type, must be binary type")}},Dt=class{name;prefix;baseDecode;prefixCodePoint;constructor(t,e,n){this.name=t,this.prefix=e;let i=e.codePointAt(0);if(i===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=i,this.baseDecode=n}decode(t){if(typeof t=="string"){if(t.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(t)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(t.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(t){return Ue(this,t)}},Ct=class{decoders;constructor(t){this.decoders=t}or(t){return Ue(this,t)}decode(t){let e=t[0],n=this.decoders[e];if(n!=null)return n.decode(t);throw RangeError(`Unable to decode multibase string ${JSON.stringify(t)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function Ue(r,t){return new Ct({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Ut=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(t,e,n,i){this.name=t,this.prefix=e,this.baseEncode=n,this.baseDecode=i,this.encoder=new Nt(t,e,n),this.decoder=new Dt(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function W({name:r,prefix:t,encode:e,decode:n}){return new Ut(r,t,e,n)}function k({name:r,prefix:t,alphabet:e}){let{encode:n,decode:i}=Ce(e,r);return W({prefix:t,name:r,encode:n,decode:s=>B(i(s))})}function xr(r,t,e,n){let i=r.length;for(;r[i-1]==="=";)--i;let s=new Uint8Array(i*e/8|0),o=0,a=0,c=0;for(let h=0;h<i;++h){let u=t[r[h]];if(u===void 0)throw new SyntaxError(`Non-${n} character`);a=a<<e|u,o+=e,o>=8&&(o-=8,s[c++]=255&a>>o)}if(o>=e||(255&a<<8-o)!==0)throw new SyntaxError("Unexpected end of data");return s}function yr(r,t,e){let n=t[t.length-1]==="=",i=(1<<e)-1,s="",o=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],o+=8;o>e;)o-=e,s+=t[i&a>>o];if(o!==0&&(s+=t[i&a<<e-o]),n)for(;(s.length*e&7)!==0;)s+="=";return s}function Er(r){let t={};for(let e=0;e<r.length;++e)t[r[e]]=e;return t}function b({name:r,prefix:t,bitsPerChar:e,alphabet:n}){let i=Er(n);return W({prefix:t,name:r,encode(s){return yr(s,n,e)},decode(s){return xr(s,i,e,r)}})}var Lr=k({prefix:"9",name:"base10",alphabet:"0123456789"});var Ot={};E(Ot,{base16:()=>vr,base16upper:()=>Sr});var vr=b({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Sr=b({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ft={};E(Ft,{base2:()=>Ir});var Ir=b({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Bt={};E(Bt,{base256emoji:()=>Ur});var Te=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}"),Ar=Te.reduce((r,t,e)=>(r[e]=t,r),[]),Nr=Te.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function Dr(r){return r.reduce((t,e)=>(t+=Ar[e],t),"")}function Cr(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let i=Nr[n];if(i==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(i)}return new Uint8Array(t)}var Ur=W({prefix:"\u{1F680}",name:"base256emoji",encode:Dr,decode:Cr});var Mt={};E(Mt,{base32:()=>K,base32hex:()=>Br,base32hexpad:()=>Rr,base32hexpadupper:()=>kr,base32hexupper:()=>Mr,base32pad:()=>Or,base32padupper:()=>Fr,base32upper:()=>Tr,base32z:()=>Pr});var K=b({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Tr=b({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Or=b({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Fr=b({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Br=b({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Mr=b({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Rr=b({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),kr=b({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Pr=b({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Rt={};E(Rt,{base36:()=>Z,base36upper:()=>_r});var Z=k({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),_r=k({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var kt={};E(kt,{base58btc:()=>O,base58flickr:()=>Vr});var O=k({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Vr=k({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Pt={};E(Pt,{base64:()=>zr,base64pad:()=>$r,base64url:()=>Gr,base64urlpad:()=>jr});var zr=b({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$r=b({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Gr=b({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),jr=b({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var _t={};E(_t,{base8:()=>qr});var qr=b({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Vt={};E(Vt,{identity:()=>Wr});var Wr=W({prefix:"\0",name:"identity",encode:r=>Ne(r),decode:r=>Ae(r)});var Ni=new TextEncoder,Di=new TextDecoder;var $t={};E($t,{identity:()=>bn});var Xr=Be,Oe=128,Jr=127,Yr=~Jr,Qr=Math.pow(2,31);function Be(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Qr;)t[e++]=r&255|Oe,r/=128;for(;r&Yr;)t[e++]=r&255|Oe,r>>>=7;return t[e]=r|0,Be.bytes=e-n+1,t}var Zr=zt,tn=128,Fe=127;function zt(r,n){var e=0,n=n||0,i=0,s=n,o,a=r.length;do{if(s>=a)throw zt.bytes=0,new RangeError("Could not decode varint");o=r[s++],e+=i<28?(o&Fe)<<i:(o&Fe)*Math.pow(2,i),i+=7}while(o>=tn);return zt.bytes=s-n,e}var en=Math.pow(2,7),rn=Math.pow(2,14),nn=Math.pow(2,21),sn=Math.pow(2,28),on=Math.pow(2,35),an=Math.pow(2,42),cn=Math.pow(2,49),un=Math.pow(2,56),hn=Math.pow(2,63),ln=function(r){return r<en?1:r<rn?2:r<nn?3:r<sn?4:r<on?5:r<an?6:r<cn?7:r<un?8:r<hn?9:10},fn={encode:Xr,decode:Zr,encodingLength:ln},dn=fn,tt=dn;function et(r,t=0){return[tt.decode(r,t),tt.decode.bytes]}function H(r,t,e=0){return tt.encode(r,t,e),t}function X(r){return tt.encodingLength(r)}function Y(r,t){let e=t.byteLength,n=X(r),i=n+X(e),s=new Uint8Array(i+e);return H(r,s,0),H(e,s,n),s.set(t,i),new J(r,e,t,s)}function Me(r){let t=B(r),[e,n]=et(t),[i,s]=et(t.subarray(n)),o=t.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new J(e,i,o,t)}function Re(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&Ie(r.bytes,e.bytes)}}var J=class{code;size;digest;bytes;constructor(t,e,n,i){this.code=t,this.size=e,this.digest=z(n),this.bytes=z(i)}};var ke=0,pn="identity",Pe=B;function mn(r,t){if(t?.truncate!=null&&t.truncate!==r.byteLength){if(t.truncate<0||t.truncate>r.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${r.byteLength}`);r=r.subarray(0,t.truncate)}return Y(ke,Pe(r))}var bn={code:ke,name:pn,encode:Pe,digest:mn};var qt={};E(qt,{sha256:()=>wn,sha512:()=>xn});var gn=20;function jt({name:r,code:t,encode:e,minDigestLength:n,maxDigestLength:i}){return new Gt(r,t,e,n,i)}var Gt=class{name;code;encode;minDigestLength;maxDigestLength;constructor(t,e,n,i,s){this.name=t,this.code=e,this.encode=n,this.minDigestLength=i??gn,this.maxDigestLength=s}digest(t,e){if(e?.truncate!=null){if(e.truncate<this.minDigestLength)throw new Error(`Invalid truncate option, must be greater than or equal to ${this.minDigestLength}`);if(this.maxDigestLength!=null&&e.truncate>this.maxDigestLength)throw new Error(`Invalid truncate option, must be less than or equal to ${this.maxDigestLength}`)}if(t instanceof Uint8Array){let n=this.encode(t);return n instanceof Uint8Array?_e(n,this.code,e?.truncate):n.then(i=>_e(i,this.code,e?.truncate))}else throw Error("Unknown type, must be binary type")}};function _e(r,t,e){if(e!=null&&e!==r.byteLength){if(e>r.byteLength)throw new Error(`Invalid truncate option, must be less than or equal to ${r.byteLength}`);r=r.subarray(0,e)}return Y(t,r)}function ze(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var wn=jt({name:"sha2-256",code:18,encode:ze("SHA-256")}),xn=jt({name:"sha2-512",code:19,encode:ze("SHA-512")});function $e(r,t){let{bytes:e,version:n}=r;return n===0?En(e,Wt(r),t??O.encoder):Ln(e,Wt(r),t??K.encoder)}var Ge=new WeakMap;function Wt(r){let t=Ge.get(r);if(t==null){let e=new Map;return Ge.set(r,e),e}return t}var dt=class r{code;version;multihash;bytes;"/";constructor(t,e,n,i){this.code=e,this.version=t,this.multihash=n,this.bytes=z(i),this["/"]=this.bytes}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==nt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==vn)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(e)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:t,digest:e}=this.multihash,n=Y(t,e);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(t){return r.equals(this,t)}static equals(t,e){let n=e;return n!=null&&t.code===n.code&&t.version===n.version&&Re(t.multihash,n.multihash)}toString(t){return $e(this,t)}toJSON(){return{"/":$e(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(t){if(t==null)return null;let e=t;if(e instanceof r)return e;if(e["/"]!=null&&e["/"]===e.bytes||e.asCID===e){let{version:n,code:i,multihash:s,bytes:o}=e;return new r(n,i,s,o??je(n,i,s.bytes))}else if(e[Sn]===!0){let{version:n,multihash:i,code:s}=e,o=Me(i);return r.create(n,s,o)}else return null}static create(t,e,n){if(typeof e!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(t){case 0:{if(e!==nt)throw new Error(`Version 0 CID must use dag-pb (code: ${nt}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let i=je(t,e,n.bytes);return new r(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,nt,t)}static createV1(t,e){return r.create(1,t,e)}static decode(t){let[e,n]=r.decodeFirst(t);if(n.length!==0)throw new Error("Incorrect length");return e}static decodeFirst(t){let e=r.inspectBytes(t),n=e.size-e.multihashSize,i=B(t.subarray(n,n+e.multihashSize));if(i.byteLength!==e.multihashSize)throw new Error("Incorrect length");let s=i.subarray(e.multihashSize-e.digestSize),o=new J(e.multihashCode,e.digestSize,s,i);return[e.version===0?r.createV0(o):r.createV1(e.codec,o),t.subarray(e.size)]}static inspectBytes(t){let e=0,n=()=>{let[l,f]=et(t.subarray(e));return e+=f,l},i=n(),s=nt;if(i===18?(i=0,e=0):s=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let o=e,a=n(),c=n(),h=e+c,u=h-o;return{version:i,codec:s,multihashCode:a,digestSize:c,multihashSize:u,size:h}}static parse(t,e){let[n,i]=yn(t,e),s=r.decode(i);if(s.version===0&&t[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Wt(s).set(n,t),s}};function yn(r,t){switch(r[0]){case"Q":{let e=t??O;return[O.prefix,e.decode(`${O.prefix}${r}`)]}case O.prefix:{let e=t??O;return[O.prefix,e.decode(r)]}case K.prefix:{let e=t??K;return[K.prefix,e.decode(r)]}case Z.prefix:{let e=t??Z;return[Z.prefix,e.decode(r)]}default:{if(t==null)throw Error("To parse non base32, base36 or base58btc encoded CID multibase decoder must be provided");return[r[0],t.decode(r)]}}}function En(r,t,e){let{prefix:n}=e;if(n!==O.prefix)throw Error(`Cannot string encode V0 in ${e.name} encoding`);let i=t.get(n);if(i==null){let s=e.encode(r).slice(1);return t.set(n,s),s}else return i}function Ln(r,t,e){let{prefix:n}=e,i=t.get(n);if(i==null){let s=e.encode(r);return t.set(n,s),s}else return i}var nt=112,vn=18;function je(r,t,e){let n=X(r),i=n+X(t),s=new Uint8Array(i+e.byteLength);return H(r,s,0),H(t,s,n),s.set(e,i),s}var Sn=Symbol.for("@ipld/js-cid/CID");var Kt={...Vt,...Ft,..._t,...Tt,...Ot,...Mt,...Rt,...kt,...Pt,...Bt},Ji={...qt,...$t};function We(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var qe=We("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ht=We("ascii","a",r=>{let t="a";for(let e=0;e<r.length;e++)t+=String.fromCharCode(r[e]);return t},r=>{r=r.substring(1);let t=y(r.length);for(let e=0;e<r.length;e++)t[e]=r.charCodeAt(e);return t}),In={utf8:qe,"utf-8":qe,hex:Kt.base16,latin1:Ht,ascii:Ht,binary:Ht,...Kt},pt=In;function Q(r,t="utf8"){let e=pt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}var An=Math.pow(2,7),Nn=Math.pow(2,14),Dn=Math.pow(2,21),Xt=Math.pow(2,28),Jt=Math.pow(2,35),Yt=Math.pow(2,42),Qt=Math.pow(2,49),p=128,w=127;function M(r){if(r<An)return 1;if(r<Nn)return 2;if(r<Dn)return 3;if(r<Xt)return 4;if(r<Jt)return 5;if(r<Yt)return 6;if(r<Qt)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Zt(r,t,e=0){switch(M(r)){case 8:t[e++]=r&255|p,r/=128;case 7:t[e++]=r&255|p,r/=128;case 6:t[e++]=r&255|p,r/=128;case 5:t[e++]=r&255|p,r/=128;case 4:t[e++]=r&255|p,r>>>=7;case 3:t[e++]=r&255|p,r>>>=7;case 2:t[e++]=r&255|p,r>>>=7;case 1:{t[e++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return t}function Cn(r,t,e=0){switch(M(r)){case 8:t.set(e++,r&255|p),r/=128;case 7:t.set(e++,r&255|p),r/=128;case 6:t.set(e++,r&255|p),r/=128;case 5:t.set(e++,r&255|p),r/=128;case 4:t.set(e++,r&255|p),r>>>=7;case 3:t.set(e++,r&255|p),r>>>=7;case 2:t.set(e++,r&255|p),r>>>=7;case 1:{t.set(e++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return t}function te(r,t){let e=r[t],n=0;if(n+=e&w,e<p||(e=r[t+1],n+=(e&w)<<7,e<p)||(e=r[t+2],n+=(e&w)<<14,e<p)||(e=r[t+3],n+=(e&w)<<21,e<p)||(e=r[t+4],n+=(e&w)*Xt,e<p)||(e=r[t+5],n+=(e&w)*Jt,e<p)||(e=r[t+6],n+=(e&w)*Yt,e<p)||(e=r[t+7],n+=(e&w)*Qt,e<p))return n;throw new RangeError("Could not decode varint")}function Un(r,t){let e=r.get(t),n=0;if(n+=e&w,e<p||(e=r.get(t+1),n+=(e&w)<<7,e<p)||(e=r.get(t+2),n+=(e&w)<<14,e<p)||(e=r.get(t+3),n+=(e&w)<<21,e<p)||(e=r.get(t+4),n+=(e&w)*Xt,e<p)||(e=r.get(t+5),n+=(e&w)*Jt,e<p)||(e=r.get(t+6),n+=(e&w)*Yt,e<p)||(e=r.get(t+7),n+=(e&w)*Qt,e<p))return n;throw new RangeError("Could not decode varint")}function Ke(r,t,e=0){return t==null&&(t=y(M(r))),t instanceof Uint8Array?Zt(r,t,e):Cn(r,t,e)}function He(r,t=0){return r instanceof Uint8Array?te(r,t):Un(r,t)}function On(r){return r.buffer instanceof ArrayBuffer}function Xe(r){return On(r)?r:r.slice()}function ee(r,t="utf8"){let e=pt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var re=class r extends Error{name="TimeoutError";constructor(t,e){super(t,e),Error.captureStackTrace?.(this,r)}},Je=r=>r.reason??new DOMException("This operation was aborted.","AbortError");function ne(r,t){let{milliseconds:e,fallback:n,message:i,customTimers:s={setTimeout,clearTimeout},signal:o}=t,a,c,u=new Promise((l,f)=>{if(typeof e!="number"||Math.sign(e)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${e}\``);if(o?.aborted){f(Je(o));return}if(o&&(c=()=>{f(Je(o))},o.addEventListener("abort",c,{once:!0})),r.then(l,f),e===Number.POSITIVE_INFINITY)return;let m=new re;a=s.setTimeout.call(void 0,()=>{if(n){try{l(n())}catch(d){f(d)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?l():i instanceof Error?f(i):(m.message=i??`Promise timed out after ${e} milliseconds`,f(m))},e)}).finally(()=>{u.clear(),c&&o&&o.removeEventListener("abort",c)});return u.clear=()=>{s.clearTimeout.call(void 0,a),a=void 0},u}var Fn=r=>{let t=r.addEventListener||r.on||r.addListener,e=r.removeEventListener||r.off||r.removeListener;if(!t||!e)throw new TypeError("Emitter is not compatible");return{addListener:t.bind(r),removeListener:e.bind(r)}};function Bn(r,t,e){let n,i=new Promise((s,o)=>{if(e={rejectionEvents:["error"],multiArgs:!1,rejectionMultiArgs:!1,resolveImmediately:!1,...e},!(e.count>=0&&(e.count===Number.POSITIVE_INFINITY||Number.isInteger(e.count))))throw new TypeError("The `count` option should be at least 0 or more");e.signal?.throwIfAborted();let a=[t].flat(),c=[],{addListener:h,removeListener:u}=Fn(r),l=async(...m)=>{let d=e.multiArgs?m:m[0];if(e.filter)try{if(!await e.filter(d))return}catch(g){n(),o(g);return}c.push(d),e.count===c.length&&(n(),s(c))},f=(...m)=>{n(),o(e.rejectionMultiArgs?m:m[0])};n=()=>{for(let m of a)u(m,l);for(let m of e.rejectionEvents)a.includes(m)||u(m,f)};for(let m of a)h(m,l);for(let m of e.rejectionEvents)a.includes(m)||h(m,f);e.signal&&e.signal.addEventListener("abort",()=>{f(e.signal.reason)},{once:!0}),e.resolveImmediately&&s(c)});if(i.cancel=n,typeof e.timeout=="number"){let s=ne(i,{milliseconds:e.timeout});return s.cancel=()=>{n(),s.clear()},s}return i}function Ye(r,t,e){typeof e=="function"&&(e={filter:e}),e={...e,count:1,resolveImmediately:!1};let n=Bn(r,t,e),i=n.then(s=>s[0]);return i.cancel=n.cancel,i}var $=class extends Error{static name="UnexpectedEOFError";name="UnexpectedEOFError"};function Mn(r){return r.reason}async function ie(r,t,e){if(t==null)return r;let n=e?.translateError??Mn;if(t.aborted)return r.catch(()=>{}),Promise.reject(n(t));let i;try{return await Promise.race([r,new Promise((s,o)=>{i=()=>{o(n(t))},t.addEventListener("abort",i)})])}finally{i!=null&&t.removeEventListener("abort",i)}}var kn=4194304,mt=class extends Error{static name="UnwrappedError";name="UnwrappedError"},oe=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},ae=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},ce=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function Pn(r){return typeof r?.closeRead=="function"}function _n(r){return typeof r?.close=="function"}function se(r){return Pn(r)?r.remoteWriteStatus!=="writable"&&r.readBufferLength===0:_n(r)?r.status!=="open":!1}function Vn(r){return r?.addEventListener!=null&&r?.removeEventListener!=null&&r?.send!=null&&r?.push!=null&&r?.log!=null}function zn(r,t){let e=t?.maxBufferSize??kn,n=new V,i,s=!1;if(!Vn(r))throw new q("Argument should be a Stream or a Multiaddr");let o=u=>{if(n.append(u.data),n.byteLength>e){let l=n.byteLength;n.consume(n.byteLength),i?.reject(new Error(`Read buffer overflow - ${l} > ${e}`))}i?.resolve()};r.addEventListener("message",o);let a=u=>{u.error!=null?i?.reject(u.error):i?.resolve()};r.addEventListener("close",a);let c=()=>{i?.resolve()};r.addEventListener("remoteCloseWrite",c);let h={readBuffer:n,async read(u){if(s===!0)throw new mt("Stream was unwrapped");if(se(r)){if(n.byteLength===0&&u?.bytes==null)return null;if(u?.bytes!=null&&n.byteLength<u.bytes)throw r.log.error("closed after reading %d/%d bytes",n.byteLength,u.bytes),new $(`Unexpected EOF - stream closed after reading ${n.byteLength}/${u.bytes} bytes`)}let l=u?.bytes??1;for(i=Promise.withResolvers();;){if(n.byteLength>=l){i.resolve();break}if(await ie(i.promise,u?.signal),se(r)){if(n.byteLength===0&&u?.bytes==null)return null;break}i=Promise.withResolvers()}let f=u?.bytes??n.byteLength;if(n.byteLength<f){if(se(r))throw r.log.error("closed while reading %d/%d bytes",n.byteLength,f),new $(`Unexpected EOF - stream closed while reading ${n.byteLength}/${f} bytes`);return h.read(u)}let m=n.sublist(0,f);return n.consume(f),m},async write(u,l){if(s===!0)throw new mt("Stream was unwrapped");r.send(u)||await Ye(r,"drain",{signal:l?.signal,rejectionEvents:["close"]})},unwrap(){return s||(s=!0,r.removeEventListener("message",o),r.removeEventListener("close",a),r.removeEventListener("remoteCloseWrite",c),n.byteLength>0&&(r.log("stream unwrapped with %d unread bytes",n.byteLength),r.unshift(n))),r}};return h}function $n(r,t={}){let e=zn(r,t);t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=M(t.maxDataLength));let n=t?.lengthDecoder??He,i=t?.lengthEncoder??Ke;return{async read(o){let a=-1,c=new V;for(;;){let u=await e.read({...o,bytes:1});if(u==null)break;c.append(u);try{a=n(c)}catch(l){if(l instanceof RangeError)continue;throw l}if(a<0)throw new oe("Invalid message length");if(t?.maxLengthLength!=null&&c.byteLength>t.maxLengthLength)throw new ce(`Message length length too long - ${c.byteLength} > ${t.maxLengthLength}`);if(a>-1)break}if(t?.maxDataLength!=null&&a>t.maxDataLength)throw new ae(`Message length too long - ${a} > ${t.maxDataLength}`);let h=await e.read({...o,bytes:a});if(h==null)throw r.log.error("tried to read %d bytes but the stream closed",a),new $(`Unexpected EOF - tried to read ${a} bytes but the stream closed`);if(h.byteLength!==a)throw r.log.error("read %d/%d bytes before the stream closed",h.byteLength,a),new $(`Unexpected EOF - read ${h.byteLength}/${a} bytes before the stream closed`);return h},async write(o,a){await e.write(new V(i(o.byteLength),o),a)},async writeV(o,a){let c=new V(...o.flatMap(h=>[i(h.byteLength),h]));await e.write(c,a)},unwrap(){return e.unwrap()}}}function ue(r,t){let e=$n(r,t),n={read:async(i,s)=>{let o=await e.read(s);return i.decode(o)},write:async(i,s,o)=>{await e.write(s.encode(i),o)},writeV:async(i,s,o)=>{await e.writeV(i.map(a=>s.encode(a)),o)},pb:i=>({read:async s=>n.read(i,s),write:async(s,o)=>n.write(s,i,o),writeV:async(s,o)=>n.writeV(s,i,o),unwrap:()=>n}),unwrap:()=>e.unwrap()};return n}var Qe="0.0.1",Ze="fetch";var he=new Float32Array([-0]),P=new Uint8Array(he.buffer);function tr(r,t,e){he[0]=r,t[e]=P[0],t[e+1]=P[1],t[e+2]=P[2],t[e+3]=P[3]}function er(r,t){return P[0]=r[t],P[1]=r[t+1],P[2]=r[t+2],P[3]=r[t+3],he[0]}var le=new Float64Array([-0]),x=new Uint8Array(le.buffer);function rr(r,t,e){le[0]=r,t[e]=x[0],t[e+1]=x[1],t[e+2]=x[2],t[e+3]=x[3],t[e+4]=x[4],t[e+5]=x[5],t[e+6]=x[6],t[e+7]=x[7]}function nr(r,t){return x[0]=r[t],x[1]=r[t+1],x[2]=r[t+2],x[3]=r[t+3],x[4]=r[t+4],x[5]=r[t+5],x[6]=r[t+6],x[7]=r[t+7],le[0]}var Gn=BigInt(Number.MAX_SAFE_INTEGER),jn=BigInt(Number.MIN_SAFE_INTEGER),L=class r{lo;hi;constructor(t,e){this.lo=t|0,this.hi=e|0}toNumber(t=!1){if(!t&&this.hi>>>31>0){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(e+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(t=!1){if(t)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let e=~this.lo+1>>>0,n=~this.hi>>>0;return e===0&&(n=n+1>>>0),-(BigInt(e)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(t=!1){return this.toBigInt(t).toString()}zzEncode(){let t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this}zzDecode(){let t=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this}length(){let t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?e===0?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}static fromBigInt(t){if(t===0n)return G;if(t<Gn&&t>jn)return this.fromNumber(Number(t));let e=t<0n;e&&(t=-t);let n=t>>32n,i=t-(n<<32n);return e&&(n=~n|0n,i=~i|0n,++i>ir&&(i=0n,++n>ir&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(t){if(t===0)return G;let e=t<0;e&&(t=-t);let n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(t){return typeof t=="number"?r.fromNumber(t):typeof t=="bigint"?r.fromBigInt(t):typeof t=="string"?r.fromBigInt(BigInt(t)):t.low!=null||t.high!=null?new r(t.low>>>0,t.high>>>0):G}},G=new L(0,0);G.toBigInt=function(){return 0n};G.zzEncode=G.zzDecode=function(){return this};G.length=function(){return 1};var ir=4294967296n;function sr(r){let t=0,e=0;for(let n=0;n<r.length;++n)e=r.charCodeAt(n),e<128?t+=1:e<2048?t+=2:(e&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,t+=4):t+=3;return t}function or(r,t,e){if(e-t<1)return"";let i,s=[],o=0,a;for(;t<e;)a=r[t++],a<128?s[o++]=a:a>191&&a<224?s[o++]=(a&31)<<6|r[t++]&63:a>239&&a<365?(a=((a&7)<<18|(r[t++]&63)<<12|(r[t++]&63)<<6|r[t++]&63)-65536,s[o++]=55296+(a>>10),s[o++]=56320+(a&1023)):s[o++]=(a&15)<<12|(r[t++]&63)<<6|r[t++]&63,o>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,s)),o=0);return i!=null?(o>0&&i.push(String.fromCharCode.apply(String,s.slice(0,o))),i.join("")):String.fromCharCode.apply(String,s.slice(0,o))}function fe(r,t,e){let n=e,i,s;for(let o=0;o<r.length;++o)i=r.charCodeAt(o),i<128?t[e++]=i:i<2048?(t[e++]=i>>6|192,t[e++]=i&63|128):(i&64512)===55296&&((s=r.charCodeAt(o+1))&64512)===56320?(i=65536+((i&1023)<<10)+(s&1023),++o,t[e++]=i>>18|240,t[e++]=i>>12&63|128,t[e++]=i>>6&63|128,t[e++]=i&63|128):(t[e++]=i>>12|224,t[e++]=i>>6&63|128,t[e++]=i&63|128);return e-n}function D(r,t){return RangeError(`index out of range: ${r.pos} + ${t??1} > ${r.len}`)}function bt(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var de=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=Xe(t),this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,D(this,10);return t}int32(){return this.uint32()|0}sint32(){let t=this.uint32();return t>>>1^-(t&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw D(this,4);return bt(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw D(this,4);return bt(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw D(this,4);let t=er(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw D(this,4);let t=nr(this.buf,this.pos);return this.pos+=8,t}bytes(){let t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw D(this,t);return this.pos+=t,e===n?new Uint8Array(0):this.buf.subarray(e,n)}string(){let t=this.bytes();return or(t,0,t.length)}skip(t){if(typeof t=="number"){if(this.pos+t>this.len)throw D(this,t);this.pos+=t}else do if(this.pos>=this.len)throw D(this);while((this.buf[this.pos++]&128)!==0);return this}skipType(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(t=this.uint32()&7)!==4;)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${t} at offset ${this.pos}`)}return this}readLongVarint(){let t=new L(0,0),e=0;if(this.len-this.pos>4){for(;e<4;++e)if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(this.buf[this.pos]&127)<<28)>>>0,t.hi=(t.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return t;e=0}else{for(;e<3;++e){if(this.pos>=this.len)throw D(this);if(t.lo=(t.lo|(this.buf[this.pos]&127)<<e*7)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(this.buf[this.pos++]&127)<<e*7)>>>0,t}if(this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw D(this);if(t.hi=(t.hi|(this.buf[this.pos]&127)<<e*7+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw D(this,8);let t=bt(this.buf,this.pos+=4),e=bt(this.buf,this.pos+=4);return new L(t,e)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let t=te(this.buf,this.pos);return this.pos+=M(t),t}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function it(r){return new de(r instanceof Uint8Array?r:r.subarray())}function gt(r,t,e){let n=it(r);return t.decode(n,void 0,e)}function pe(r){let t=r??8192,e=t>>>1,n,i=t;return function(o){if(o<1||o>e)return y(o);i+o>t&&(n=y(t),i=0);let a=n.subarray(i,i+=o);return(i&7)!==0&&(i=(i|7)+1),a}}var j=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function me(){}var ge=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},qn=pe();function Wn(r){return globalThis.Buffer!=null?y(r):qn(r)}var ot=class{len;head;tail;states;constructor(){this.len=0,this.head=new j(me,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new j(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new we((t=t>>>0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this}int32(t){return t<0?this._push(wt,10,L.fromNumber(t)):this.uint32(t)}sint32(t){return this.uint32((t<<1^t>>31)>>>0)}uint64(t){let e=L.fromBigInt(t);return this._push(wt,e.length(),e)}uint64Number(t){return this._push(Zt,M(t),t)}uint64String(t){return this.uint64(BigInt(t))}int64(t){return this.uint64(t)}int64Number(t){return this.uint64Number(t)}int64String(t){return this.uint64String(t)}sint64(t){let e=L.fromBigInt(t).zzEncode();return this._push(wt,e.length(),e)}sint64Number(t){let e=L.fromNumber(t).zzEncode();return this._push(wt,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(be,1,t?1:0)}fixed32(t){return this._push(st,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=L.fromBigInt(t);return this._push(st,4,e.lo)._push(st,4,e.hi)}fixed64Number(t){let e=L.fromNumber(t);return this._push(st,4,e.lo)._push(st,4,e.hi)}fixed64String(t){return this.fixed64(BigInt(t))}sfixed64(t){return this.fixed64(t)}sfixed64Number(t){return this.fixed64Number(t)}sfixed64String(t){return this.fixed64String(t)}float(t){return this._push(tr,4,t)}double(t){return this._push(rr,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(be,1,0):this.uint32(e)._push(Hn,e,t)}string(t){let e=sr(t);return e!==0?this.uint32(e)._push(fe,e,t):this._push(be,1,0)}fork(){return this.states=new ge(this),this.head=this.tail=new j(me,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 j(me,0,0),this.len=0),this}ldelim(){let t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=t.next,this.tail=e,this.len+=n),this}finish(){let t=this.head.next,e=Wn(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function be(r,t,e){t[e]=r&255}function Kn(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var we=class extends j{next;constructor(t,e){super(Kn,t,e),this.next=void 0}};function wt(r,t,e){for(;r.hi!==0;)t[e++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)t[e++]=r.lo&127|128,r.lo=r.lo>>>7;t[e++]=r.lo}function st(r,t,e){t[e]=r&255,t[e+1]=r>>>8&255,t[e+2]=r>>>16&255,t[e+3]=r>>>24}function Hn(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(ot.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Xn,t,r),this},ot.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Jn,t,r),this});function Xn(r,t,e){t.set(r,e)}function Jn(r,t,e){r.length<40?fe(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(Q(r),e)}function xe(){return new ot}function xt(r,t){let e=xe();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}function*yt(r,t,e){let n=it(r);yield*t.stream(n,void 0,"$",e)}var Et={VARINT:0,BIT64:1,LENGTH_DELIMITED:2,START_GROUP:3,END_GROUP:4,BIT32:5};function Lt(r,t,e,n,i){return{name:r,type:t,encode:e,decode:n,stream:i}}function ye(r){function t(s){if(r[s.toString()]==null)throw new Error("Invalid enum value");return r[s]}let e=function(o,a){let c=t(o);a.int32(c)},n=function(o){let a=o.int32();return t(a)},i=function*(o){let a=o.int32();yield t(a)};return Lt("enum",Et.VARINT,e,n,i)}function vt(r,t,e){return Lt("message",Et.LENGTH_DELIMITED,r,t,e)}var at;(function(r){let t;r.codec=()=>(t==null&&(t=vt((s,o,a={})=>{a.lengthDelimited!==!1&&o.fork(),s.identifier!=null&&s.identifier.byteLength>0&&(o.uint32(10),o.bytes(s.identifier)),a.lengthDelimited!==!1&&o.ldelim()},(s,o,a={})=>{let c={identifier:S(0)},h=o==null?s.len:s.pos+o;for(;s.pos<h;){let u=s.uint32();u>>>3===1?c.identifier=s.bytes():s.skipType(u&7)}return c},function*(s,o,a,c={}){let h=o==null?s.len:s.pos+o;for(;s.pos<h;){let u=s.uint32();u>>>3===1?yield{field:`${a}.identifier`,value:s.bytes()}:s.skipType(u&7)}})),t);function e(s){return xt(s,r.codec())}r.encode=e;function n(s,o){return gt(s,r.codec(),o)}r.decode=n;function i(s,o){return yt(s,r.codec(),o)}r.stream=i})(at||(at={}));var I;(function(r){let t;(function(a){a.OK="OK",a.NOT_FOUND="NOT_FOUND",a.ERROR="ERROR"})(t=r.StatusCode||(r.StatusCode={}));let e;(function(a){a[a.OK=0]="OK",a[a.NOT_FOUND=1]="NOT_FOUND",a[a.ERROR=2]="ERROR"})(e||(e={})),(function(a){a.codec=()=>ye(e)})(t=r.StatusCode||(r.StatusCode={}));let n;r.codec=()=>(n==null&&(n=vt((a,c,h={})=>{h.lengthDelimited!==!1&&c.fork(),a.status!=null&&e[a.status]!==0&&(c.uint32(8),r.StatusCode.codec().encode(a.status,c)),a.data!=null&&a.data.byteLength>0&&(c.uint32(18),c.bytes(a.data)),h.lengthDelimited!==!1&&c.ldelim()},(a,c,h={})=>{let u={status:t.OK,data:S(0)},l=c==null?a.len:a.pos+c;for(;a.pos<l;){let f=a.uint32();switch(f>>>3){case 1:{u.status=r.StatusCode.codec().decode(a);break}case 2:{u.data=a.bytes();break}default:{a.skipType(f&7);break}}}return u},function*(a,c,h,u={}){let l=c==null?a.len:a.pos+c;for(;a.pos<l;){let f=a.uint32();switch(f>>>3){case 1:{yield{field:`${h}.status`,value:r.StatusCode.codec().decode(a)};break}case 2:{yield{field:`${h}.data`,value:a.bytes()};break}default:{a.skipType(f&7);break}}}})),n);function i(a){return xt(a,r.codec())}r.encode=i;function s(a,c){return gt(a,r.codec(),c)}r.decode=s;function o(a,c){return yt(a,r.codec(),c)}r.stream=o})(I||(I={}));var cr=1e4,St=class{protocol;components;lookupFunctions;started;init;constructor(t,e={}){this.started=!1,this.components=t,this.protocol=`/${e.protocolPrefix??"libp2p"}/${Ze}/${Qe}`,this.lookupFunctions=new Map,this.init=e,this.handleMessage=this.handleMessage.bind(this)}[Symbol.toStringTag]="@libp2p/fetch";async start(){await this.components.registrar.handle(this.protocol,this.handleMessage,{maxInboundStreams:this.init.maxInboundStreams,maxOutboundStreams:this.init.maxOutboundStreams}),this.started=!0}async stop(){await this.components.registrar.unhandle(this.protocol),this.started=!1}isStarted(){return this.started}async fetch(t,e,n={}){if(typeof e=="string"&&(e=Q(e)),n.signal==null){let s=this.init.timeout??cr,o=AbortSignal.timeout(s);n={...n,signal:o}}let i;try{i=await(await this.components.connectionManager.openConnection(t,n)).newStream(this.protocol,n);let o=i.log.newScope("fetch");o.trace("fetch %m",e);let a=ue(i);await a.write({identifier:e},at,n);let c=await a.read(I,n);switch(await i.close(n),c.status){case I.StatusCode.OK:return o.trace("received status OK for %m",e),c.data;case I.StatusCode.NOT_FOUND:{o("received status NOT_FOUND for %m",e);return}case I.StatusCode.ERROR:{o("received status ERROR for %m",e);let h=ee(c.data);throw new ht("Error in fetch protocol response: "+h)}default:throw o("received status unknown for %m",e),new ut("Unknown response status")}}catch(s){throw i?.abort(s),s}}async handleMessage(t){let e=t.log.newScope("fetch"),n=AbortSignal.timeout(this.init.timeout??cr),i=ue(t),s=await i.read(at,{signal:n}),o,a=ee(s.identifier),c=this._getLookupFunction(a);if(c==null){e.trace("sending status ERROR for %m",s.identifier);let h=Q("No lookup function registered for key");o={status:I.StatusCode.ERROR,data:h}}else{e.trace("lookup data with identifier %s",c.prefix);try{let h=await c.fn(s.identifier);h==null?(e.trace("sending status NOT_FOUND for %m",s.identifier),o={status:I.StatusCode.NOT_FOUND,data:new Uint8Array(0)}):(e.trace("sending status OK for %m",s.identifier),o={status:I.StatusCode.OK,data:h})}catch(h){e.error("error during lookup of %m - %e",s.identifier,h);let u=Q(h.message);o={status:I.StatusCode.ERROR,data:u}}}await i.write(o,I,{signal:n}),await t.close({signal:n})}_getLookupFunction(t){for(let e of this.lookupFunctions.keys())if(t.startsWith(e)){let n=this.lookupFunctions.get(e);if(n!=null)return{fn:n,prefix:e}}}registerLookupFunction(t,e){if(this.lookupFunctions.has(t))throw new q(`Fetch protocol handler for key prefix '${t}' already registered`);this.lookupFunctions.set(t,e)}unregisterLookupFunction(t,e){e!=null&&this.lookupFunctions.get(t)!==e||this.lookupFunctions.delete(t)}};function Yn(r={}){return t=>new St(t,r)}return dr(Qn);})();
|
|
3
3
|
return Libp2PFetch}));
|
|
4
4
|
//# sourceMappingURL=index.min.js.map
|