@libp2p/fetch 4.1.0 → 4.1.2-20bfcb3f9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.min.js CHANGED
@@ -1,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 St=Object.defineProperty;var or=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var cr=Object.prototype.hasOwnProperty;var E=(r,t)=>{for(var e in t)St(r,e,{get:t[e],enumerable:!0})},ur=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ar(t))!cr.call(r,i)&&i!==e&&St(r,i,{get:()=>t[i],enumerable:!(n=or(t,i))||n.enumerable});return r};var hr=r=>ur(St({},"__esModule",{value:!0}),r);var Wn={};E(Wn,{fetch:()=>qn});var j=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}};var ct=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}},ut=class extends Error{static name="ProtocolError";constructor(t="Protocol error"){super(t),this.name="ProtocolError"}};var Ct={};E(Ct,{base58btc:()=>O,base58flickr:()=>br});var Xn=new Uint8Array(0);function ye(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 M(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 Ee(r){return new TextEncoder().encode(r)}function Le(r){return new TextDecoder().decode(r)}function lr(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 b=0,_=0,N=0,C=d.length;N!==C&&d[N]===0;)N++,b++;for(var U=(C-N)*u+1>>>0,v=new Uint8Array(U);N!==C;){for(var T=d[N],k=0,A=U-1;(T!==0||k<_)&&A!==-1;A--,k++)T+=256*v[A]>>>0,v[A]=T%a>>>0,T=T/a>>>0;if(T!==0)throw new Error("Non-zero carry");_=k,N++}for(var F=U-_;F!==U&&v[F]===0;)F++;for(var at=c.repeat(b);F<U;++F)at+=r.charAt(v[F]);return at}function f(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var b=0;if(d[b]!==" "){for(var _=0,N=0;d[b]===c;)_++,b++;for(var C=(d.length-b)*h+1>>>0,U=new Uint8Array(C);d[b];){var v=e[d.charCodeAt(b)];if(v===255)return;for(var T=0,k=C-1;(v!==0||T<N)&&k!==-1;k--,T++)v+=a*U[k]>>>0,U[k]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");N=T,b++}if(d[b]!==" "){for(var A=C-N;A!==C&&U[A]===0;)A++;for(var F=new Uint8Array(_+(C-A)),at=_;A!==C;)F[at++]=U[A++];return F}}}function m(d){var b=f(d);if(b)return b;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:f,decode:m}}var fr=lr,dr=fr,Se=dr;var It=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")}},Nt=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 Ie(this,t)}},At=class{decoders;constructor(t){this.decoders=t}or(t){return Ie(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 Ie(r,t){return new At({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Dt=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 It(t,e,n),this.decoder=new Nt(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function q({name:r,prefix:t,encode:e,decode:n}){return new Dt(r,t,e,n)}function B({name:r,prefix:t,alphabet:e}){let{encode:n,decode:i}=Se(e,r);return q({prefix:t,name:r,encode:n,decode:s=>M(i(s))})}function pr(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 mr(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 gr(r){let t={};for(let e=0;e<r.length;++e)t[r[e]]=e;return t}function g({name:r,prefix:t,bitsPerChar:e,alphabet:n}){let i=gr(n);return q({prefix:t,name:r,encode(s){return mr(s,n,e)},decode(s){return pr(s,i,e,r)}})}var O=B({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),br=B({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ut={};E(Ut,{base32:()=>W,base32hex:()=>Er,base32hexpad:()=>vr,base32hexpadupper:()=>Sr,base32hexupper:()=>Lr,base32pad:()=>xr,base32padupper:()=>yr,base32upper:()=>wr,base32z:()=>Ir});var W=g({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),wr=g({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),xr=g({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),yr=g({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Er=g({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Lr=g({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),vr=g({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Sr=g({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Ir=g({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Tt={};E(Tt,{base36:()=>Q,base36upper:()=>Nr});var Q=B({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Nr=B({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ar=De,Ne=128,Dr=127,Cr=~Dr,Ur=Math.pow(2,31);function De(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Ur;)t[e++]=r&255|Ne,r/=128;for(;r&Cr;)t[e++]=r&255|Ne,r>>>=7;return t[e]=r|0,De.bytes=e-n+1,t}var Tr=Ot,Or=128,Ae=127;function Ot(r,n){var e=0,n=n||0,i=0,s=n,o,a=r.length;do{if(s>=a)throw Ot.bytes=0,new RangeError("Could not decode varint");o=r[s++],e+=i<28?(o&Ae)<<i:(o&Ae)*Math.pow(2,i),i+=7}while(o>=Or);return Ot.bytes=s-n,e}var Fr=Math.pow(2,7),Mr=Math.pow(2,14),Rr=Math.pow(2,21),kr=Math.pow(2,28),Br=Math.pow(2,35),Pr=Math.pow(2,42),_r=Math.pow(2,49),Vr=Math.pow(2,56),zr=Math.pow(2,63),$r=function(r){return r<Fr?1:r<Mr?2:r<Rr?3:r<kr?4:r<Br?5:r<Pr?6:r<_r?7:r<Vr?8:r<zr?9:10},Gr={encode:Ar,decode:Tr,encodingLength:$r},jr=Gr,Z=jr;function tt(r,t=0){return[Z.decode(r,t),Z.decode.bytes]}function K(r,t,e=0){return Z.encode(r,t,e),t}function H(r){return Z.encodingLength(r)}function J(r,t){let e=t.byteLength,n=H(r),i=n+H(e),s=new Uint8Array(i+e);return K(r,s,0),K(e,s,n),s.set(t,i),new X(r,e,t,s)}function Ce(r){let t=M(r),[e,n]=tt(t),[i,s]=tt(t.subarray(n)),o=t.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new X(e,i,o,t)}function Ue(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&ye(r.bytes,e.bytes)}}var X=class{code;size;digest;bytes;constructor(t,e,n,i){this.code=t,this.size=e,this.digest=n,this.bytes=i}};function Te(r,t){let{bytes:e,version:n}=r;switch(n){case 0:return Wr(e,Ft(r),t??O.encoder);default:return Kr(e,Ft(r),t??W.encoder)}}var Oe=new WeakMap;function Ft(r){let t=Oe.get(r);if(t==null){let e=new Map;return Oe.set(r,e),e}return t}var lt=class r{code;version;multihash;bytes;"/";constructor(t,e,n,i){this.code=e,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==rt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Hr)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=J(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&&Ue(t.multihash,n.multihash)}toString(t){return Te(this,t)}toJSON(){return{"/":Te(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??Fe(n,i,s.bytes))}else if(e[Xr]===!0){let{version:n,multihash:i,code:s}=e,o=Ce(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!==rt)throw new Error(`Version 0 CID must use dag-pb (code: ${rt}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let i=Fe(t,e,n.bytes);return new r(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,rt,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=M(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 X(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]=tt(t.subarray(e));return e+=f,l},i=n(),s=rt;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]=qr(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 Ft(s).set(n,t),s}};function qr(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 W.prefix:{let e=t??W;return[W.prefix,e.decode(r)]}case Q.prefix:{let e=t??Q;return[Q.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 Wr(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 Kr(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 rt=112,Hr=18;function Fe(r,t,e){let n=H(r),i=n+H(t),s=new Uint8Array(i+e.byteLength);return K(r,s,0),K(t,s,n),s.set(e,i),s}var Xr=Symbol.for("@ipld/js-cid/CID");var Mt={};E(Mt,{identity:()=>Qr});var Me=0,Jr="identity",Re=M;function Yr(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 J(Me,Re(r))}var Qr={code:Me,name:Jr,encode:Re,digest:Yr};function ke(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 S(r=0){return new Uint8Array(r)}function y(r=0){return new Uint8Array(r)}function Rt(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 e}var Pe=Symbol.for("@achingbrain/uint8arraylist");function Be(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 ft(r){return!!r?.[Pe]}var V=class r{bufs;length;[Pe]=!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(ft(n))e+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=e}prepend(...t){this.prependAll(t)}prependAll(t){let e=0;for(let n of t.reverse())if(n instanceof Uint8Array)e+=n.byteLength,this.bufs.unshift(n);else if(ft(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=Be(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Be(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(ft(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 Rt(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:Rt(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(!ft(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(!ke(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 kt={};E(kt,{base10:()=>Zr});var Zr=B({prefix:"9",name:"base10",alphabet:"0123456789"});var Bt={};E(Bt,{base16:()=>tn,base16upper:()=>en});var tn=g({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),en=g({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Pt={};E(Pt,{base2:()=>rn});var rn=g({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var _t={};E(_t,{base256emoji:()=>cn});var _e=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}"),nn=_e.reduce((r,t,e)=>(r[e]=t,r),[]),sn=_e.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function on(r){return r.reduce((t,e)=>(t+=nn[e],t),"")}function an(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let i=sn[n];if(i==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(i)}return new Uint8Array(t)}var cn=q({prefix:"\u{1F680}",name:"base256emoji",encode:on,decode:an});var Vt={};E(Vt,{base64:()=>un,base64pad:()=>hn,base64url:()=>ln,base64urlpad:()=>fn});var un=g({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),hn=g({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ln=g({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),fn=g({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var zt={};E(zt,{base8:()=>dn});var dn=g({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $t={};E($t,{identity:()=>pn});var pn=q({prefix:"\0",name:"identity",encode:r=>Le(r),decode:r=>Ee(r)});var Oi=new TextEncoder,Fi=new TextDecoder;var qt={};E(qt,{sha256:()=>wn,sha512:()=>xn});var bn=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??bn,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?Ve(n,this.code,e?.truncate):n.then(i=>Ve(i,this.code,e?.truncate))}else throw Error("Unknown type, must be binary type")}};function Ve(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 J(t,r)}function $e(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var wn=jt({name:"sha2-256",code:18,encode:$e("SHA-256")}),xn=jt({name:"sha2-512",code:19,encode:$e("SHA-512")});var Wt={...$t,...Pt,...zt,...kt,...Bt,...Ut,...Tt,...Ct,...Vt,..._t},qi={...qt,...Mt};function je(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Ge=je("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Kt=je("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}),yn={utf8:Ge,"utf-8":Ge,hex:Wt.base16,latin1:Kt,ascii:Kt,binary:Kt,...Wt},dt=yn;function Y(r,t="utf8"){let e=dt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Ht(r,t="utf8"){let e=dt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var En=Math.pow(2,7),Ln=Math.pow(2,14),vn=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 R(r){if(r<En)return 1;if(r<Ln)return 2;if(r<vn)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(R(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 Sn(r,t,e=0){switch(R(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 In(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 qe(r,t,e=0){return t==null&&(t=y(R(r))),t instanceof Uint8Array?Zt(r,t,e):Sn(r,t,e)}function We(r,t=0){return r instanceof Uint8Array?te(r,t):In(r,t)}var ee=new Float32Array([-0]),P=new Uint8Array(ee.buffer);function Ke(r,t,e){ee[0]=r,t[e]=P[0],t[e+1]=P[1],t[e+2]=P[2],t[e+3]=P[3]}function He(r,t){return P[0]=r[t],P[1]=r[t+1],P[2]=r[t+2],P[3]=r[t+3],ee[0]}var re=new Float64Array([-0]),x=new Uint8Array(re.buffer);function Xe(r,t,e){re[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 Je(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],re[0]}var An=BigInt(Number.MAX_SAFE_INTEGER),Dn=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 z;if(t<An&&t>Dn)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>Ye&&(i=0n,++n>Ye&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(t){if(t===0)return z;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):z}},z=new L(0,0);z.toBigInt=function(){return 0n};z.zzEncode=z.zzDecode=function(){return this};z.length=function(){return 1};var Ye=4294967296n;function Qe(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 Ze(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 ne(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 pt(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var ie=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,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 pt(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw D(this,4);return pt(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw D(this,4);let t=He(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw D(this,4);let t=Je(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 Ze(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=pt(this.buf,this.pos+=4),e=pt(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+=R(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 nt(r){return new ie(r instanceof Uint8Array?r:r.subarray())}function mt(r,t,e){let n=nt(r);return t.decode(n,void 0,e)}function se(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 $=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function oe(){}var ce=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Cn=se();function Un(r){return globalThis.Buffer!=null?y(r):Cn(r)}var st=class{len;head;tail;states;constructor(){this.len=0,this.head=new $(oe,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new $(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ue((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(gt,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(gt,e.length(),e)}uint64Number(t){return this._push(Zt,R(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(gt,e.length(),e)}sint64Number(t){let e=L.fromNumber(t).zzEncode();return this._push(gt,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(ae,1,t?1:0)}fixed32(t){return this._push(it,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=L.fromBigInt(t);return this._push(it,4,e.lo)._push(it,4,e.hi)}fixed64Number(t){let e=L.fromNumber(t);return this._push(it,4,e.lo)._push(it,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(Ke,4,t)}double(t){return this._push(Xe,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(ae,1,0):this.uint32(e)._push(On,e,t)}string(t){let e=Qe(t);return e!==0?this.uint32(e)._push(ne,e,t):this._push(ae,1,0)}fork(){return this.states=new ce(this),this.head=this.tail=new $(oe,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 $(oe,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=Un(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function ae(r,t,e){t[e]=r&255}function Tn(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var ue=class extends ${next;constructor(t,e){super(Tn,t,e),this.next=void 0}};function gt(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 it(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 On(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(st.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Fn,t,r),this},st.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Mn,t,r),this});function Fn(r,t,e){t.set(r,e)}function Mn(r,t,e){r.length<40?ne(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(Y(r),e)}function he(){return new st}function bt(r,t){let e=he();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}function*wt(r,t,e){let n=nt(r);yield*t.stream(n,void 0,"$",e)}var xt={VARINT:0,BIT64:1,LENGTH_DELIMITED:2,START_GROUP:3,END_GROUP:4,BIT32:5};function yt(r,t,e,n,i){return{name:r,type:t,encode:e,decode:n,stream:i}}function le(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 yt("enum",xt.VARINT,e,n,i)}function Et(r,t,e){return yt("message",xt.LENGTH_DELIMITED,r,t,e)}var fe=class r extends Error{name="TimeoutError";constructor(t,e){super(t,e),Error.captureStackTrace?.(this,r)}},er=r=>r.reason??new DOMException("This operation was aborted.","AbortError");function de(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(er(o));return}if(o&&(c=()=>{f(er(o))},o.addEventListener("abort",c,{once:!0})),r.then(l,f),e===Number.POSITIVE_INFINITY)return;let m=new fe;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 Rn=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 kn(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}=Rn(r),l=async(...m)=>{let d=e.multiArgs?m:m[0];if(e.filter)try{if(!await e.filter(d))return}catch(b){n(),o(b);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=de(i,{milliseconds:e.timeout});return s.cancel=()=>{n(),s.clear()},s}return i}function rr(r,t,e){typeof e=="function"&&(e={filter:e}),e={...e,count:1,resolveImmediately:!1};let n=kn(r,t,e),i=n.then(s=>s[0]);return i.cancel=n.cancel,i}var G=class extends Error{static name="UnexpectedEOFError";name="UnexpectedEOFError"};function Bn(r){return r.reason}async function pe(r,t,e){if(t==null)return r;let n=e?.translateError??Bn;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 _n=4194304,Lt=class extends Error{static name="UnwrappedError";name="UnwrappedError"},ge=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},be=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},we=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function Vn(r){return typeof r?.closeRead=="function"}function zn(r){return typeof r?.close=="function"}function me(r){return Vn(r)?r.remoteWriteStatus!=="writable"&&r.readBufferLength===0:zn(r)?r.status!=="open":!1}function $n(r){return r?.addEventListener!=null&&r?.removeEventListener!=null&&r?.send!=null&&r?.push!=null&&r?.log!=null}function Gn(r,t){let e=t?.maxBufferSize??_n,n=new V,i,s=!1;if(!$n(r))throw new j("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 Lt("Stream was unwrapped");if(me(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 G(`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 pe(i.promise,u?.signal),me(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(me(r))throw r.log.error("closed while reading %d/%d bytes",n.byteLength,f),new G(`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 Lt("Stream was unwrapped");r.send(u)||await rr(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.push(n))),r}};return h}function jn(r,t={}){let e=Gn(r,t);t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=R(t.maxDataLength));let n=t?.lengthDecoder??We,i=t?.lengthEncoder??qe;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 ge("Invalid message length");if(t?.maxLengthLength!=null&&c.byteLength>t.maxLengthLength)throw new we(`Message length length too long - ${c.byteLength} > ${t.maxLengthLength}`);if(a>-1)break}if(t?.maxDataLength!=null&&a>t.maxDataLength)throw new be(`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 G(`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 G(`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 xe(r,t){let e=jn(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 nr="0.0.1",ir="fetch";var ot;(function(r){let t;r.codec=()=>(t==null&&(t=Et((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();switch(u>>>3){case 1:{c.identifier=s.bytes();break}default:{s.skipType(u&7);break}}}return c},function*(s,o,a,c={}){let h=o==null?s.len:s.pos+o;for(;s.pos<h;){let u=s.uint32();switch(u>>>3){case 1:{yield{field:`${a}.identifier`,value:s.bytes()};break}default:{s.skipType(u&7);break}}}})),t);function e(s){return bt(s,r.codec())}r.encode=e;function n(s,o){return mt(s,r.codec(),o)}r.decode=n;function i(s,o){return wt(s,r.codec(),o)}r.stream=i})(ot||(ot={}));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=()=>le(e)})(t=r.StatusCode||(r.StatusCode={}));let n;r.codec=()=>(n==null&&(n=Et((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 bt(a,r.codec())}r.encode=i;function s(a,c){return mt(a,r.codec(),c)}r.decode=s;function o(a,c){return wt(a,r.codec(),c)}r.stream=o})(I||(I={}));var sr=1e4,vt=class{protocol;components;lookupFunctions;started;init;constructor(t,e={}){this.started=!1,this.components=t,this.protocol=`/${e.protocolPrefix??"libp2p"}/${ir}/${nr}`,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=Y(e)),n.signal==null){let s=this.init.timeout??sr,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=xe(i);await a.write({identifier:e},ot,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=Ht(c.data);throw new ut("Error in fetch protocol response: "+h)}default:throw o("received status unknown for %m",e),new ct("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??sr),i=xe(t),s=await i.read(ot,{signal:n}),o,a=Ht(s.identifier),c=this._getLookupFunction(a);if(c==null){e.trace("sending status ERROR for %m",s.identifier);let h=Y("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=Y(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 j(`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 qn(r={}){return t=>new vt(t,r)}return hr(Wn);})();
2
+ "use strict";var Libp2PFetch=(()=>{var St=Object.defineProperty;var or=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var cr=Object.prototype.hasOwnProperty;var E=(r,t)=>{for(var e in t)St(r,e,{get:t[e],enumerable:!0})},ur=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ar(t))!cr.call(r,i)&&i!==e&&St(r,i,{get:()=>t[i],enumerable:!(n=or(t,i))||n.enumerable});return r};var hr=r=>ur(St({},"__esModule",{value:!0}),r);var Wn={};E(Wn,{fetch:()=>qn});var j=class extends Error{static name="InvalidParametersError";constructor(t="Invalid parameters"){super(t),this.name="InvalidParametersError"}};var ct=class extends Error{static name="InvalidMessageError";constructor(t="Invalid message"){super(t),this.name="InvalidMessageError"}},ut=class extends Error{static name="ProtocolError";constructor(t="Protocol error"){super(t),this.name="ProtocolError"}};var Ct={};E(Ct,{base58btc:()=>O,base58flickr:()=>br});var Xn=new Uint8Array(0);function ye(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 M(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 Ee(r){return new TextEncoder().encode(r)}function Le(r){return new TextDecoder().decode(r)}function lr(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 b=0,_=0,N=0,C=d.length;N!==C&&d[N]===0;)N++,b++;for(var U=(C-N)*u+1>>>0,v=new Uint8Array(U);N!==C;){for(var T=d[N],k=0,A=U-1;(T!==0||k<_)&&A!==-1;A--,k++)T+=256*v[A]>>>0,v[A]=T%a>>>0,T=T/a>>>0;if(T!==0)throw new Error("Non-zero carry");_=k,N++}for(var F=U-_;F!==U&&v[F]===0;)F++;for(var at=c.repeat(b);F<U;++F)at+=r.charAt(v[F]);return at}function f(d){if(typeof d!="string")throw new TypeError("Expected String");if(d.length===0)return new Uint8Array;var b=0;if(d[b]!==" "){for(var _=0,N=0;d[b]===c;)_++,b++;for(var C=(d.length-b)*h+1>>>0,U=new Uint8Array(C);d[b];){var v=e[d.charCodeAt(b)];if(v===255)return;for(var T=0,k=C-1;(v!==0||T<N)&&k!==-1;k--,T++)v+=a*U[k]>>>0,U[k]=v%256>>>0,v=v/256>>>0;if(v!==0)throw new Error("Non-zero carry");N=T,b++}if(d[b]!==" "){for(var A=C-N;A!==C&&U[A]===0;)A++;for(var F=new Uint8Array(_+(C-A)),at=_;A!==C;)F[at++]=U[A++];return F}}}function m(d){var b=f(d);if(b)return b;throw new Error(`Non-${t} character`)}return{encode:l,decodeUnsafe:f,decode:m}}var fr=lr,dr=fr,Se=dr;var It=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")}},Nt=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 Ie(this,t)}},At=class{decoders;constructor(t){this.decoders=t}or(t){return Ie(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 Ie(r,t){return new At({...r.decoders??{[r.prefix]:r},...t.decoders??{[t.prefix]:t}})}var Dt=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 It(t,e,n),this.decoder=new Nt(t,e,i)}encode(t){return this.encoder.encode(t)}decode(t){return this.decoder.decode(t)}};function q({name:r,prefix:t,encode:e,decode:n}){return new Dt(r,t,e,n)}function B({name:r,prefix:t,alphabet:e}){let{encode:n,decode:i}=Se(e,r);return q({prefix:t,name:r,encode:n,decode:s=>M(i(s))})}function pr(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 mr(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 gr(r){let t={};for(let e=0;e<r.length;++e)t[r[e]]=e;return t}function g({name:r,prefix:t,bitsPerChar:e,alphabet:n}){let i=gr(n);return q({prefix:t,name:r,encode(s){return mr(s,n,e)},decode(s){return pr(s,i,e,r)}})}var O=B({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),br=B({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ut={};E(Ut,{base32:()=>W,base32hex:()=>Er,base32hexpad:()=>vr,base32hexpadupper:()=>Sr,base32hexupper:()=>Lr,base32pad:()=>xr,base32padupper:()=>yr,base32upper:()=>wr,base32z:()=>Ir});var W=g({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),wr=g({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),xr=g({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),yr=g({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Er=g({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Lr=g({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),vr=g({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Sr=g({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Ir=g({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Tt={};E(Tt,{base36:()=>Q,base36upper:()=>Nr});var Q=B({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Nr=B({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ar=De,Ne=128,Dr=127,Cr=~Dr,Ur=Math.pow(2,31);function De(r,t,e){t=t||[],e=e||0;for(var n=e;r>=Ur;)t[e++]=r&255|Ne,r/=128;for(;r&Cr;)t[e++]=r&255|Ne,r>>>=7;return t[e]=r|0,De.bytes=e-n+1,t}var Tr=Ot,Or=128,Ae=127;function Ot(r,n){var e=0,n=n||0,i=0,s=n,o,a=r.length;do{if(s>=a)throw Ot.bytes=0,new RangeError("Could not decode varint");o=r[s++],e+=i<28?(o&Ae)<<i:(o&Ae)*Math.pow(2,i),i+=7}while(o>=Or);return Ot.bytes=s-n,e}var Fr=Math.pow(2,7),Mr=Math.pow(2,14),Rr=Math.pow(2,21),kr=Math.pow(2,28),Br=Math.pow(2,35),Pr=Math.pow(2,42),_r=Math.pow(2,49),Vr=Math.pow(2,56),zr=Math.pow(2,63),$r=function(r){return r<Fr?1:r<Mr?2:r<Rr?3:r<kr?4:r<Br?5:r<Pr?6:r<_r?7:r<Vr?8:r<zr?9:10},Gr={encode:Ar,decode:Tr,encodingLength:$r},jr=Gr,Z=jr;function tt(r,t=0){return[Z.decode(r,t),Z.decode.bytes]}function K(r,t,e=0){return Z.encode(r,t,e),t}function H(r){return Z.encodingLength(r)}function J(r,t){let e=t.byteLength,n=H(r),i=n+H(e),s=new Uint8Array(i+e);return K(r,s,0),K(e,s,n),s.set(t,i),new X(r,e,t,s)}function Ce(r){let t=M(r),[e,n]=tt(t),[i,s]=tt(t.subarray(n)),o=t.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new X(e,i,o,t)}function Ue(r,t){if(r===t)return!0;{let e=t;return r.code===e.code&&r.size===e.size&&e.bytes instanceof Uint8Array&&ye(r.bytes,e.bytes)}}var X=class{code;size;digest;bytes;constructor(t,e,n,i){this.code=t,this.size=e,this.digest=n,this.bytes=i}};function Te(r,t){let{bytes:e,version:n}=r;return n===0?Wr(e,Ft(r),t??O.encoder):Kr(e,Ft(r),t??W.encoder)}var Oe=new WeakMap;function Ft(r){let t=Oe.get(r);if(t==null){let e=new Map;return Oe.set(r,e),e}return t}var lt=class r{code;version;multihash;bytes;"/";constructor(t,e,n,i){this.code=e,this.version=t,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:t,multihash:e}=this;if(t!==rt)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(e.code!==Hr)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=J(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&&Ue(t.multihash,n.multihash)}toString(t){return Te(this,t)}toJSON(){return{"/":Te(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??Fe(n,i,s.bytes))}else if(e[Xr]===!0){let{version:n,multihash:i,code:s}=e,o=Ce(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!==rt)throw new Error(`Version 0 CID must use dag-pb (code: ${rt}) block encoding`);return new r(t,e,n,n.bytes)}case 1:{let i=Fe(t,e,n.bytes);return new r(t,e,n,i)}default:throw new Error("Invalid version")}}static createV0(t){return r.create(0,rt,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=M(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 X(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]=tt(t.subarray(e));return e+=f,l},i=n(),s=rt;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]=qr(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 Ft(s).set(n,t),s}};function qr(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 W.prefix:{let e=t??W;return[W.prefix,e.decode(r)]}case Q.prefix:{let e=t??Q;return[Q.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 Wr(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 Kr(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 rt=112,Hr=18;function Fe(r,t,e){let n=H(r),i=n+H(t),s=new Uint8Array(i+e.byteLength);return K(r,s,0),K(t,s,n),s.set(e,i),s}var Xr=Symbol.for("@ipld/js-cid/CID");var Mt={};E(Mt,{identity:()=>Qr});var Me=0,Jr="identity",Re=M;function Yr(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 J(Me,Re(r))}var Qr={code:Me,name:Jr,encode:Re,digest:Yr};function ke(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 S(r=0){return new Uint8Array(r)}function y(r=0){return new Uint8Array(r)}function Rt(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 e}var Pe=Symbol.for("@achingbrain/uint8arraylist");function Be(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 ft(r){return!!r?.[Pe]}var V=class r{bufs;length;[Pe]=!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(ft(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(ft(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=Be(this.bufs,t);return e.buf[e.index]}set(t,e){let n=Be(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(ft(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 Rt(n,i)}subarray(t,e){let{bufs:n,length:i}=this._subList(t,e);return n.length===1?n[0]:Rt(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(!ft(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(!ke(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 kt={};E(kt,{base10:()=>Zr});var Zr=B({prefix:"9",name:"base10",alphabet:"0123456789"});var Bt={};E(Bt,{base16:()=>tn,base16upper:()=>en});var tn=g({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),en=g({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Pt={};E(Pt,{base2:()=>rn});var rn=g({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var _t={};E(_t,{base256emoji:()=>cn});var _e=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}"),nn=_e.reduce((r,t,e)=>(r[e]=t,r),[]),sn=_e.reduce((r,t,e)=>{let n=t.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${t}`);return r[n]=e,r},[]);function on(r){return r.reduce((t,e)=>(t+=nn[e],t),"")}function an(r){let t=[];for(let e of r){let n=e.codePointAt(0);if(n==null)throw new Error(`Invalid character: ${e}`);let i=sn[n];if(i==null)throw new Error(`Non-base256emoji character: ${e}`);t.push(i)}return new Uint8Array(t)}var cn=q({prefix:"\u{1F680}",name:"base256emoji",encode:on,decode:an});var Vt={};E(Vt,{base64:()=>un,base64pad:()=>hn,base64url:()=>ln,base64urlpad:()=>fn});var un=g({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),hn=g({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ln=g({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),fn=g({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var zt={};E(zt,{base8:()=>dn});var dn=g({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $t={};E($t,{identity:()=>pn});var pn=q({prefix:"\0",name:"identity",encode:r=>Le(r),decode:r=>Ee(r)});var Oi=new TextEncoder,Fi=new TextDecoder;var qt={};E(qt,{sha256:()=>wn,sha512:()=>xn});var bn=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??bn,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?Ve(n,this.code,e?.truncate):n.then(i=>Ve(i,this.code,e?.truncate))}else throw Error("Unknown type, must be binary type")}};function Ve(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 J(t,r)}function $e(r){return async t=>new Uint8Array(await crypto.subtle.digest(r,t))}var wn=jt({name:"sha2-256",code:18,encode:$e("SHA-256")}),xn=jt({name:"sha2-512",code:19,encode:$e("SHA-512")});var Wt={...$t,...Pt,...zt,...kt,...Bt,...Ut,...Tt,...Ct,...Vt,..._t},qi={...qt,...Mt};function je(r,t,e,n){return{name:r,prefix:t,encoder:{name:r,prefix:t,encode:e},decoder:{decode:n}}}var Ge=je("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Kt=je("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}),yn={utf8:Ge,"utf-8":Ge,hex:Wt.base16,latin1:Kt,ascii:Kt,binary:Kt,...Wt},dt=yn;function Y(r,t="utf8"){let e=dt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.decoder.decode(`${e.prefix}${r}`)}function Ht(r,t="utf8"){let e=dt[t];if(e==null)throw new Error(`Unsupported encoding "${t}"`);return e.encoder.encode(r).substring(1)}var En=Math.pow(2,7),Ln=Math.pow(2,14),vn=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 R(r){if(r<En)return 1;if(r<Ln)return 2;if(r<vn)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(R(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 Sn(r,t,e=0){switch(R(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 In(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 qe(r,t,e=0){return t==null&&(t=y(R(r))),t instanceof Uint8Array?Zt(r,t,e):Sn(r,t,e)}function We(r,t=0){return r instanceof Uint8Array?te(r,t):In(r,t)}var ee=new Float32Array([-0]),P=new Uint8Array(ee.buffer);function Ke(r,t,e){ee[0]=r,t[e]=P[0],t[e+1]=P[1],t[e+2]=P[2],t[e+3]=P[3]}function He(r,t){return P[0]=r[t],P[1]=r[t+1],P[2]=r[t+2],P[3]=r[t+3],ee[0]}var re=new Float64Array([-0]),x=new Uint8Array(re.buffer);function Xe(r,t,e){re[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 Je(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],re[0]}var An=BigInt(Number.MAX_SAFE_INTEGER),Dn=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 z;if(t<An&&t>Dn)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>Ye&&(i=0n,++n>Ye&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(t){if(t===0)return z;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):z}},z=new L(0,0);z.toBigInt=function(){return 0n};z.zzEncode=z.zzDecode=function(){return this};z.length=function(){return 1};var Ye=4294967296n;function Qe(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 Ze(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 ne(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 pt(r,t){return(r[t-4]|r[t-3]<<8|r[t-2]<<16|r[t-1]<<24)>>>0}var ie=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(t){this.buf=t,this.pos=0,this.len=t.length}uint32(){let t=4294967295;if(t=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(t=(t|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(t=(t|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return t;if((this.pos+=5)>this.len)throw this.pos=this.len,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 pt(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw D(this,4);return pt(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw D(this,4);let t=He(this.buf,this.pos);return this.pos+=4,t}double(){if(this.pos+8>this.len)throw D(this,4);let t=Je(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 Ze(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=pt(this.buf,this.pos+=4),e=pt(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+=R(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 nt(r){return new ie(r instanceof Uint8Array?r:r.subarray())}function mt(r,t,e){let n=nt(r);return t.decode(n,void 0,e)}function se(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 $=class{fn;len;next;val;constructor(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}};function oe(){}var ce=class{head;tail;len;next;constructor(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}},Cn=se();function Un(r){return globalThis.Buffer!=null?y(r):Cn(r)}var st=class{len;head;tail;states;constructor(){this.len=0,this.head=new $(oe,0,0),this.tail=this.head,this.states=null}_push(t,e,n){return this.tail=this.tail.next=new $(t,e,n),this.len+=e,this}uint32(t){return this.len+=(this.tail=this.tail.next=new ue((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(gt,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(gt,e.length(),e)}uint64Number(t){return this._push(Zt,R(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(gt,e.length(),e)}sint64Number(t){let e=L.fromNumber(t).zzEncode();return this._push(gt,e.length(),e)}sint64String(t){return this.sint64(BigInt(t))}bool(t){return this._push(ae,1,t?1:0)}fixed32(t){return this._push(it,4,t>>>0)}sfixed32(t){return this.fixed32(t)}fixed64(t){let e=L.fromBigInt(t);return this._push(it,4,e.lo)._push(it,4,e.hi)}fixed64Number(t){let e=L.fromNumber(t);return this._push(it,4,e.lo)._push(it,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(Ke,4,t)}double(t){return this._push(Xe,8,t)}bytes(t){let e=t.length>>>0;return e===0?this._push(ae,1,0):this.uint32(e)._push(On,e,t)}string(t){let e=Qe(t);return e!==0?this.uint32(e)._push(ne,e,t):this._push(ae,1,0)}fork(){return this.states=new ce(this),this.head=this.tail=new $(oe,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 $(oe,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=Un(this.len),n=0;for(;t!=null;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e}};function ae(r,t,e){t[e]=r&255}function Tn(r,t,e){for(;r>127;)t[e++]=r&127|128,r>>>=7;t[e]=r}var ue=class extends ${next;constructor(t,e){super(Tn,t,e),this.next=void 0}};function gt(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 it(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 On(r,t,e){t.set(r,e)}globalThis.Buffer!=null&&(st.prototype.bytes=function(r){let t=r.length>>>0;return this.uint32(t),t>0&&this._push(Fn,t,r),this},st.prototype.string=function(r){let t=globalThis.Buffer.byteLength(r);return this.uint32(t),t>0&&this._push(Mn,t,r),this});function Fn(r,t,e){t.set(r,e)}function Mn(r,t,e){r.length<40?ne(r,t,e):t.utf8Write!=null?t.utf8Write(r,e):t.set(Y(r),e)}function he(){return new st}function bt(r,t){let e=he();return t.encode(r,e,{lengthDelimited:!1}),e.finish()}function*wt(r,t,e){let n=nt(r);yield*t.stream(n,void 0,"$",e)}var xt={VARINT:0,BIT64:1,LENGTH_DELIMITED:2,START_GROUP:3,END_GROUP:4,BIT32:5};function yt(r,t,e,n,i){return{name:r,type:t,encode:e,decode:n,stream:i}}function le(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 yt("enum",xt.VARINT,e,n,i)}function Et(r,t,e){return yt("message",xt.LENGTH_DELIMITED,r,t,e)}var fe=class r extends Error{name="TimeoutError";constructor(t,e){super(t,e),Error.captureStackTrace?.(this,r)}},er=r=>r.reason??new DOMException("This operation was aborted.","AbortError");function de(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(er(o));return}if(o&&(c=()=>{f(er(o))},o.addEventListener("abort",c,{once:!0})),r.then(l,f),e===Number.POSITIVE_INFINITY)return;let m=new fe;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 Rn=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 kn(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}=Rn(r),l=async(...m)=>{let d=e.multiArgs?m:m[0];if(e.filter)try{if(!await e.filter(d))return}catch(b){n(),o(b);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=de(i,{milliseconds:e.timeout});return s.cancel=()=>{n(),s.clear()},s}return i}function rr(r,t,e){typeof e=="function"&&(e={filter:e}),e={...e,count:1,resolveImmediately:!1};let n=kn(r,t,e),i=n.then(s=>s[0]);return i.cancel=n.cancel,i}var G=class extends Error{static name="UnexpectedEOFError";name="UnexpectedEOFError"};function Bn(r){return r.reason}async function pe(r,t,e){if(t==null)return r;let n=e?.translateError??Bn;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 _n=4194304,Lt=class extends Error{static name="UnwrappedError";name="UnwrappedError"},ge=class extends Error{name="InvalidMessageLengthError";code="ERR_INVALID_MSG_LENGTH"},be=class extends Error{name="InvalidDataLengthError";code="ERR_MSG_DATA_TOO_LONG"},we=class extends Error{name="InvalidDataLengthLengthError";code="ERR_MSG_LENGTH_TOO_LONG"};function Vn(r){return typeof r?.closeRead=="function"}function zn(r){return typeof r?.close=="function"}function me(r){return Vn(r)?r.remoteWriteStatus!=="writable"&&r.readBufferLength===0:zn(r)?r.status!=="open":!1}function $n(r){return r?.addEventListener!=null&&r?.removeEventListener!=null&&r?.send!=null&&r?.push!=null&&r?.log!=null}function Gn(r,t){let e=t?.maxBufferSize??_n,n=new V,i,s=!1;if(!$n(r))throw new j("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 Lt("Stream was unwrapped");if(me(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 G(`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 pe(i.promise,u?.signal),me(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(me(r))throw r.log.error("closed while reading %d/%d bytes",n.byteLength,f),new G(`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 Lt("Stream was unwrapped");r.send(u)||await rr(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.push(n))),r}};return h}function jn(r,t={}){let e=Gn(r,t);t.maxDataLength!=null&&t.maxLengthLength==null&&(t.maxLengthLength=R(t.maxDataLength));let n=t?.lengthDecoder??We,i=t?.lengthEncoder??qe;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 ge("Invalid message length");if(t?.maxLengthLength!=null&&c.byteLength>t.maxLengthLength)throw new we(`Message length length too long - ${c.byteLength} > ${t.maxLengthLength}`);if(a>-1)break}if(t?.maxDataLength!=null&&a>t.maxDataLength)throw new be(`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 G(`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 G(`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 xe(r,t){let e=jn(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 nr="0.0.1",ir="fetch";var ot;(function(r){let t;r.codec=()=>(t==null&&(t=Et((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 bt(s,r.codec())}r.encode=e;function n(s,o){return mt(s,r.codec(),o)}r.decode=n;function i(s,o){return wt(s,r.codec(),o)}r.stream=i})(ot||(ot={}));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=()=>le(e)})(t=r.StatusCode||(r.StatusCode={}));let n;r.codec=()=>(n==null&&(n=Et((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 bt(a,r.codec())}r.encode=i;function s(a,c){return mt(a,r.codec(),c)}r.decode=s;function o(a,c){return wt(a,r.codec(),c)}r.stream=o})(I||(I={}));var sr=1e4,vt=class{protocol;components;lookupFunctions;started;init;constructor(t,e={}){this.started=!1,this.components=t,this.protocol=`/${e.protocolPrefix??"libp2p"}/${ir}/${nr}`,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=Y(e)),n.signal==null){let s=this.init.timeout??sr,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=xe(i);await a.write({identifier:e},ot,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=Ht(c.data);throw new ut("Error in fetch protocol response: "+h)}default:throw o("received status unknown for %m",e),new ct("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??sr),i=xe(t),s=await i.read(ot,{signal:n}),o,a=Ht(s.identifier),c=this._getLookupFunction(a);if(c==null){e.trace("sending status ERROR for %m",s.identifier);let h=Y("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=Y(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 j(`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 qn(r={}){return t=>new vt(t,r)}return hr(Wn);})();
3
3
  return Libp2PFetch}));
4
4
  //# sourceMappingURL=index.min.js.map