@libp2p/kad-dht 12.1.3 → 12.1.4
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.min.js +1 -1
- package/dist/src/query/events.js +2 -2
- package/dist/src/query/events.js.map +1 -1
- package/package.json +13 -13
- package/src/query/events.ts +2 -2
package/dist/index.min.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PKadDht = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
2
|
-
"use strict";var Libp2PKadDht=(()=>{var r5=Object.create;var jn=Object.defineProperty;var n5=Object.getOwnPropertyDescriptor;var i5=Object.getOwnPropertyNames;var s5=Object.getPrototypeOf,o5=Object.prototype.hasOwnProperty;var ln=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),ue=(r,e)=>{for(var t in e)jn(r,t,{get:e[t],enumerable:!0})},g2=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of i5(e))!o5.call(r,i)&&i!==t&&jn(r,i,{get:()=>e[i],enumerable:!(n=n5(e,i))||n.enumerable});return r};var un=(r,e,t)=>(t=r!=null?r5(s5(r)):{},g2(e||!r||!r.__esModule?jn(t,"default",{value:r,enumerable:!0}):t,r)),a5=r=>g2(jn({},"__esModule",{value:!0}),r);var p0=ln(An=>{(function(){var r,e,t,n,i,s,o,a;a=function(c){var l,u,f,h;return l=(c&255<<24)>>>24,u=(c&255<<16)>>>16,f=(c&65280)>>>8,h=c&255,[l,u,f,h].join(".")},o=function(c){var l,u,f,h,m,g;for(l=[],f=h=0;h<=3&&c.length!==0;f=++h){if(f>0){if(c[0]!==".")throw new Error("Invalid IP");c=c.substring(1)}g=e(c),m=g[0],u=g[1],c=c.substring(u),l.push(m)}if(c.length!==0)throw new Error("Invalid IP");switch(l.length){case 1:if(l[0]>4294967295)throw new Error("Invalid IP");return l[0]>>>0;case 2:if(l[0]>255||l[1]>16777215)throw new Error("Invalid IP");return(l[0]<<24|l[1])>>>0;case 3:if(l[0]>255||l[1]>255||l[2]>65535)throw new Error("Invalid IP");return(l[0]<<24|l[1]<<16|l[2])>>>0;case 4:if(l[0]>255||l[1]>255||l[2]>255||l[3]>255)throw new Error("Invalid IP");return(l[0]<<24|l[1]<<16|l[2]<<8|l[3])>>>0;default:throw new Error("Invalid IP")}},t=function(c){return c.charCodeAt(0)},n=t("0"),s=t("a"),i=t("A"),e=function(c){var l,u,f,h,m;for(h=0,l=10,u="9",f=0,c.length>1&&c[f]==="0"&&(c[f+1]==="x"||c[f+1]==="X"?(f+=2,l=16):"0"<=c[f+1]&&c[f+1]<="9"&&(f++,l=8,u="7")),m=f;f<c.length;){if("0"<=c[f]&&c[f]<=u)h=h*l+(t(c[f])-n)>>>0;else if(l===16)if("a"<=c[f]&&c[f]<="f")h=h*l+(10+t(c[f])-s)>>>0;else if("A"<=c[f]&&c[f]<="F")h=h*l+(10+t(c[f])-i)>>>0;else break;else break;if(h>4294967295)throw new Error("too large");f++}if(f===m)throw new Error("empty octet");return[h,f]},r=function(){function c(l,u){var f,h,m,g;if(typeof l!="string")throw new Error("Missing `net' parameter");if(u||(g=l.split("/",2),l=g[0],u=g[1]),u||(u=32),typeof u=="string"&&u.indexOf(".")>-1){try{this.maskLong=o(u)}catch(d){throw f=d,new Error("Invalid mask: "+u)}for(h=m=32;m>=0;h=--m)if(this.maskLong===4294967295<<32-h>>>0){this.bitmask=h;break}}else if(u||u===0)this.bitmask=parseInt(u,10),this.maskLong=0,this.bitmask>0&&(this.maskLong=4294967295<<32-this.bitmask>>>0);else throw new Error("Invalid mask: empty");try{this.netLong=(o(l)&this.maskLong)>>>0}catch(d){throw f=d,new Error("Invalid net address: "+l)}if(!(this.bitmask<=32))throw new Error("Invalid mask for ip4: "+u);this.size=Math.pow(2,32-this.bitmask),this.base=a(this.netLong),this.mask=a(this.maskLong),this.hostmask=a(~this.maskLong),this.first=this.bitmask<=30?a(this.netLong+1):this.base,this.last=this.bitmask<=30?a(this.netLong+this.size-2):a(this.netLong+this.size-1),this.broadcast=this.bitmask<=30?a(this.netLong+this.size-1):void 0}return c.prototype.contains=function(l){return typeof l=="string"&&(l.indexOf("/")>0||l.split(".").length!==4)&&(l=new c(l)),l instanceof c?this.contains(l.base)&&this.contains(l.broadcast||l.last):(o(l)&this.maskLong)>>>0===(this.netLong&this.maskLong)>>>0},c.prototype.next=function(l){return l==null&&(l=1),new c(a(this.netLong+this.size*l),this.mask)},c.prototype.forEach=function(l){var u,f,h;for(h=o(this.first),f=o(this.last),u=0;h<=f;)l(a(h),h,u),u++,h++},c.prototype.toString=function(){return this.base+"/"+this.bitmask},c}(),An.ip2long=o,An.long2ip=a,An.Netmask=r}).call(An)});var o3=ln(Wr=>{"use strict";var E8="[object ArrayBuffer]",It=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===E8}static toArrayBuffer(e){return this.isArrayBuffer(e)?e:e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t)return e;if(this.isArrayBuffer(e))return new t(e);if(this.isArrayBufferView(e))return new t(e.buffer,e.byteOffset,e.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){let n=r.toUint8Array(e),i=r.toUint8Array(t);if(n.length!==i.byteLength)return!1;for(let s=0;s<n.length;s++)if(n[s]!==i[s])return!1;return!0}static concat(...e){let t;Array.isArray(e[0])&&!(e[1]instanceof Function)||Array.isArray(e[0])&&e[1]instanceof Function?t=e[0]:e[e.length-1]instanceof Function?t=e.slice(0,e.length-1):t=e;let n=0;for(let o of t)n+=o.byteLength;let i=new Uint8Array(n),s=0;for(let o of t){let a=this.toUint8Array(o);i.set(a,s),s+=a.length}return e[e.length-1]instanceof Function?this.toView(i,e[e.length-1]):i.buffer}},xo="string",A8=/^[0-9a-f]+$/i,B8=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,I8=/^[a-zA-Z0-9-_]+$/,S1=class{static fromString(e){let t=unescape(encodeURIComponent(e)),n=new Uint8Array(t.length);for(let i=0;i<t.length;i++)n[i]=t.charCodeAt(i);return n.buffer}static toString(e){let t=It.toUint8Array(e),n="";for(let s=0;s<t.length;s++)n+=String.fromCharCode(t[s]);return decodeURIComponent(escape(n))}},Ge=class{static toString(e,t=!1){let n=It.toArrayBuffer(e),i=new DataView(n),s="";for(let o=0;o<n.byteLength;o+=2){let a=i.getUint16(o,t);s+=String.fromCharCode(a)}return s}static fromString(e,t=!1){let n=new ArrayBuffer(e.length*2),i=new DataView(n);for(let s=0;s<e.length;s++)i.setUint16(s*2,e.charCodeAt(s),t);return n}},k1=class r{static isHex(e){return typeof e===xo&&A8.test(e)}static isBase64(e){return typeof e===xo&&B8.test(e)}static isBase64Url(e){return typeof e===xo&&I8.test(e)}static ToString(e,t="utf8"){let n=It.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return Ge.toString(n,!0);case"utf16":case"utf16be":return Ge.toString(n);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e)return new ArrayBuffer(0);switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return Ge.fromString(e,!0);case"utf16":case"utf16be":return Ge.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=It.toUint8Array(e);if(typeof btoa<"u"){let n=this.ToString(t,"binary");return btoa(n)}else return Buffer.from(t).toString("base64")}static FromBase64(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64(t))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(t)):new Uint8Array(Buffer.from(t,"base64")).buffer}static FromBase64Url(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64Url(t))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return S1.fromString(e);case"utf16":case"utf16be":return Ge.fromString(e);case"utf16le":case"usc2":return Ge.fromString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return S1.toString(e);case"utf16":case"utf16be":return Ge.toString(e);case"utf16le":case"usc2":return Ge.toString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){let t=e.length,n=new Uint8Array(t);for(let i=0;i<t;i++)n[i]=e.charCodeAt(i);return n.buffer}static ToBinary(e){let t=It.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return n}static ToHex(e){let t=It.toUint8Array(e),n="",i=t.length;for(let s=0;s<i;s++){let o=t[s];o<16&&(n+="0"),n+=o.toString(16)}return n}static FromHex(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isHex(t))throw new TypeError("Argument 'hexString' is not HEX encoded");t.length%2&&(t=`0${t}`);let n=new Uint8Array(t.length/2);for(let i=0;i<t.length;i=i+2){let s=t.slice(i,i+2);n[i/2]=parseInt(s,16)}return n.buffer}static ToUtf16String(e,t=!1){return Ge.toString(e,t)}static FromUtf16String(e,t=!1){return Ge.fromString(e,t)}static Base64Padding(e){let t=4-e.length%4;if(t<4)for(let n=0;n<t;n++)e+="=";return e}static formatString(e){return e?.replace(/[\n\r\t ]/g,"")||""}};k1.DEFAULT_UTF8_ENCODING="utf8";function S8(r,...e){let t=arguments[0];for(let n=1;n<arguments.length;n++){let i=arguments[n];for(let s in i)t[s]=i[s]}return t}function k8(...r){let e=r.map(i=>i.byteLength).reduce((i,s)=>i+s),t=new Uint8Array(e),n=0;return r.map(i=>new Uint8Array(i)).forEach(i=>{for(let s of i)t[n++]=s}),t.buffer}function R8(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let i=0;i<r.byteLength;i++)if(t[i]!==n[i])return!1;return!0}Wr.BufferSourceConverter=It;Wr.Convert=k1;Wr.assign=S8;Wr.combine=k8;Wr.isEqual=R8});var N4=ln(($g,_4)=>{_4.exports=function(r){if(!r)throw Error("hashlru must have a max value, of type number, greater than 0");var e=0,t=Object.create(null),n=Object.create(null);function i(s,o){t[s]=o,e++,e>=r&&(e=0,n=t,t=Object.create(null))}return{has:function(s){return t[s]!==void 0||n[s]!==void 0},remove:function(s){t[s]!==void 0&&(t[s]=void 0),n[s]!==void 0&&(n[s]=void 0)},get:function(s){var o=t[s];if(o!==void 0)return o;if((o=n[s])!==void 0)return i(s,o),o},set:function(s,o){t[s]!==void 0?t[s]=o:i(s,o)},clear:function(){t=Object.create(null),n=Object.create(null)}}}});var P4=ln((zg,Xo)=>{"use strict";var C7=Object.prototype.hasOwnProperty,Ne="~";function Mn(){}Object.create&&(Mn.prototype=Object.create(null),new Mn().__proto__||(Ne=!1));function D7(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function L4(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var s=new D7(t,n||r,i),o=Ne?Ne+e:e;return r._events[o]?r._events[o].fn?r._events[o]=[r._events[o],s]:r._events[o].push(s):(r._events[o]=s,r._eventsCount++),r}function Ii(r,e){--r._eventsCount===0?r._events=new Mn:delete r._events[e]}function Te(){this._events=new Mn,this._eventsCount=0}Te.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)C7.call(t,n)&&e.push(Ne?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Te.prototype.listeners=function(e){var t=Ne?Ne+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,s=n.length,o=new Array(s);i<s;i++)o[i]=n[i].fn;return o};Te.prototype.listenerCount=function(e){var t=Ne?Ne+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Te.prototype.emit=function(e,t,n,i,s,o){var a=Ne?Ne+e:e;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,u,f;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,s),!0;case 6:return c.fn.call(c.context,t,n,i,s,o),!0}for(f=1,u=new Array(l-1);f<l;f++)u[f-1]=arguments[f];c.fn.apply(c.context,u)}else{var h=c.length,m;for(f=0;f<h;f++)switch(c[f].once&&this.removeListener(e,c[f].fn,void 0,!0),l){case 1:c[f].fn.call(c[f].context);break;case 2:c[f].fn.call(c[f].context,t);break;case 3:c[f].fn.call(c[f].context,t,n);break;case 4:c[f].fn.call(c[f].context,t,n,i);break;default:if(!u)for(m=1,u=new Array(l-1);m<l;m++)u[m-1]=arguments[m];c[f].fn.apply(c[f].context,u)}}return!0};Te.prototype.on=function(e,t,n){return L4(this,e,t,n,!1)};Te.prototype.once=function(e,t,n){return L4(this,e,t,n,!0)};Te.prototype.removeListener=function(e,t,n,i){var s=Ne?Ne+e:e;if(!this._events[s])return this;if(!t)return Ii(this,s),this;var o=this._events[s];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&Ii(this,s);else{for(var a=0,c=[],l=o.length;a<l;a++)(o[a].fn!==t||i&&!o[a].once||n&&o[a].context!==n)&&c.push(o[a]);c.length?this._events[s]=c.length===1?c[0]:c:Ii(this,s)}return this};Te.prototype.removeAllListeners=function(e){var t;return e?(t=Ne?Ne+e:e,this._events[t]&&Ii(this,t)):(this._events=new Mn,this._eventsCount=0),this};Te.prototype.off=Te.prototype.removeListener;Te.prototype.addListener=Te.prototype.on;Te.prefixed=Ne;Te.EventEmitter=Te;typeof Xo<"u"&&(Xo.exports=Te)});var j4=ln((Ly,G4)=>{"use strict";function z4(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function ec(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return z4(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),z4(new i,t)}}G4.exports=ec});var ac={};ue(ac,{EventTypes:()=>o2,MessageType:()=>F,Record:()=>me,kadDHT:()=>oc,passthroughMapper:()=>b0,removePrivateAddressesMapper:()=>f1,removePublicAddressesMapper:()=>y0});var m2=Symbol.for("@libp2p/content-routing");var y2=Symbol.for("@libp2p/peer-discovery");var Qi=Symbol.for("@libp2p/peer-id");var b2=Symbol.for("@libp2p/peer-routing");var Pt=class r extends Error{code;type;constructor(e="The operation was aborted"){super(e),this.name="AbortError",this.code=r.code,this.type=r.type}static code="ABORT_ERR";static type="aborted"},x=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var Ee=(r,...e)=>{try{[...e]}catch{}};var Le=class extends EventTarget{#e=new Map;constructor(){super(),Ee(1/0,this)}listenerCount(e){let t=this.#e.get(e);return t==null?0:t.length}addEventListener(e,t,n){super.addEventListener(e,t,n);let i=this.#e.get(e);i==null&&(i=[],this.#e.set(e,i)),i.push({callback:t,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,t,n){super.removeEventListener(e.toString(),t??null,n);let i=this.#e.get(e);i!=null&&(i=i.filter(({callback:s})=>s!==t),this.#e.set(e,i))}dispatchEvent(e){let t=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(e.type,n)),t}safeDispatchEvent(e,t={}){return this.dispatchEvent(new De(e,t))}},Xi=class extends Event{detail;constructor(e,t){super(e,t),this.detail=t?.detail}},De=globalThis.CustomEvent??Xi;function w2(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function v2(...r){let e=[];for(let t of r)w2(t)&&e.push(t);await Promise.all(e.map(async t=>{t.beforeStart!=null&&await t.beforeStart()})),await Promise.all(e.map(async t=>{await t.start()})),await Promise.all(e.map(async t=>{t.afterStart!=null&&await t.afterStart()}))}async function x2(...r){let e=[];for(let t of r)w2(t)&&e.push(t);await Promise.all(e.map(async t=>{t.beforeStop!=null&&await t.beforeStop()})),await Promise.all(e.map(async t=>{await t.stop()})),await Promise.all(e.map(async t=>{t.afterStop!=null&&await t.afterStop()}))}var E2=Symbol.for("@libp2p/service-capabilities"),A2=Symbol.for("@libp2p/service-dependencies");function c5(r){return r[Symbol.asyncIterator]!=null}function l5(r){if(c5(r))return(async()=>{for await(let e of r);})();for(let e of r);}var Ji=l5;function fe(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var B2="/ipfs/kad/1.0.0",I2="/dht/record",es="/dht/provider";function Pe(r=0){return new Uint8Array(r)}function be(r=0){return new Uint8Array(r)}var u5=Math.pow(2,7),f5=Math.pow(2,14),h5=Math.pow(2,21),ts=Math.pow(2,28),rs=Math.pow(2,35),ns=Math.pow(2,42),is=Math.pow(2,49),Y=128,Ie=127;function he(r){if(r<u5)return 1;if(r<f5)return 2;if(r<h5)return 3;if(r<ts)return 4;if(r<rs)return 5;if(r<ns)return 6;if(r<is)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ss(r,e,t=0){switch(he(r)){case 8:e[t++]=r&255|Y,r/=128;case 7:e[t++]=r&255|Y,r/=128;case 6:e[t++]=r&255|Y,r/=128;case 5:e[t++]=r&255|Y,r/=128;case 4:e[t++]=r&255|Y,r>>>=7;case 3:e[t++]=r&255|Y,r>>>=7;case 2:e[t++]=r&255|Y,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function d5(r,e,t=0){switch(he(r)){case 8:e.set(t++,r&255|Y),r/=128;case 7:e.set(t++,r&255|Y),r/=128;case 6:e.set(t++,r&255|Y),r/=128;case 5:e.set(t++,r&255|Y),r/=128;case 4:e.set(t++,r&255|Y),r>>>=7;case 3:e.set(t++,r&255|Y),r>>>=7;case 2:e.set(t++,r&255|Y),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function os(r,e){let t=r[e],n=0;if(n+=t&Ie,t<Y||(t=r[e+1],n+=(t&Ie)<<7,t<Y)||(t=r[e+2],n+=(t&Ie)<<14,t<Y)||(t=r[e+3],n+=(t&Ie)<<21,t<Y)||(t=r[e+4],n+=(t&Ie)*ts,t<Y)||(t=r[e+5],n+=(t&Ie)*rs,t<Y)||(t=r[e+6],n+=(t&Ie)*ns,t<Y)||(t=r[e+7],n+=(t&Ie)*is,t<Y))return n;throw new RangeError("Could not decode varint")}function p5(r,e){let t=r.get(e),n=0;if(n+=t&Ie,t<Y||(t=r.get(e+1),n+=(t&Ie)<<7,t<Y)||(t=r.get(e+2),n+=(t&Ie)<<14,t<Y)||(t=r.get(e+3),n+=(t&Ie)<<21,t<Y)||(t=r.get(e+4),n+=(t&Ie)*ts,t<Y)||(t=r.get(e+5),n+=(t&Ie)*rs,t<Y)||(t=r.get(e+6),n+=(t&Ie)*ns,t<Y)||(t=r.get(e+7),n+=(t&Ie)*is,t<Y))return n;throw new RangeError("Could not decode varint")}function Ke(r,e,t=0){return e==null&&(e=be(he(r))),e instanceof Uint8Array?ss(r,e,t):d5(r,e,t)}function Ue(r,e=0){return r instanceof Uint8Array?os(r,e):p5(r,e)}var as=new Float32Array([-0]),Ct=new Uint8Array(as.buffer);function S2(r,e,t){as[0]=r,e[t]=Ct[0],e[t+1]=Ct[1],e[t+2]=Ct[2],e[t+3]=Ct[3]}function k2(r,e){return Ct[0]=r[e],Ct[1]=r[e+1],Ct[2]=r[e+2],Ct[3]=r[e+3],as[0]}var cs=new Float64Array([-0]),Se=new Uint8Array(cs.buffer);function R2(r,e,t){cs[0]=r,e[t]=Se[0],e[t+1]=Se[1],e[t+2]=Se[2],e[t+3]=Se[3],e[t+4]=Se[4],e[t+5]=Se[5],e[t+6]=Se[6],e[t+7]=Se[7]}function T2(r,e){return Se[0]=r[e],Se[1]=r[e+1],Se[2]=r[e+2],Se[3]=r[e+3],Se[4]=r[e+4],Se[5]=r[e+5],Se[6]=r[e+6],Se[7]=r[e+7],cs[0]}var g5=BigInt(Number.MAX_SAFE_INTEGER),m5=BigInt(Number.MIN_SAFE_INTEGER),Oe=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return tr;if(e<g5&&e>m5)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>_2&&(i=0n,++n>_2&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return tr;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):tr}},tr=new Oe(0,0);tr.toBigInt=function(){return 0n};tr.zzEncode=tr.zzDecode=function(){return this};tr.length=function(){return 1};var _2=4294967296n;function N2(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function L2(r,e,t){if(t-e<1)return"";let i,s=[],o=0,a;for(;e<t;)a=r[e++],a<128?s[o++]=a:a>191&&a<224?s[o++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,s[o++]=55296+(a>>10),s[o++]=56320+(a&1023)):s[o++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&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 ls(r,e,t){let n=t,i,s;for(let o=0;o<r.length;++o)i=r.charCodeAt(o),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((s=r.charCodeAt(o+1))&64512)===56320?(i=65536+((i&1023)<<10)+(s&1023),++o,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function Ye(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Yn(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var us=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Ye(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Ye(this,4);return Yn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Ye(this,4);return Yn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Ye(this,4);let e=k2(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Ye(this,4);let e=T2(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw Ye(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return L2(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Ye(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Ye(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new Oe(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Ye(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw Ye(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Ye(this,8);let e=Yn(this.buf,this.pos+=4),t=Yn(this.buf,this.pos+=4);return new Oe(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=os(this.buf,this.pos);return this.pos+=he(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function fs(r){return new us(r instanceof Uint8Array?r:r.subarray())}function nt(r,e,t){let n=fs(r);return e.decode(n,void 0,t)}var ms={};ue(ms,{base10:()=>E5});var e9=new Uint8Array(0);function C2(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function pt(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 D2(r){return new TextEncoder().encode(r)}function U2(r){return new TextDecoder().decode(r)}function y5(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var s=r.charAt(i),o=s.charCodeAt(0);if(t[o]!==255)throw new TypeError(s+" is ambiguous");t[o]=i}var a=r.length,c=r.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function f(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var d=0,p=0,y=0,v=g.length;y!==v&&g[y]===0;)y++,d++;for(var b=(v-y)*u+1>>>0,S=new Uint8Array(b);y!==v;){for(var E=g[y],I=0,T=b-1;(E!==0||I<p)&&T!==-1;T--,I++)E+=256*S[T]>>>0,S[T]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");p=I,y++}for(var _=b-p;_!==b&&S[_]===0;)_++;for(var j=c.repeat(d);_<b;++_)j+=r.charAt(S[_]);return j}function h(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var d=0;if(g[d]!==" "){for(var p=0,y=0;g[d]===c;)p++,d++;for(var v=(g.length-d)*l+1>>>0,b=new Uint8Array(v);g[d];){var S=t[g.charCodeAt(d)];if(S===255)return;for(var E=0,I=v-1;(S!==0||E<y)&&I!==-1;I--,E++)S+=a*b[I]>>>0,b[I]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");y=E,d++}if(g[d]!==" "){for(var T=v-y;T!==v&&b[T]===0;)T++;for(var _=new Uint8Array(p+(v-T)),j=p;T!==v;)_[j++]=b[T++];return _}}}function m(g){var d=h(g);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:m}}var b5=y5,w5=b5,V2=w5;var hs=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},ds=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return M2(this,e)}},ps=class{decoders;constructor(e){this.decoders=e}or(e){return M2(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function M2(r,e){return new ps({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var gs=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new hs(e,t,n),this.decoder=new ds(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function wr({name:r,prefix:e,encode:t,decode:n}){return new gs(r,e,t,n)}function Dt({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=V2(t,r);return wr({prefix:e,name:r,encode:n,decode:s=>pt(i(s))})}function v5(r,e,t,n){let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let s=r.length;for(;r[s-1]==="=";)--s;let o=new Uint8Array(s*t/8|0),a=0,c=0,l=0;for(let u=0;u<s;++u){let f=i[r[u]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|f,a+=t,a>=8&&(a-=8,o[l++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o}function x5(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,s="",o=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],o+=8;o>t;)o-=t,s+=e[i&a>>o];if(o!==0&&(s+=e[i&a<<t-o]),n)for(;s.length*t&7;)s+="=";return s}function se({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return wr({prefix:e,name:r,encode(i){return x5(i,n,t)},decode(i){return v5(i,n,t,r)}})}var E5=Dt({prefix:"9",name:"base10",alphabet:"0123456789"});var ys={};ue(ys,{base16:()=>A5,base16upper:()=>B5});var A5=se({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),B5=se({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var bs={};ue(bs,{base2:()=>I5});var I5=se({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ws={};ue(ws,{base256emoji:()=>_5});var F2=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}"),S5=F2.reduce((r,e,t)=>(r[t]=e,r),[]),k5=F2.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function R5(r){return r.reduce((e,t)=>(e+=S5[t],e),"")}function T5(r){let e=[];for(let t of r){let n=k5[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var _5=wr({prefix:"\u{1F680}",name:"base256emoji",encode:R5,decode:T5});var vs={};ue(vs,{base32:()=>gt,base32hex:()=>C5,base32hexpad:()=>U5,base32hexpadupper:()=>O5,base32hexupper:()=>D5,base32pad:()=>L5,base32padupper:()=>P5,base32upper:()=>N5,base32z:()=>V5});var gt=se({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),N5=se({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),L5=se({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),P5=se({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),C5=se({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),D5=se({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),U5=se({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),O5=se({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),V5=se({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var xs={};ue(xs,{base36:()=>M5,base36upper:()=>F5});var M5=Dt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),F5=Dt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Es={};ue(Es,{base58btc:()=>ge,base58flickr:()=>H5});var ge=Dt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),H5=Dt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var As={};ue(As,{base64:()=>fn,base64pad:()=>K5,base64url:()=>q5,base64urlpad:()=>$5});var fn=se({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),K5=se({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),q5=se({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),$5=se({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Bs={};ue(Bs,{base8:()=>z5});var z5=se({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Is={};ue(Is,{identity:()=>G5});var G5=wr({prefix:"\0",name:"identity",encode:r=>U2(r),decode:r=>D2(r)});var m9=new TextEncoder,y9=new TextDecoder;var ks={};ue(ks,{identity:()=>mt});var W5=q2,H2=128,Z5=127,Q5=~Z5,X5=Math.pow(2,31);function q2(r,e,t){e=e||[],t=t||0;for(var n=t;r>=X5;)e[t++]=r&255|H2,r/=128;for(;r&Q5;)e[t++]=r&255|H2,r>>>=7;return e[t]=r|0,q2.bytes=t-n+1,e}var J5=Ss,ea=128,K2=127;function Ss(r,n){var t=0,n=n||0,i=0,s=n,o,a=r.length;do{if(s>=a)throw Ss.bytes=0,new RangeError("Could not decode varint");o=r[s++],t+=i<28?(o&K2)<<i:(o&K2)*Math.pow(2,i),i+=7}while(o>=ea);return Ss.bytes=s-n,t}var ta=Math.pow(2,7),ra=Math.pow(2,14),na=Math.pow(2,21),ia=Math.pow(2,28),sa=Math.pow(2,35),oa=Math.pow(2,42),aa=Math.pow(2,49),ca=Math.pow(2,56),la=Math.pow(2,63),ua=function(r){return r<ta?1:r<ra?2:r<na?3:r<ia?4:r<sa?5:r<oa?6:r<aa?7:r<ca?8:r<la?9:10},fa={encode:W5,decode:J5,encodingLength:ua},ha=fa,hn=ha;function dn(r,e=0){return[hn.decode(r,e),hn.decode.bytes]}function vr(r,e,t=0){return hn.encode(r,e,t),e}function xr(r){return hn.encodingLength(r)}function it(r,e){let t=e.byteLength,n=xr(r),i=n+xr(t),s=new Uint8Array(i+t);return vr(r,s,0),vr(t,s,n),s.set(e,i),new Er(r,t,e,s)}function rr(r){let e=pt(r),[t,n]=dn(e),[i,s]=dn(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Er(t,i,o,e)}function $2(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&C2(r.bytes,t.bytes)}}var Er=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};var z2=0,da="identity",G2=pt;function pa(r){return it(z2,G2(r))}var mt={code:z2,name:da,encode:G2,digest:pa};var _s={};ue(_s,{sha256:()=>ne,sha512:()=>ga});function Ts({name:r,code:e,encode:t}){return new Rs(r,e,t)}var Rs=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?it(this.code,t):t.then(n=>it(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Y2(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ne=Ts({name:"sha2-256",code:18,encode:Y2("SHA-256")}),ga=Ts({name:"sha2-512",code:19,encode:Y2("SHA-512")});function W2(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return ya(t,Ns(r),e??ge.encoder);default:return ba(t,Ns(r),e??gt.encoder)}}var Z2=new WeakMap;function Ns(r){let e=Z2.get(r);if(e==null){let t=new Map;return Z2.set(r,t),t}return e}var ke=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==pn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==wa)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=it(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&$2(e.multihash,n.multihash)}toString(e){return W2(this,e)}toJSON(){return{"/":W2(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:s,bytes:o}=t;return new r(n,i,s,o??Q2(n,i,s.bytes))}else if(t[va]===!0){let{version:n,multihash:i,code:s}=t,o=rr(i);return r.create(n,s,o)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==pn)throw new Error(`Version 0 CID must use dag-pb (code: ${pn}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=Q2(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,pn,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=pt(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let s=i.subarray(t.multihashSize-t.digestSize),o=new Er(t.multihashCode,t.digestSize,s,i);return[t.version===0?r.createV0(o):r.createV1(t.codec,o),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[f,h]=dn(e.subarray(t));return t+=h,f},i=n(),s=pn;if(i===18?(i=0,t=0):s=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let o=t,a=n(),c=n(),l=t+c,u=l-o;return{version:i,codec:s,multihashCode:a,digestSize:c,multihashSize:u,size:l}}static parse(e,t){let[n,i]=ma(e,t),s=r.decode(i);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ns(s).set(n,e),s}};function ma(r,e){switch(r[0]){case"Q":{let t=e??ge;return[ge.prefix,t.decode(`${ge.prefix}${r}`)]}case ge.prefix:{let t=e??ge;return[ge.prefix,t.decode(r)]}case gt.prefix:{let t=e??gt;return[gt.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function ya(r,e,t){let{prefix:n}=t;if(n!==ge.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let s=t.encode(r).slice(1);return e.set(n,s),s}else return i}function ba(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let s=t.encode(r);return e.set(n,s),s}else return i}var pn=112,wa=18;function Q2(r,e,t){let n=xr(r),i=n+xr(e),s=new Uint8Array(i+t.byteLength);return vr(r,s,0),vr(e,s,n),s.set(t,i),s}var va=Symbol.for("@ipld/js-cid/CID");var Ut={...Is,...bs,...Bs,...ms,...ys,...vs,...xs,...Es,...As,...ws},V9={..._s,...ks};function J2(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var X2=J2("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ls=J2("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=be(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),xa={utf8:X2,"utf-8":X2,hex:Ut.base16,latin1:Ls,ascii:Ls,binary:Ls,...Ut},Zn=xa;function q(r,e="utf8"){let t=Zn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function Ps(r){let e=r??8192,t=e>>>1,n,i=e;return function(o){if(o<1||o>t)return be(o);i+o>e&&(n=be(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var ir=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Cs(){}var Us=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Ea=Ps();function Aa(r){return globalThis.Buffer!=null?be(r):Ea(r)}var mn=class{len;head;tail;states;constructor(){this.len=0,this.head=new ir(Cs,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new ir(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Os((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Qn,10,Oe.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=Oe.fromBigInt(e);return this._push(Qn,t.length(),t)}uint64Number(e){return this._push(ss,he(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=Oe.fromBigInt(e).zzEncode();return this._push(Qn,t.length(),t)}sint64Number(e){let t=Oe.fromNumber(e).zzEncode();return this._push(Qn,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Ds,1,e?1:0)}fixed32(e){return this._push(gn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=Oe.fromBigInt(e);return this._push(gn,4,t.lo)._push(gn,4,t.hi)}fixed64Number(e){let t=Oe.fromNumber(e);return this._push(gn,4,t.lo)._push(gn,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(S2,4,e)}double(e){return this._push(R2,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Ds,1,0):this.uint32(t)._push(Ia,t,e)}string(e){let t=N2(e);return t!==0?this.uint32(t)._push(ls,t,e):this._push(Ds,1,0)}fork(){return this.states=new Us(this),this.head=this.tail=new ir(Cs,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 ir(Cs,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=Aa(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Ds(r,e,t){e[t]=r&255}function Ba(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var Os=class extends ir{next;constructor(e,t){super(Ba,e,t),this.next=void 0}};function Qn(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function gn(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function Ia(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(mn.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Sa,e,r),this},mn.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(ka,e,r),this});function Sa(r,e,t){e.set(r,t)}function ka(r,e,t){r.length<40?ls(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(q(r),t)}function Vs(){return new mn}function st(r,e){let t=Vs();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var Ar;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(Ar||(Ar={}));function Xn(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function Br(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(s,o){let a=e(s);o.int32(a)},n=function(s){let o=s.int32();return e(o)};return Xn("enum",Ar.VARINT,t,n)}function ot(r,e){return Xn("message",Ar.LENGTH_DELIMITED,r,e)}var yn=class extends Error{code;constructor(e,t,n){super(e,n),this.code=t}};var bn;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.key!=null&&t.key.byteLength>0&&(n.uint32(10),n.bytes(t.key)),t.value!=null&&t.value.byteLength>0&&(n.uint32(18),n.bytes(t.value)),t.timeReceived!=null&&t.timeReceived!==""&&(n.uint32(42),n.string(t.timeReceived)),i.lengthDelimited!==!1&&n.ldelim()},(t,n,i={})=>{let s={key:Pe(0),value:Pe(0),timeReceived:""},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let a=t.uint32();switch(a>>>3){case 1:{s.key=t.bytes();break}case 2:{s.value=t.bytes();break}case 5:{s.timeReceived=t.string();break}default:{t.skipType(a&7);break}}}return s})),e),r.encode=t=>st(t,r.codec()),r.decode=(t,n)=>nt(t,r.codec(),n)})(bn||(bn={}));function e0(r){let e=r.getUTCFullYear(),t=String(r.getUTCMonth()+1).padStart(2,"0"),n=String(r.getUTCDate()).padStart(2,"0"),i=String(r.getUTCHours()).padStart(2,"0"),s=String(r.getUTCMinutes()).padStart(2,"0"),o=String(r.getUTCSeconds()).padStart(2,"0"),a=r.getUTCMilliseconds(),c=String(a*1e3*1e3).padStart(9,"0");return`${e}-${t}-${n}T${i}:${s}:${o}.${c}Z`}function t0(r){let e=new RegExp("(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})\\.(\\d+)Z"),t=String(r).trim().match(e);if(t==null)throw new Error("Invalid format");let n=parseInt(t[1],10),i=parseInt(t[2],10)-1,s=parseInt(t[3],10),o=parseInt(t[4],10),a=parseInt(t[5],10),c=parseInt(t[6],10),l=parseInt(t[7].slice(0,-6),10);return new Date(Date.UTC(n,i,s,o,a,c,l))}var me=class r{key;value;timeReceived;constructor(e,t,n){if(!(e instanceof Uint8Array))throw new Error("key must be a Uint8Array");if(!(t instanceof Uint8Array))throw new Error("value must be a Uint8Array");this.key=e,this.value=t,this.timeReceived=n}serialize(){return bn.encode(this.prepareSerialize())}prepareSerialize(){return{key:this.key,value:this.value,timeReceived:e0(this.timeReceived)}}static deserialize(e){let t=bn.decode(e);return new r(t.key,t.value,new Date(t.timeReceived))}static fromDeserialized(e){let t=t0(e.timeReceived);if(e.key==null)throw new Error("key missing from deserialized object");if(e.value==null)throw new Error("value missing from deserialized object");return new r(e.key,e.value,t)}};function Ta(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var r0=Ta;function _a(r){return r[Symbol.asyncIterator]!=null}function Na(r,e){let t=0;if(_a(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=r0(r),{value:i,done:s}=n.next();if(s===!0)return function*(){}();let o=e(i,t++);if(typeof o.then=="function")return async function*(){yield await o;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield o;for(let c of n)yield a(c,t++)}()}var Ir=Na;var Jn=globalThis.CustomEvent??Event;async function*wn(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,s=[],o=fe(),a=fe(),c=!1,l,u=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let g of r){if(s.length===t&&(o=fe(),await o.promise),u)break;let d={done:!1};s.push(d),g().then(p=>{d.done=!0,d.ok=!0,d.value=p,i.dispatchEvent(new Jn("task-complete"))},p=>{d.done=!0,d.err=p,i.dispatchEvent(new Jn("task-complete"))})}c=!0,i.dispatchEvent(new Jn("task-complete"))}catch(g){l=g,i.dispatchEvent(new Jn("task-complete"))}});function f(){return n?s[0]?.done:!!s.find(g=>g.done)}function*h(){for(;s.length>0&&s[0].done;){let g=s[0];if(s.shift(),g.ok)yield g.value;else throw u=!0,o.resolve(),g.err;o.resolve()}}function*m(){for(;f();)for(let g=0;g<s.length;g++)if(s[g].done){let d=s[g];if(s.splice(g,1),g--,d.ok)yield d.value;else throw u=!0,o.resolve(),d.err;o.resolve()}}for(;;){if(f()||(a=fe(),await a.promise),l!=null)throw l;if(n?yield*h():yield*m(),c&&s.length===0)break}}var e1=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Sr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new e1(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new e1(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ms=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function kr(r={}){return La(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function La(r,e){e=e??{};let t=e.onEnd,n=new Sr,i,s,o,a=fe(),c=async()=>{try{return n.isEmpty()?o?{done:!0}:await new Promise((p,y)=>{s=v=>{s=null,n.push(v);try{p(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=fe()})}},l=p=>s!=null?s(p):(n.push(p),i),u=p=>(n=new Sr,s!=null?s({error:p}):(n.push({error:p}),i)),f=p=>{if(o)return i;if(e?.objectMode!==!0&&p?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:p})},h=p=>o?i:(o=!0,p!=null?u(p):l({done:!0})),m=()=>(n=new Sr,h(),{done:!0}),g=p=>(h(p),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:m,throw:g,push:f,end:h,get readableLength(){return n.size},onEmpty:async p=>{let y=p?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let v,b;y!=null&&(v=new Promise((S,E)=>{b=()=>{E(new Ms)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,v])}finally{b!=null&&y!=null&&y?.removeEventListener("abort",b)}}},t==null)return i;let d=i;return i={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(p){return d.throw(p),t!=null&&(t(p),t=void 0),{done:!0}},return(){return d.return(),t!=null&&(t(),t=void 0),{done:!0}},push:f,end(p){return d.end(p),t!=null&&(t(p),t=void 0),i},get readableLength(){return d.readableLength},onEmpty:p=>d.onEmpty(p)},i}function Pa(r){return r[Symbol.asyncIterator]!=null}function Ca(...r){let e=[];for(let t of r)Pa(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=kr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var t1=Ca;function Ot(r,...e){if(r==null)throw new Error("Empty pipeline");if(Fs(r)){let n=r;r=()=>n.source}else if(i0(r)||n0(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Fs(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Fs(t[n])&&(t[n]=Ua(t[n]));return Da(...t)}var Da=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},n0=r=>r?.[Symbol.asyncIterator]!=null,i0=r=>r?.[Symbol.iterator]!=null,Fs=r=>r==null?!1:r.sink!=null&&r.source!=null,Ua=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=kr({objectMode:!0});t.then(()=>{n.end()},o=>{n.end(o)});let i,s=r.source;if(n0(s))i=async function*(){yield*s,n.end()};else if(i0(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return t1(n,i())}return r.source};function Q(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var s0;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.key!=null&&(n.uint32(10),n.bytes(t.key)),t.value!=null&&(n.uint32(18),n.bytes(t.value)),t.author!=null&&(n.uint32(26),n.bytes(t.author)),t.signature!=null&&(n.uint32(34),n.bytes(t.signature)),t.timeReceived!=null&&(n.uint32(42),n.string(t.timeReceived)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.key=t.bytes();break}case 2:{i.value=t.bytes();break}case 3:{i.author=t.bytes();break}case 4:{i.signature=t.bytes();break}case 5:{i.timeReceived=t.string();break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(s0||(s0={}));var F;(function(r){r.PUT_VALUE="PUT_VALUE",r.GET_VALUE="GET_VALUE",r.ADD_PROVIDER="ADD_PROVIDER",r.GET_PROVIDERS="GET_PROVIDERS",r.FIND_NODE="FIND_NODE",r.PING="PING"})(F||(F={}));var r1;(function(r){r[r.PUT_VALUE=0]="PUT_VALUE",r[r.GET_VALUE=1]="GET_VALUE",r[r.ADD_PROVIDER=2]="ADD_PROVIDER",r[r.GET_PROVIDERS=3]="GET_PROVIDERS",r[r.FIND_NODE=4]="FIND_NODE",r[r.PING=5]="PING"})(r1||(r1={}));(function(r){r.codec=()=>Br(r1)})(F||(F={}));var Tr;(function(r){r.NOT_CONNECTED="NOT_CONNECTED",r.CONNECTED="CONNECTED",r.CAN_CONNECT="CAN_CONNECT",r.CANNOT_CONNECT="CANNOT_CONNECT"})(Tr||(Tr={}));var Hs;(function(r){r[r.NOT_CONNECTED=0]="NOT_CONNECTED",r[r.CONNECTED=1]="CONNECTED",r[r.CAN_CONNECT=2]="CAN_CONNECT",r[r.CANNOT_CONNECT=3]="CANNOT_CONNECT"})(Hs||(Hs={}));(function(r){r.codec=()=>Br(Hs)})(Tr||(Tr={}));var Rr;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),t.id!=null&&t.id.byteLength>0&&(n.uint32(10),n.bytes(t.id)),t.multiaddrs!=null)for(let s of t.multiaddrs)n.uint32(18),n.bytes(s);t.connection!=null&&(n.uint32(24),Tr.codec().encode(t.connection,n)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={id:Pe(0),multiaddrs:[]},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.id=t.bytes();break}case 2:{i.multiaddrs.push(t.bytes());break}case 3:{i.connection=Tr.codec().decode(t);break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Rr||(Rr={}));var qe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),t.type!=null&&r1[t.type]!==0&&(n.uint32(8),F.codec().encode(t.type,n)),t.clusterLevel!=null&&(n.uint32(80),n.int32(t.clusterLevel)),t.key!=null&&(n.uint32(18),n.bytes(t.key)),t.record!=null&&(n.uint32(26),n.bytes(t.record)),t.closer!=null)for(let s of t.closer)n.uint32(66),Rr.codec().encode(s,n);if(t.providers!=null)for(let s of t.providers)n.uint32(74),Rr.codec().encode(s,n);i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={type:F.PUT_VALUE,closer:[],providers:[]},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.type=F.codec().decode(t);break}case 10:{i.clusterLevel=t.int32();break}case 2:{i.key=t.bytes();break}case 3:{i.record=t.bytes();break}case 8:{i.closer.push(Rr.codec().decode(t,t.uint32()));break}case 9:{i.providers.push(Rr.codec().decode(t,t.uint32()));break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(qe||(qe={}));function Ks(r,e={}){let t={...r,name:"SEND_QUERY",type:0,messageName:r.type,messageType:r.type};return e.onProgress?.(new De("kad-dht:query:send-query",{detail:t})),t}function vn(r,e={}){let t={...r,name:"PEER_RESPONSE",type:1,messageName:r.messageType,closer:r.closer!=null?r.closer:[],providers:r.providers!=null?r.providers:[]};return e.onProgress?.(new De("kad-dht:query:peer-response",{detail:t})),t}function n1(r,e={}){let t={...r,name:"FINAL_PEER",type:2};return e.onProgress?.(new De("kad-dht:query:final-peer",{detail:t})),t}function Ve(r,e={}){let t={...r,name:"QUERY_ERROR",type:3};return e.onProgress?.(new De("kad-dht:query:query-error",{detail:t})),t}function qs(r,e={}){let t={...r,name:"PROVIDER",type:4};return e.onProgress?.(new De("kad-dht:query:provider",{detail:t})),t}function xn(r,e={}){let t={...r,name:"VALUE",type:5};return e.onProgress?.(new De("kad-dht:query:value",{detail:t})),t}function $s(r,e={}){let t={...r,name:"DIAL_PEER",type:7};return e.onProgress?.(new De("kad-dht:query:dial-peer",{detail:t})),t}function L(r,e="utf8"){let t=Zn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}function o0(r,e,t){if(t.length===0){let o="No records given";throw new x(o,"ERR_NO_RECORDS_RECEIVED")}let i=L(e).split("/");if(i.length<3){let o="Record key does not have a selector function";throw new x(o,"ERR_NO_SELECTOR_FUNCTION_FOR_RECORD_KEY")}let s=r[i[1].toString()];if(s==null){let o=`No selector function configured for key type "${i[1]}"`;throw new x(o,"ERR_UNRECOGNIZED_KEY_PREFIX")}return t.length===1?0:s(e,t)}function Oa(r,e){return 0}var a0={pk:Oa};async function _r(r,e){let t=e.key,i=L(t).split("/");if(i.length<3)return;let s=r[i[1].toString()];if(s==null){let o=`No validator available for key type "${i[1]}"`;throw new x(o,"ERR_INVALID_RECORD_KEY_TYPE")}await s(t,e.value)}var Va=async(r,e)=>{if(!(r instanceof Uint8Array))throw new x('"key" must be a Uint8Array',"ERR_INVALID_RECORD_KEY_NOT_BUFFER");if(r.byteLength<5)throw new x("invalid public key record","ERR_INVALID_RECORD_KEY_TOO_SHORT");if(L(r.subarray(0,4))!=="/pk/")throw new x("key was not prefixed with /pk/","ERR_INVALID_RECORD_KEY_BAD_PREFIX");let n=r.slice(4),i=await ne.digest(e);if(!Q(n,i.bytes))throw new x("public key does not match passed in key","ERR_INVALID_RECORD_HASH_MISMATCH")},c0={pk:Va};var u0=Symbol.for("nodejs.util.inspect.custom"),l0=Object.values(Ut).map(r=>r.decoder).reduce((r,e)=>r.or(e),Ut.identity.decoder),f0=114,js=36,Ys=37,En=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Qi]=!0;toString(){return this.string==null&&(this.string=ge.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ke.createV1(f0,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return Q(this.multihash.bytes,e);if(typeof e=="string")return sr(e).equals(this);if(e?.multihash?.bytes!=null)return Q(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[u0](){return`PeerId(${this.toString()})`}},Nr=class extends En{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Lr=class extends En{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Pr=class extends En{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}},zs=2336,Gs=class{type="url";multihash;privateKey;publicKey;url;constructor(e){this.url=e.toString(),this.multihash=mt.digest(q(this.url))}[u0](){return`PeerId(${this.url})`}[Qi]=!0;toString(){return this.toCID().toString()}toCID(){return ke.createV1(zs,this.multihash)}toBytes(){return this.toCID().bytes}equals(e){return e==null?!1:(e instanceof Uint8Array&&(e=L(e)),e.toString()===this.toString())}};function sr(r,e){if(e=e??l0,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=rr(ge.decode(`z${r}`));return r.startsWith("12D")?new Lr({multihash:t}):r.startsWith("16U")?new Pr({multihash:t}):new Nr({multihash:t})}return yt(l0.decode(r))}function yt(r){try{let e=rr(r);if(e.code===mt.code){if(e.digest.length===js)return new Lr({multihash:e});if(e.digest.length===Ys)return new Pr({multihash:e})}if(e.code===ne.code)return new Nr({multihash:e})}catch{return Ma(ke.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function Ma(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==f0&&r.code!==zs)throw new Error("Supplied PeerID CID is invalid");if(r.code===zs){let t=L(r.multihash.digest);return new Gs(new URL(t))}let e=r.multihash;if(e.code===ne.code)return new Nr({multihash:r.multihash});if(e.code===mt.code){if(e.digest.length===js)return new Lr({multihash:r.multihash});if(e.digest.length===Ys)return new Pr({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function h0(r,e){return r.length===js?new Lr({multihash:it(mt.code,r),privateKey:e}):r.length===Ys?new Pr({multihash:it(mt.code,r),privateKey:e}):new Nr({multihash:await ne.digest(r),publicKey:r,privateKey:e})}var i1=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let t=this.index,n=e();return n===void 0&&(this.index=t),n}parseWith(e){let t=e();if(this.index===this.input.length)return t}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let t=this.readChar();if(t===e)return t})}readSeparator(e,t,n){return this.readAtomically(()=>{if(!(t>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,t,n,i){return this.readAtomically(()=>{let s=0,o=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",l=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let f=this.readChar();if(f===void 0)return;let h=Number.parseInt(f,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(s*=e,s+=u,s>l||(o+=1,t!==void 0&&o>t))return}if(o!==0)return!n&&c&&o>1?void 0:s})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let t=0;t<e.length;t++){let n=this.readSeparator(".",t,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[t]=n}return e})}readIPv6Addr(){let e=t=>{for(let n=0;n<t.length/2;n++){let i=n*2;if(n<t.length-3){let o=this.readSeparator(":",n,()=>this.readIPv4Addr());if(o!==void 0)return t[i]=o[0],t[i+1]=o[1],t[i+2]=o[2],t[i+3]=o[3],[i+4,!0]}let s=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(s===void 0)return[i,!1];t[i]=s>>8,t[i+1]=s&255}return[t.length,!1]};return this.readAtomically(()=>{let t=new Uint8Array(16),[n,i]=e(t);if(n===16)return t;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let s=new Uint8Array(14),o=16-(n+2),[a]=e(s.subarray(0,o));return t.set(s.subarray(0,a),16-a),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var d0=45,Fa=15,Cr=new i1;function Ws(r){if(!(r.length>Fa))return Cr.new(r).parseWith(()=>Cr.readIPv4Addr())}function Zs(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>d0))return Cr.new(r).parseWith(()=>Cr.readIPv6Addr())}function s1(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>d0))return Cr.new(r).parseWith(()=>Cr.readIPAddr())}function o1(r){return!!Ws(r)}function a1(r){return!!Zs(r)}function c1(r){return!!s1(r)}var g0=un(p0(),1),Ha=["0.0.0.0/8","10.0.0.0/8","100.64.0.0/10","127.0.0.0/8","169.254.0.0/16","172.16.0.0/12","192.0.0.0/24","192.0.0.0/29","192.0.0.8/32","192.0.0.9/32","192.0.0.10/32","192.0.0.170/32","192.0.0.171/32","192.0.2.0/24","192.31.196.0/24","192.52.193.0/24","192.88.99.0/24","192.168.0.0/16","192.175.48.0/24","198.18.0.0/15","198.51.100.0/24","203.0.113.0/24","240.0.0.0/4","255.255.255.255/32"],Ka=Ha.map(r=>new g0.Netmask(r));function Qs(r){for(let e of Ka)if(e.contains(r))return!0;return!1}function qa(r){return/^::ffff:([0-9a-fA-F]{1,4}):([0-9a-fA-F]{1,4})$/.test(r)}function $a(r){let e=r.split(":");if(e.length<2)return!1;let t=e[e.length-1].padStart(4,"0"),n=e[e.length-2].padStart(4,"0"),i=`${parseInt(n.substring(0,2),16)}.${parseInt(n.substring(2),16)}.${parseInt(t.substring(0,2),16)}.${parseInt(t.substring(2),16)}`;return Qs(i)}function za(r){return/^::ffff:([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(r)}function Ga(r){let e=r.split(":"),t=e[e.length-1];return Qs(t)}function ja(r){return/^::$/.test(r)||/^::1$/.test(r)||/^64:ff9b::([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(r)||/^100::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001:2[0-9a-fA-F]:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001:db8:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2002:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^f[c-d]([0-9a-fA-F]{2,2}):/i.test(r)||/^fe[8-9a-bA-B][0-9a-fA-F]:/i.test(r)||/^ff([0-9a-fA-F]{2,2}):/i.test(r)}function l1(r){return o1(r)?Qs(r):qa(r)?$a(r):za(r)?Ga(r):a1(r)?ja(r):void 0}var bt="/",m0=new TextEncoder().encode(bt),u1=m0[0],Dr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=q(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==u1)throw new Error("Invalid key")}toString(e="utf8"){return L(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(bt))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=m0),this._buf[0]!==u1){let e=new Uint8Array(this._buf.byteLength+1);e.fill(u1,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===u1;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let s=t[i],o=n[i];if(s<o)return!0;if(s>o)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(bt).slice(1)}type(){return Ya(this.baseNamespace())}name(){return Wa(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(bt)||(e+=bt),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(bt):new r(e.slice(0,-1).join(bt))}child(e){return this.toString()===bt?e:e.toString()===bt?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...Za(e.map(t=>t.namespaces()))])}};function Ya(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function Wa(r){let e=r.split(":");return e[e.length-1]}function Za(r){return[].concat(...r)}function J(r,e){e==null&&(e=r.reduce((i,s)=>i+s.length,0));let t=be(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}var Xa=q("/pk/");function f1(r){return{...r,multiaddrs:r.multiaddrs.filter(e=>{let[[t,n]]=e.stringTuples();if(t===53||t===54||t===55)return n!=="localhost";if(t!==4&&t!==6||n==null)return!1;let i=l1(n);return i==null?!0:!i})}}function y0(r){return{...r,multiaddrs:r.multiaddrs.filter(e=>{let[[t,n]]=e.stringTuples();if(n==="localhost")return!0;if(t!==4&&t!==6||n==null)return!1;let i=l1(n);return i??!1})}}function b0(r){return r}async function Vt(r){return(await ne.digest(r)).digest}async function $e(r){return Vt(r.toBytes())}function Mt(r){return new Dr(`${I2}/${L(r,"base32")}`,!1)}function w0(r){return J([Xa,r.toBytes()])}function v0(r){return L(r.subarray(0,4))==="/pk/"}function x0(r){return yt(r.subarray(4))}function Xs(r,e){let t=new Date;return new me(r,e,t).serialize()}function E0(r,e=100){let t;return()=>{clearTimeout(t),t=setTimeout(()=>{r()},e)}}var Ja=290,e6=54,t6=55,r6=56,n6=4,i6=41;function A0(r){let e=r.stringTuples();for(let t of e)if(t[0]===Ja)return!1;if(e[0][0]===e6||e[0][0]===t6||e[0][0]===r6)return!0;if(e[0][0]===n6||e[0][0]===i6){let t=l1(`${e[0][1]}`);return t==null||!t}return!1}var h1=class{log;components;validators;selectors;peerRouting;queryManager;network;constructor(e,t){let{validators:n,selectors:i,peerRouting:s,queryManager:o,network:a,logPrefix:c}=t;this.components=e,this.log=e.logger.forComponent(`${c}:content-fetching`),this.validators=n,this.selectors=i,this.peerRouting=s,this.queryManager=o,this.network=a}async getLocal(e){this.log("getLocal %b",e);let t=Mt(e);this.log("fetching record for key %k",t);let n=await this.components.datastore.get(t);this.log("found %k in local datastore",t);let i=me.deserialize(n);return await _r(this.validators,i),i}async*sendCorrectionRecord(e,t,n,i={}){this.log("sendCorrection for %b",e);let s=Xs(e,n);for(let{value:o,from:a}of t){if(Q(o,n)){this.log("record was ok");continue}if(this.components.peerId.equals(a)){try{let u=Mt(e);this.log(`Storing corrected record for key ${u.toString()}`),await this.components.datastore.put(u,s.subarray())}catch(u){this.log.error("Failed error correcting self",u)}continue}let c=!1,l={type:F.PUT_VALUE,key:e,record:s};for await(let u of this.network.sendRequest(a,l,i))u.name==="PEER_RESPONSE"&&u.record!=null&&Q(u.record.value,me.deserialize(s).value)&&(c=!0),yield u;c||(yield Ve({from:a,error:new x("value not put correctly","ERR_PUT_VALUE_INVALID")},i)),this.log.error("Failed error correcting entry")}}async*put(e,t,n={}){this.log("put key %b value %b",e,t);let i=Xs(e,t),s=Mt(e);this.log(`storing record for key ${s.toString()}`),await this.components.datastore.put(s,i.subarray()),yield*Ot(this.peerRouting.getClosestPeers(e,{signal:n.signal}),o=>Ir(o,a=>async()=>{if(a.name!=="FINAL_PEER")return[a];let c=[],l={type:F.PUT_VALUE,key:e,record:i};this.log("send put to %p",a.peer.id);for await(let u of this.network.sendRequest(a.peer.id,l,n))c.push(u),u.name==="PEER_RESPONSE"&&(u.record!=null&&Q(u.record.value,me.deserialize(i).value)||c.push(Ve({from:a.peer.id,error:new x("value not put correctly","ERR_PUT_VALUE_INVALID")},n)));return c}),o=>wn(o,{ordered:!1,concurrency:3}),async function*(o){for await(let a of o)yield*a})}async*get(e,t={}){this.log("get %b",e);let n=[];for await(let a of this.getMany(e,t))a.name==="VALUE"&&n.push(a),yield a;if(n.length===0)return;let i=n.map(a=>a.value),s=0;try{s=o0(this.selectors,e,i)}catch(a){if(a.code!=="ERR_NO_SELECTOR_FUNCTION_FOR_RECORD_KEY")throw a}let o=i[s];if(this.log("GetValue %b %b",e,o),o==null)throw new x("best value was not found","ERR_NOT_FOUND");yield*this.sendCorrectionRecord(e,n,o,t),yield n[s]}async*getMany(e,t={}){this.log("getMany values for %b",e);try{let s=await this.getLocal(e);yield xn({value:s.value,from:this.components.peerId},t)}catch(s){this.log("error getting local value for %b",e,s)}let n=this,i=async function*({peer:s,signal:o}){for await(let a of n.peerRouting.getValueOrPeers(s,e,{signal:o}))yield a,a.name==="PEER_RESPONSE"&&a.record!=null&&(yield xn({from:s,value:a.record.value},t))};yield*this.queryManager.run(e,i,t)}};function eo(r,e){let t={[Symbol.iterator]:()=>t,next:()=>{let n=r.next(),i=n.value;return n.done===!0||i==null?{done:!0,value:void 0}:{done:!1,value:e(i)}}};return t}var at=class r{set;constructor(e){if(this.set=new Set,e!=null)for(let t of e)this.set.add(t.toString())}get size(){return this.set.size}[Symbol.iterator](){return this.values()}add(e){this.set.add(e.toString())}clear(){this.set.clear()}delete(e){this.set.delete(e.toString())}entries(){return eo(this.set.entries(),e=>{let t=sr(e[0]);return[t,t]})}forEach(e){this.set.forEach(t=>{let n=sr(t);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return eo(this.set.values(),e=>sr(e))}intersection(e){let t=new r;for(let n of e)this.has(n)&&t.add(n);return t}difference(e){let t=new r;for(let n of this)e.has(n)||t.add(n);return t}union(e){let t=new r;for(let n of e)t.add(n);for(let n of this)t.add(n);return t}};var ee={get(r=globalThis){let e=r.crypto;if(e==null||e.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var I0={SHA1:20,SHA256:32,SHA512:64};var s6={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},o6=async(r,e)=>{let t=await ee.get().subtle.sign({name:"HMAC"},r,e);return new Uint8Array(t,0,t.byteLength)};async function S0(r,e){let t=s6[r],n=await ee.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:t}},!1,["sign"]);return{async digest(i){return o6(n,i)},length:I0[r]}}var gi={};ue(gi,{Ed25519PrivateKey:()=>Bt,Ed25519PublicKey:()=>lr,MAX_RSA_KEY_SIZE:()=>hr,RsaPrivateKey:()=>Zt,RsaPublicKey:()=>fr,Secp256k1PrivateKey:()=>gr,Secp256k1PublicKey:()=>pr,generateEphemeralKeyPair:()=>r3,generateKeyPair:()=>o7,generateKeyPairFromSeed:()=>a7,importKey:()=>f7,keyStretcher:()=>s3,keysPBM:()=>jr,marshalPrivateKey:()=>u7,marshalPublicKey:()=>l7,supportedKeys:()=>Lt,unmarshalPrivateKey:()=>f4,unmarshalPublicKey:()=>c7});var bo={};ue(bo,{Ed25519PrivateKey:()=>Bt,Ed25519PublicKey:()=>lr,generateKeyPair:()=>m8,generateKeyPairFromSeed:()=>yo,unmarshalEd25519PrivateKey:()=>p8,unmarshalEd25519PublicKey:()=>g8});function to(r,e){let t=q(r,"base64urlpad");if(e!=null){if(t.length>e)throw new Error("byte array longer than desired length");t=J([new Uint8Array(e-t.length),t])}return t}function ze(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Ur(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function c6(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Or(r,...e){if(!c6(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}function d1(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ur(r.outputLen),Ur(r.blockLen)}function Vr(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function k0(r,e){Or(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var p1=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Fr=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),We=(r,e)=>r<<32-e|r>>>e;var rf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;var l6=async()=>{};async function R0(r,e,t){let n=Date.now();for(let i=0;i<r;i++){t(i);let s=Date.now()-n;s>=0&&s<e||(await l6(),n+=s)}}function T0(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Ft(r){return typeof r=="string"&&(r=T0(r)),Or(r),r}function ro(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];Or(i),e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let s=r[n];t.set(s,i),i+=s.length}return t}var Mr=class{clone(){return this._cloneInto()}},u6={}.toString;function _0(r,e){if(e!==void 0&&u6.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function g1(r){let e=n=>r().update(Ft(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Hr(r=32){if(p1&&typeof p1.getRandomValues=="function")return p1.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function f6(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let i=BigInt(32),s=BigInt(4294967295),o=Number(t>>i&s),a=Number(t&s),c=n?4:0,l=n?0:4;r.setUint32(e+c,o,n),r.setUint32(e+l,a,n)}var N0=(r,e,t)=>r&e^~r&t,L0=(r,e,t)=>r&e^r&t^e&t,Kr=class extends Mr{constructor(e,t,n,i){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Fr(this.buffer)}update(e){Vr(this);let{view:t,buffer:n,blockLen:i}=this;e=Ft(e);let s=e.length;for(let o=0;o<s;){let a=Math.min(i-this.pos,s-o);if(a===i){let c=Fr(e);for(;i<=s-o;o+=i)this.process(c,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Vr(this),k0(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:i,isLE:s}=this,{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let f=o;f<i;f++)t[f]=0;f6(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=Fr(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<l;f++)a.setUint32(4*f,u[f],s)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return e.length=i,e.pos=a,e.finished=s,e.destroyed=o,i%t&&e.buffer.set(n),e}};var m1=BigInt(4294967295),no=BigInt(32);function P0(r,e=!1){return e?{h:Number(r&m1),l:Number(r>>no&m1)}:{h:Number(r>>no&m1)|0,l:Number(r&m1)|0}}function h6(r,e=!1){let t=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let i=0;i<r.length;i++){let{h:s,l:o}=P0(r[i],e);[t[i],n[i]]=[s,o]}return[t,n]}var d6=(r,e)=>BigInt(r>>>0)<<no|BigInt(e>>>0),p6=(r,e,t)=>r>>>t,g6=(r,e,t)=>r<<32-t|e>>>t,m6=(r,e,t)=>r>>>t|e<<32-t,y6=(r,e,t)=>r<<32-t|e>>>t,b6=(r,e,t)=>r<<64-t|e>>>t-32,w6=(r,e,t)=>r>>>t-32|e<<64-t,v6=(r,e)=>e,x6=(r,e)=>r,E6=(r,e,t)=>r<<t|e>>>32-t,A6=(r,e,t)=>e<<t|r>>>32-t,B6=(r,e,t)=>e<<t-32|r>>>64-t,I6=(r,e,t)=>r<<t-32|e>>>64-t;function S6(r,e,t,n){let i=(e>>>0)+(n>>>0);return{h:r+t+(i/2**32|0)|0,l:i|0}}var k6=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),R6=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,T6=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),_6=(r,e,t,n,i)=>e+t+n+i+(r/2**32|0)|0,N6=(r,e,t,n,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(i>>>0),L6=(r,e,t,n,i,s)=>e+t+n+i+s+(r/2**32|0)|0;var P6={fromBig:P0,split:h6,toBig:d6,shrSH:p6,shrSL:g6,rotrSH:m6,rotrSL:y6,rotrBH:b6,rotrBL:w6,rotr32H:v6,rotr32L:x6,rotlSH:E6,rotlSL:A6,rotlBH:B6,rotlBL:I6,add:S6,add3L:k6,add3H:R6,add4L:T6,add4H:_6,add5H:L6,add5L:N6},D=P6;var[C6,D6]=D.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Ht=new Uint32Array(80),Kt=new Uint32Array(80),io=class extends Kr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:n,Bl:i,Ch:s,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:f,Fl:h,Gh:m,Gl:g,Hh:d,Hl:p}=this;return[e,t,n,i,s,o,a,c,l,u,f,h,m,g,d,p]}set(e,t,n,i,s,o,a,c,l,u,f,h,m,g,d,p){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=f|0,this.Fl=h|0,this.Gh=m|0,this.Gl=g|0,this.Hh=d|0,this.Hl=p|0}process(e,t){for(let b=0;b<16;b++,t+=4)Ht[b]=e.getUint32(t),Kt[b]=e.getUint32(t+=4);for(let b=16;b<80;b++){let S=Ht[b-15]|0,E=Kt[b-15]|0,I=D.rotrSH(S,E,1)^D.rotrSH(S,E,8)^D.shrSH(S,E,7),T=D.rotrSL(S,E,1)^D.rotrSL(S,E,8)^D.shrSL(S,E,7),_=Ht[b-2]|0,j=Kt[b-2]|0,$=D.rotrSH(_,j,19)^D.rotrBH(_,j,61)^D.shrSH(_,j,6),U=D.rotrSL(_,j,19)^D.rotrBL(_,j,61)^D.shrSL(_,j,6),ce=D.add4L(T,U,Kt[b-7],Kt[b-16]),ae=D.add4H(ce,I,$,Ht[b-7],Ht[b-16]);Ht[b]=ae|0,Kt[b]=ce|0}let{Ah:n,Al:i,Bh:s,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:f,El:h,Fh:m,Fl:g,Gh:d,Gl:p,Hh:y,Hl:v}=this;for(let b=0;b<80;b++){let S=D.rotrSH(f,h,14)^D.rotrSH(f,h,18)^D.rotrBH(f,h,41),E=D.rotrSL(f,h,14)^D.rotrSL(f,h,18)^D.rotrBL(f,h,41),I=f&m^~f&d,T=h&g^~h&p,_=D.add5L(v,E,T,D6[b],Kt[b]),j=D.add5H(_,y,S,I,C6[b],Ht[b]),$=_|0,U=D.rotrSH(n,i,28)^D.rotrBH(n,i,34)^D.rotrBH(n,i,39),ce=D.rotrSL(n,i,28)^D.rotrBL(n,i,34)^D.rotrBL(n,i,39),ae=n&s^n&a^s&a,He=i&o^i&c^o&c;y=d|0,v=p|0,d=m|0,p=g|0,m=f|0,g=h|0,{h:f,l:h}=D.add(l|0,u|0,j|0,$|0),l=a|0,u=c|0,a=s|0,c=o|0,s=n|0,o=i|0;let A=D.add3L($,ce,He);n=D.add3H(A,j,U,ae),i=A|0}({h:n,l:i}=D.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:s,l:o}=D.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:c}=D.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=D.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:f,l:h}=D.add(this.Eh|0,this.El|0,f|0,h|0),{h:m,l:g}=D.add(this.Fh|0,this.Fl|0,m|0,g|0),{h:d,l:p}=D.add(this.Gh|0,this.Gl|0,d|0,p|0),{h:y,l:v}=D.add(this.Hh|0,this.Hl|0,y|0,v|0),this.set(n,i,s,o,a,c,l,u,f,h,m,g,d,p,y,v)}roundClean(){Ht.fill(0),Kt.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Bn=g1(()=>new io);var b1={};ue(b1,{abytes:()=>qr,bitGet:()=>K6,bitLen:()=>H6,bitMask:()=>In,bitSet:()=>q6,bytesToHex:()=>vt,bytesToNumberBE:()=>xt,bytesToNumberLE:()=>$t,concatBytes:()=>Et,createHmacDrbg:()=>ao,ensureBytes:()=>oe,equalBytes:()=>M6,hexToBytes:()=>or,hexToNumber:()=>oo,isBytes:()=>qt,numberToBytesBE:()=>zt,numberToBytesLE:()=>ar,numberToHexUnpadded:()=>O0,numberToVarBytesBE:()=>V6,utf8ToBytes:()=>F6,validateObject:()=>ct});var U0=BigInt(0),y1=BigInt(1),U6=BigInt(2);function qt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function qr(r){if(!qt(r))throw new Error("Uint8Array expected")}var O6=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function vt(r){qr(r);let e="";for(let t=0;t<r.length;t++)e+=O6[r[t]];return e}function O0(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function oo(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var wt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function C0(r){if(r>=wt._0&&r<=wt._9)return r-wt._0;if(r>=wt._A&&r<=wt._F)return r-(wt._A-10);if(r>=wt._a&&r<=wt._f)return r-(wt._a-10)}function or(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let i=0,s=0;i<t;i++,s+=2){let o=C0(r.charCodeAt(s)),a=C0(r.charCodeAt(s+1));if(o===void 0||a===void 0){let c=r[s]+r[s+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+s)}n[i]=o*16+a}return n}function xt(r){return oo(vt(r))}function $t(r){return qr(r),oo(vt(Uint8Array.from(r).reverse()))}function zt(r,e){return or(r.toString(16).padStart(e*2,"0"))}function ar(r,e){return zt(r,e).reverse()}function V6(r){return or(O0(r))}function oe(r,e,t){let n;if(typeof e=="string")try{n=or(e)}catch(s){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${s}`)}else if(qt(e))n=Uint8Array.from(e);else throw new Error(`${r} must be hex string or Uint8Array`);let i=n.length;if(typeof t=="number"&&i!==t)throw new Error(`${r} expected ${t} bytes, got ${i}`);return n}function Et(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];qr(i),e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let s=r[n];t.set(s,i),i+=s.length}return t}function M6(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}function F6(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function H6(r){let e;for(e=0;r>U0;r>>=y1,e+=1);return e}function K6(r,e){return r>>BigInt(e)&y1}function q6(r,e,t){return r|(t?y1:U0)<<BigInt(e)}var In=r=>(U6<<BigInt(r-1))-y1,so=r=>new Uint8Array(r),D0=r=>Uint8Array.from(r);function ao(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=so(r),i=so(r),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...f)=>t(i,n,...f),c=(f=so())=>{i=a(D0([0]),f),n=a(),f.length!==0&&(i=a(D0([1]),f),n=a())},l=()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<e;){n=a();let m=n.slice();h.push(m),f+=n.length}return Et(...h)};return(f,h)=>{o(),c(f);let m;for(;!(m=h(l()));)c();return o(),m}}var $6={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||qt(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function ct(r,e,t={}){let n=(i,s,o)=>{let a=$6[s];if(typeof a!="function")throw new Error(`Invalid validator "${s}", expected function`);let c=r[i];if(!(o&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${s}`)};for(let[i,s]of Object.entries(e))n(i,s,!1);for(let[i,s]of Object.entries(t))n(i,s,!0);return r}var ye=BigInt(0),te=BigInt(1),cr=BigInt(2),z6=BigInt(3),co=BigInt(4),V0=BigInt(5),M0=BigInt(8),G6=BigInt(9),j6=BigInt(16);function Z(r,e){let t=r%e;return t>=ye?t:e+t}function Y6(r,e,t){if(t<=ye||e<ye)throw new Error("Expected power/modulo > 0");if(t===te)return ye;let n=te;for(;e>ye;)e&te&&(n=n*r%t),r=r*r%t,e>>=te;return n}function re(r,e,t){let n=r;for(;e-- >ye;)n*=n,n%=t;return n}function w1(r,e){if(r===ye||e<=ye)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Z(r,e),n=e,i=ye,s=te,o=te,a=ye;for(;t!==ye;){let l=n/t,u=n%t,f=i-o*l,h=s-a*l;n=t,t=u,i=o,s=a,o=f,a=h}if(n!==te)throw new Error("invert: does not exist");return Z(i,e)}function W6(r){let e=(r-te)/cr,t,n,i;for(t=r-te,n=0;t%cr===ye;t/=cr,n++);for(i=cr;i<r&&Y6(i,e,r)!==r-te;i++);if(n===1){let o=(r+te)/co;return function(c,l){let u=c.pow(l,o);if(!c.eql(c.sqr(u),l))throw new Error("Cannot find square root");return u}}let s=(t+te)/cr;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let l=n,u=a.pow(a.mul(a.ONE,i),t),f=a.pow(c,s),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let m=1;for(let d=a.sqr(h);m<l&&!a.eql(d,a.ONE);m++)d=a.sqr(d);let g=a.pow(u,te<<BigInt(l-m-1));u=a.sqr(g),f=a.mul(f,g),h=a.mul(h,u),l=m}return f}}function Z6(r){if(r%co===z6){let e=(r+te)/co;return function(n,i){let s=n.pow(i,e);if(!n.eql(n.sqr(s),i))throw new Error("Cannot find square root");return s}}if(r%M0===V0){let e=(r-V0)/M0;return function(n,i){let s=n.mul(i,cr),o=n.pow(s,e),a=n.mul(i,o),c=n.mul(n.mul(a,cr),o),l=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(l),i))throw new Error("Cannot find square root");return l}}return r%j6,W6(r)}var F0=(r,e)=>(Z(r,e)&te)===te,Q6=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function lo(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=Q6.reduce((n,i)=>(n[i]="function",n),e);return ct(r,t)}function X6(r,e,t){if(t<ye)throw new Error("Expected power > 0");if(t===ye)return r.ONE;if(t===te)return e;let n=r.ONE,i=e;for(;t>ye;)t&te&&(n=r.mul(n,i)),i=r.sqr(i),t>>=te;return n}function J6(r,e){let t=new Array(e.length),n=e.reduce((s,o,a)=>r.is0(o)?s:(t[a]=s,r.mul(s,o)),r.ONE),i=r.inv(n);return e.reduceRight((s,o,a)=>r.is0(o)?s:(t[a]=r.mul(s,t[a]),r.mul(s,o)),i),t}function uo(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function v1(r,e,t=!1,n={}){if(r<=ye)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:i,nByteLength:s}=uo(r,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=Z6(r),a=Object.freeze({ORDER:r,BITS:i,BYTES:s,MASK:In(i),ZERO:ye,ONE:te,create:c=>Z(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ye<=c&&c<r},is0:c=>c===ye,isOdd:c=>(c&te)===te,neg:c=>Z(-c,r),eql:(c,l)=>c===l,sqr:c=>Z(c*c,r),add:(c,l)=>Z(c+l,r),sub:(c,l)=>Z(c-l,r),mul:(c,l)=>Z(c*l,r),pow:(c,l)=>X6(a,c,l),div:(c,l)=>Z(c*w1(l,r),r),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>w1(c,r),sqrt:n.sqrt||(c=>o(a,c)),invertBatch:c=>J6(a,c),cmov:(c,l,u)=>u?l:c,toBytes:c=>t?ar(c,s):zt(c,s),fromBytes:c=>{if(c.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${c.length}`);return t?$t(c):xt(c)}});return Object.freeze(a)}function H0(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function fo(r){let e=H0(r);return e+Math.ceil(e/2)}function K0(r,e,t=!1){let n=r.length,i=H0(e),s=fo(e);if(n<16||n<s||n>1024)throw new Error(`expected ${s}-1024 bytes of input, got ${n}`);let o=t?xt(r):$t(r),a=Z(o,e-te)+te;return t?ar(a,i):zt(a,i)}var t8=BigInt(0),ho=BigInt(1);function x1(r,e){let t=(i,s)=>{let o=s.negate();return i?o:s},n=i=>{let s=Math.ceil(e/i)+1,o=2**(i-1);return{windows:s,windowSize:o}};return{constTimeNegate:t,unsafeLadder(i,s){let o=r.ZERO,a=i;for(;s>t8;)s&ho&&(o=o.add(a)),a=a.double(),s>>=ho;return o},precomputeWindow(i,s){let{windows:o,windowSize:a}=n(s),c=[],l=i,u=l;for(let f=0;f<o;f++){u=l,c.push(u);for(let h=1;h<a;h++)u=u.add(l),c.push(u);l=u.double()}return c},wNAF(i,s,o){let{windows:a,windowSize:c}=n(i),l=r.ZERO,u=r.BASE,f=BigInt(2**i-1),h=2**i,m=BigInt(i);for(let g=0;g<a;g++){let d=g*c,p=Number(o&f);o>>=m,p>c&&(p-=h,o+=ho);let y=d,v=d+Math.abs(p)-1,b=g%2!==0,S=p<0;p===0?u=u.add(t(b,s[y])):l=l.add(t(S,s[v]))}return{p:l,f:u}},wNAFCached(i,s,o,a){let c=i._WINDOW_SIZE||1,l=s.get(i);return l||(l=this.precomputeWindow(i,c),c!==1&&s.set(i,a(l))),this.wNAF(c,l,o)}}}function Sn(r){return lo(r.Fp),ct(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...uo(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Ze=BigInt(0),Me=BigInt(1),E1=BigInt(2),r8=BigInt(8),n8={zip215:!0};function i8(r){let e=Sn(r);return ct(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function q0(r){let e=i8(r),{Fp:t,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:c}=e,l=E1<<BigInt(a*8)-Me,u=t.create,f=e.uvRatio||((B,w)=>{try{return{isValid:!0,value:t.sqrt(B*t.inv(w))}}catch{return{isValid:!1,value:Ze}}}),h=e.adjustScalarBytes||(B=>B),m=e.domain||((B,w,R)=>{if(w.length||R)throw new Error("Contexts/pre-hash are not supported");return B}),g=B=>typeof B=="bigint"&&Ze<B,d=(B,w)=>g(B)&&g(w)&&B<w,p=B=>B===Ze||d(B,l);function y(B,w){if(d(B,w))return B;throw new Error(`Expected valid scalar < ${w}, got ${typeof B} ${B}`)}function v(B){return B===Ze?B:y(B,n)}let b=new Map;function S(B){if(!(B instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(w,R,P,C){if(this.ex=w,this.ey=R,this.ez=P,this.et=C,!p(w))throw new Error("x required");if(!p(R))throw new Error("y required");if(!p(P))throw new Error("z required");if(!p(C))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof E)throw new Error("extended point not allowed");let{x:R,y:P}=w||{};if(!p(R)||!p(P))throw new Error("invalid affine point");return new E(R,P,Me,u(R*P))}static normalizeZ(w){let R=t.invertBatch(w.map(P=>P.ez));return w.map((P,C)=>P.toAffine(R[C])).map(E.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,b.delete(this)}assertValidity(){let{a:w,d:R}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:P,ey:C,ez:V,et:M}=this,G=u(P*P),K=u(C*C),z=u(V*V),le=u(z*z),ie=u(G*w),ve=u(z*u(ie+K)),xe=u(le+u(R*u(G*K)));if(ve!==xe)throw new Error("bad point: equation left != right (1)");let pe=u(P*C),Be=u(V*M);if(pe!==Be)throw new Error("bad point: equation left != right (2)")}equals(w){S(w);let{ex:R,ey:P,ez:C}=this,{ex:V,ey:M,ez:G}=w,K=u(R*G),z=u(V*C),le=u(P*G),ie=u(M*C);return K===z&&le===ie}is0(){return this.equals(E.ZERO)}negate(){return new E(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=e,{ex:R,ey:P,ez:C}=this,V=u(R*R),M=u(P*P),G=u(E1*u(C*C)),K=u(w*V),z=R+P,le=u(u(z*z)-V-M),ie=K+M,ve=ie-G,xe=K-M,pe=u(le*ve),Be=u(ie*xe),dt=u(le*xe),er=u(ve*ie);return new E(pe,Be,er,dt)}add(w){S(w);let{a:R,d:P}=e,{ex:C,ey:V,ez:M,et:G}=this,{ex:K,ey:z,ez:le,et:ie}=w;if(R===BigInt(-1)){let c2=u((V-C)*(z+K)),l2=u((V+C)*(z-K)),Zi=u(l2-c2);if(Zi===Ze)return this.double();let u2=u(M*E1*ie),f2=u(G*E1*le),h2=f2+u2,d2=l2+c2,p2=f2-u2,X4=u(h2*Zi),J4=u(d2*p2),e5=u(h2*p2),t5=u(Zi*d2);return new E(X4,J4,t5,e5)}let ve=u(C*K),xe=u(V*z),pe=u(G*P*ie),Be=u(M*le),dt=u((C+V)*(K+z)-ve-xe),er=Be-pe,cn=Be+pe,a2=u(xe-R*ve),Y4=u(dt*er),W4=u(cn*a2),Z4=u(dt*a2),Q4=u(er*cn);return new E(Y4,W4,Q4,Z4)}subtract(w){return this.add(w.negate())}wNAF(w){return _.wNAFCached(this,b,w,E.normalizeZ)}multiply(w){let{p:R,f:P}=this.wNAF(y(w,n));return E.normalizeZ([R,P])[0]}multiplyUnsafe(w){let R=v(w);return R===Ze?T:this.equals(T)||R===Me?this:this.equals(I)?this.wNAF(R).p:_.unsafeLadder(this,R)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:R,ey:P,ez:C}=this,V=this.is0();w==null&&(w=V?r8:t.inv(C));let M=u(R*w),G=u(P*w),K=u(C*w);if(V)return{x:Ze,y:Me};if(K!==Me)throw new Error("invZ was invalid");return{x:M,y:G}}clearCofactor(){let{h:w}=e;return w===Me?this:this.multiplyUnsafe(w)}static fromHex(w,R=!1){let{d:P,a:C}=e,V=t.BYTES;w=oe("pointHex",w,V);let M=w.slice(),G=w[V-1];M[V-1]=G&-129;let K=$t(M);K===Ze||(R?y(K,l):y(K,t.ORDER));let z=u(K*K),le=u(z-Me),ie=u(P*z-C),{isValid:ve,value:xe}=f(le,ie);if(!ve)throw new Error("Point.fromHex: invalid y coordinate");let pe=(xe&Me)===Me,Be=(G&128)!==0;if(!R&&xe===Ze&&Be)throw new Error("Point.fromHex: x=0 and x_0=1");return Be!==pe&&(xe=u(-xe)),E.fromAffine({x:xe,y:K})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:R}=this.toAffine(),P=ar(R,t.BYTES);return P[P.length-1]|=w&Me?128:0,P}toHex(){return vt(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,Me,u(e.Gx*e.Gy)),E.ZERO=new E(Ze,Me,Me,Ze);let{BASE:I,ZERO:T}=E,_=x1(E,a*8);function j(B){return Z(B,n)}function $(B){return j($t(B))}function U(B){let w=a;B=oe("private key",B,w);let R=oe("hashed private key",s(B),2*w),P=h(R.slice(0,w)),C=R.slice(w,2*w),V=$(P),M=I.multiply(V),G=M.toRawBytes();return{head:P,prefix:C,scalar:V,point:M,pointBytes:G}}function ce(B){return U(B).pointBytes}function ae(B=new Uint8Array,...w){let R=Et(...w);return $(s(m(R,oe("context",B),!!i)))}function He(B,w,R={}){B=oe("message",B),i&&(B=i(B));let{prefix:P,scalar:C,pointBytes:V}=U(w),M=ae(R.context,P,B),G=I.multiply(M).toRawBytes(),K=ae(R.context,G,V,B),z=j(M+K*C);v(z);let le=Et(G,ar(z,t.BYTES));return oe("result",le,a*2)}let A=n8;function N(B,w,R,P=A){let{context:C,zip215:V}=P,M=t.BYTES;B=oe("signature",B,2*M),w=oe("message",w),i&&(w=i(w));let G=$t(B.slice(M,2*M)),K,z,le;try{K=E.fromHex(R,V),z=E.fromHex(B.slice(0,M),V),le=I.multiplyUnsafe(G)}catch{return!1}if(!V&&K.isSmallOrder())return!1;let ie=ae(C,z.toRawBytes(),K.toRawBytes(),w);return z.add(K.multiplyUnsafe(ie)).subtract(le).clearCofactor().equals(E.ZERO)}return I._setWindowSize(8),{CURVE:e,getPublicKey:ce,sign:He,verify:N,ExtendedPoint:E,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>o(t.BYTES),precompute(B=8,w=E.BASE){return w._setWindowSize(B),w.multiply(BigInt(3)),w}}}}var po=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),$0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Sf=BigInt(0),s8=BigInt(1),z0=BigInt(2),kf=BigInt(3),o8=BigInt(5),a8=BigInt(8);function c8(r){let e=BigInt(10),t=BigInt(20),n=BigInt(40),i=BigInt(80),s=po,a=r*r%s*r%s,c=re(a,z0,s)*a%s,l=re(c,s8,s)*r%s,u=re(l,o8,s)*l%s,f=re(u,e,s)*u%s,h=re(f,t,s)*f%s,m=re(h,n,s)*h%s,g=re(m,i,s)*m%s,d=re(g,i,s)*m%s,p=re(d,e,s)*u%s;return{pow_p_5_8:re(p,z0,s)*r%s,b2:a}}function l8(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function u8(r,e){let t=po,n=Z(e*e*e,t),i=Z(n*n*e,t),s=c8(r*i).pow_p_5_8,o=Z(r*n*s,t),a=Z(e*o*o,t),c=o,l=Z(o*$0,t),u=a===r,f=a===Z(-r,t),h=a===Z(-r*$0,t);return u&&(o=c),(f||h)&&(o=l),F0(o,t)&&(o=Z(-o,t)),{isValid:u||f,value:o}}var f8=v1(po,void 0,!0),h8={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:f8,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:a8,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Bn,randomBytes:Hr,adjustScalarBytes:l8,uvRatio:u8},$r=q0(h8);var zr=32,At=64,A1=32;function G0(){let r=$r.utils.randomPrivateKey(),e=$r.getPublicKey(r);return{privateKey:Z0(r,e),publicKey:e}}function j0(r){if(r.length!==A1)throw new TypeError('"seed" must be 32 bytes in length.');if(!(r instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=r,t=$r.getPublicKey(e);return{privateKey:Z0(e,t),publicKey:t}}function Y0(r,e){let t=r.subarray(0,A1);return $r.sign(e instanceof Uint8Array?e:e.subarray(),t)}function W0(r,e,t){return $r.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function Z0(r,e){let t=new Uint8Array(At);for(let n=0;n<A1;n++)t[n]=r[n],t[A1+n]=e[n];return t}var go={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function B1(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,i=r?.digest??"SHA-256",s=r?.saltLength??16,o=r?.iterations??32767,a=ee.get();t*=8;async function c(f,h){let m=a.getRandomValues(new Uint8Array(s)),g=a.getRandomValues(new Uint8Array(n)),d={name:e,iv:g};typeof h=="string"&&(h=q(h));let p;if(h.length===0){p=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(v,b,{name:e,length:t},!0,["encrypt"])}catch{p=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(v,b,{name:e,length:t},!0,["encrypt"])}let y=await a.subtle.encrypt(d,p,f);return J([m,d.iv,new Uint8Array(y)])}async function l(f,h){let m=f.subarray(0,s),g=f.subarray(s,s+n),d=f.subarray(s+n),p={name:e,iv:g};typeof h=="string"&&(h=q(h));let y;if(h.length===0)try{let b={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,S,{name:e,length:t},!0,["decrypt"])}catch{y=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,S,{name:e,length:t},!0,["decrypt"])}let v=await a.subtle.decrypt(p,y,d);return new Uint8Array(v)}return{encrypt:c,decrypt:l}}async function Gr(r,e){let n=await B1().encrypt(r,e);return fn.encode(n)}var jr={};ue(jr,{KeyType:()=>X,PrivateKey:()=>Xe,PublicKey:()=>Qe});var X;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(X||(X={}));var mo;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(mo||(mo={}));(function(r){r.codec=()=>Br(mo)})(X||(X={}));var Qe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),X.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:i.Type=X.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(o&7);break}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Qe||(Qe={}));var Xe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),X.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:i.Type=X.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(o&7);break}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Xe||(Xe={}));var lr=class{_key;constructor(e){this._key=Yr(e,zr)}verify(e,t){return W0(this._key,t,e)}marshal(){return this._key}get bytes(){return Qe.encode({Type:X.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Q(this.bytes,e.bytes)}hash(){let e=ne.digest(this.bytes);return ze(e)?e.then(({bytes:t})=>t):e.bytes}},Bt=class{_key;_publicKey;constructor(e,t){this._key=Yr(e,At),this._publicKey=Yr(t,zr)}sign(e){return Y0(this._key,e)}get public(){return new lr(this._publicKey)}marshal(){return this._key}get bytes(){return Xe.encode({Type:X.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Q(this.bytes,e.bytes)}async hash(){let e=ne.digest(this.bytes),t;return ze(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=mt.digest(this.public.bytes);return ge.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Gr(this.bytes,e);throw new x(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function p8(r){if(r.length>At){r=Yr(r,At+zr);let n=r.subarray(0,At),i=r.subarray(At,r.length);return new Bt(n,i)}r=Yr(r,At);let e=r.subarray(0,At),t=r.subarray(zr);return new Bt(e,t)}function g8(r){return r=Yr(r,zr),new lr(r)}async function m8(){let{privateKey:r,publicKey:e}=G0();return new Bt(r,e)}async function yo(r){let{privateKey:e,publicKey:t}=j0(r);return new Bt(e,t)}function Yr(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new x(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var X0={"P-256":256,"P-384":384,"P-521":521},y8=Object.keys(X0),wo=y8.join(" / ");async function J0(r){if(r!=="P-256"&&r!=="P-384"&&r!=="P-521")throw new x(`Unknown curve: ${r}. Must be ${wo}`,"ERR_INVALID_CURVE");let e=await ee.get().subtle.generateKey({name:"ECDH",namedCurve:r},!0,["deriveBits"]),t=async(s,o)=>{let a;o!=null?a=await ee.get().subtle.importKey("jwk",w8(r,o),{name:"ECDH",namedCurve:r},!1,["deriveBits"]):a=e.privateKey;let c=await ee.get().subtle.importKey("jwk",t3(r,s),{name:"ECDH",namedCurve:r},!1,[]),l=await ee.get().subtle.deriveBits({name:"ECDH",namedCurve:r,public:c},a,X0[r]);return new Uint8Array(l,0,l.byteLength)},n=await ee.get().subtle.exportKey("jwk",e.publicKey);return{key:b8(n),genSharedKey:t}}var e3={"P-256":32,"P-384":48,"P-521":66};function b8(r){if(r.crv==null||r.x==null||r.y==null)throw new x("JWK was missing components","ERR_INVALID_PARAMETERS");if(r.crv!=="P-256"&&r.crv!=="P-384"&&r.crv!=="P-521")throw new x(`Unknown curve: ${r.crv}. Must be ${wo}`,"ERR_INVALID_CURVE");let e=e3[r.crv];return J([Uint8Array.from([4]),to(r.x,e),to(r.y,e)],1+e*2)}function t3(r,e){if(r!=="P-256"&&r!=="P-384"&&r!=="P-521")throw new x(`Unknown curve: ${r}. Must be ${wo}`,"ERR_INVALID_CURVE");let t=e3[r];if(!Q(e.subarray(0,1),Uint8Array.from([4])))throw new x("Cannot unmarshal public key - invalid key format","ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:r,x:L(e.subarray(1,t+1),"base64url"),y:L(e.subarray(1+t),"base64url"),ext:!0}}var w8=(r,e)=>({...t3(r,e.public),d:L(e.private,"base64url")});var r3=J0;async function n3(r,e){let t=fn.decode(r);return B1().decrypt(t,e)}var i3={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function s3(r,e,t){let n=i3[r];if(n==null){let v=Object.keys(i3).join(" / ");throw new x(`unknown cipher type '${r}'. Must be ${v}`,"ERR_INVALID_CIPHER_TYPE")}if(e==null)throw new x("missing hash type","ERR_MISSING_HASH_TYPE");let i=n.keySize,s=n.ivSize,o=20,a=q("key expansion"),c=2*(s+i+o),l=await S0(e,t),u=await l.digest(a),f=[],h=0;for(;h<c;){let v=await l.digest(J([u,a])),b=v.length;h+b>c&&(b=c-h),f.push(v),h+=b,u=await l.digest(u)}let m=c/2,g=J(f),d=g.subarray(0,m),p=g.subarray(m,c),y=v=>({iv:v.subarray(0,s),cipherKey:v.subarray(s,s+i),macKey:v.subarray(s+i)});return{k1:y(d),k2:y(p)}}var _o={};ue(_o,{MAX_RSA_KEY_SIZE:()=>hr,RsaPrivateKey:()=>Zt,RsaPublicKey:()=>fr,fromJwk:()=>z8,generateKeyPair:()=>G8,unmarshalRsaPrivateKey:()=>Ro,unmarshalRsaPublicKey:()=>$8});function lt(r){if(isNaN(r)||r<=0)throw new x("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Hr(r)}var Wt={};ue(Wt,{exportToPem:()=>F8,importFromPem:()=>ko,jwkToPkcs1:()=>U8,jwkToPkix:()=>V8,pkcs1ToJwk:()=>D8,pkixToJwk:()=>O8});var I1=class extends Mr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,d1(e);let n=Ft(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,s=new Uint8Array(i);s.set(n.length>i?e.create().update(n).digest():n);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),s.fill(0)}update(e){return Vr(this),this.iHash.update(e),this}digestInto(e){Vr(this),Or(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kn=(r,e,t)=>new I1(r,e).update(t).digest();kn.create=(r,e)=>new I1(r,e);function v8(r,e,t,n){d1(r);let i=_0({dkLen:32,asyncTick:10},n),{c:s,dkLen:o,asyncTick:a}=i;if(Ur(s),Ur(o),Ur(a),s<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=Ft(e),l=Ft(t),u=new Uint8Array(o),f=kn.create(r,c),h=f._cloneInto().update(l);return{c:s,dkLen:o,asyncTick:a,DK:u,PRF:f,PRFSalt:h}}function x8(r,e,t,n,i){return r.destroy(),e.destroy(),n&&n.destroy(),i.fill(0),t}async function vo(r,e,t,n){let{c:i,dkLen:s,asyncTick:o,DK:a,PRF:c,PRFSalt:l}=v8(r,e,t,n),u,f=new Uint8Array(4),h=Fr(f),m=new Uint8Array(c.outputLen);for(let g=1,d=0;d<s;g++,d+=c.outputLen){let p=a.subarray(d,d+c.outputLen);h.setInt32(0,g,!1),(u=l._cloneInto(u)).update(f).digestInto(m),p.set(m.subarray(0,p.length)),await R0(i-1,o,()=>{c._cloneInto(u).update(m).digestInto(m);for(let y=0;y<p.length;y++)p[y]^=m[y]})}return x8(c,l,a,u,m)}var H=un(o3());function ur(r,e){let t=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)t+=r[r.length-1-n]*Math.pow(2,e*n);return t}function Gt(r,e,t=-1){let n=t,i=r,s=0,o=Math.pow(2,e);for(let a=1;a<8;a++){if(r<o){let c;if(n<0)c=new ArrayBuffer(a),s=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),s=n}let l=new Uint8Array(c);for(let u=a-1;u>=0;u--){let f=Math.pow(2,u*e);l[s-u-1]=Math.floor(i/f),i-=l[s-u-1]*f}return c}o*=Math.pow(2,e)}return new ArrayBuffer(0)}function R1(...r){let e=0,t=0;for(let s of r)e+=s.length;let n=new ArrayBuffer(e),i=new Uint8Array(n);for(let s of r)i.set(s,t),t+=s.length;return i}function Eo(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let e=new ArrayBuffer(this.valueHex.byteLength),t=new Uint8Array(e);for(let a=0;a<this.valueHex.byteLength;a++)t[a]=0;t[0]=r[0]&128;let n=ur(t,8),i=new ArrayBuffer(this.valueHex.byteLength),s=new Uint8Array(i);for(let a=0;a<this.valueHex.byteLength;a++)s[a]=r[a];return s[0]&=127,ur(s,8)-n}function a3(r){let e=r<0?r*-1:r,t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){let o=t-e,a=Gt(o,8,n),c=new Uint8Array(a);return c[0]|=128,a}let i=Gt(e,8,n),s=new Uint8Array(i);if(s[0]&128){let o=i.slice(0),a=new Uint8Array(o);i=new ArrayBuffer(i.byteLength+1),s=new Uint8Array(i);for(let c=0;c<o.byteLength;c++)s[c+1]=a[c];s[0]=0}return i}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function c3(r,e){if(r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let i=0;i<t.length;i++)if(t[i]!==n[i])return!1;return!0}function Ce(r,e){let t=r.toString(10);if(e<t.length)return"";let n=e-t.length,i=new Array(n);for(let o=0;o<n;o++)i[o]="0";return i.join("").concat(t)}var gh=Math.log(2);function T1(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Ao(r){let e=0,t=0;for(let i=0;i<r.length;i++){let s=r[i];e+=s.byteLength}let n=new Uint8Array(e);for(let i=0;i<r.length;i++){let s=r[i];n.set(new Uint8Array(s),t),t+=s.byteLength}return n.buffer}function Tt(r,e,t,n){return e instanceof Uint8Array?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var Tn=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return Ao(this.items)}},Rn=[new Uint8Array([1])],l3="0123456789";var Qr="",et=new ArrayBuffer(0),Bo=new Uint8Array(0),_n="EndOfContent",f3="OCTET STRING",h3="BIT STRING";function _t(r){var e;return e=class extends r{constructor(...n){var i;super(...n);let s=n[0]||{};this.isHexOnly=(i=s.isHexOnly)!==null&&i!==void 0?i:!1,this.valueHexView=s.valueHex?H.BufferSourceConverter.toUint8Array(s.valueHex):Bo}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,i,s){let o=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!Tt(this,o,i,s))return-1;let a=i+s;return this.valueHexView=o.subarray(i,a),this.valueHexView.length?(this.blockLength=s,a):(this.warnings.push("Zero buffer length"),i)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",et)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:H.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var St=class{constructor({blockLength:e=0,error:t=Qr,warnings:n=[],valueBeforeDecode:i=Bo}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=H.BufferSourceConverter.toUint8Array(i)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:H.Convert.ToHex(this.valueBeforeDecodeView)}}};St.NAME="baseBlock";var Re=class extends St{fromBER(e,t,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};Re.NAME="valueBlock";var _1=class extends _t(St){constructor({idBlock:e={}}={}){var t,n,i,s;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?H.BufferSourceConverter.toUint8Array(e.valueHex):Bo,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(i=e.tagNumber)!==null&&i!==void 0?i:-1,this.isConstructed=(s=e.isConstructed)!==null&&s!==void 0?s:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(e=!1){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:return this.error="Unknown tag class",et}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let i=new Uint8Array(1);if(!e){let s=this.tagNumber;s&=31,t|=s,i[0]=t}return i.buffer}if(!this.isHexOnly){let i=Gt(this.tagNumber,7),s=new Uint8Array(i),o=i.byteLength,a=new Uint8Array(o+1);if(a[0]=t|31,!e){for(let c=0;c<o-1;c++)a[c+1]=s[c]|128;a[o]=s[o-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){let i=this.valueHexView;for(let s=0;s<i.length-1;s++)n[s+1]=i[s]|128;n[this.valueHexView.byteLength]=i[i.length-1]}return n.buffer}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;let s=i.subarray(t,t+n);if(s.length===0)return this.error="Zero buffer length",-1;switch(s[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(s[0]&32)===32,this.isHexOnly=!1;let a=s[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,l=this.valueHexView=new Uint8Array(255),u=255;for(;s[c]&128;){if(l[c-1]=s[c]&127,c++,c>=s.length)return this.error="End of input reached before message was fully decoded",-1;if(c===u){u+=255;let h=new Uint8Array(u);for(let m=0;m<l.length;m++)h[m]=l[m];l=this.valueHexView=new Uint8Array(u)}}this.blockLength=c+1,l[c-1]=s[c]&127;let f=new Uint8Array(c);for(let h=0;h<c;h++)f[h]=l[h];l=this.valueHexView=new Uint8Array(c),l.set(f),this.blockLength<=9?this.tagNumber=ur(l,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};_1.NAME="identificationBlock";var N1=class extends St{constructor({lenBlock:e={}}={}){var t,n,i;super(),this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==void 0?t:!1,this.longFormUsed=(n=e.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(i=e.length)!==null&&i!==void 0?i:0}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;let s=i.subarray(t,t+n);if(s.length===0)return this.error="Zero buffer length",-1;if(s[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=s[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(s[0]&128),this.longFormUsed===!1)return this.length=s[0],this.blockLength=1,t+this.blockLength;let o=s[0]&127;if(o>8)return this.error="Too big integer",-1;if(o+1>s.length)return this.error="End of input reached before message was fully decoded",-1;let a=t+1,c=i.subarray(a,a+o);return c[o-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=ur(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=o+1,t+this.blockLength}toBER(e=!1){let t,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=128),t;if(this.longFormUsed){let i=Gt(this.length,8);if(i.byteLength>127)return this.error="Too big length",et;if(t=new ArrayBuffer(i.byteLength+1),e)return t;let s=new Uint8Array(i);n=new Uint8Array(t),n[0]=i.byteLength|128;for(let o=0;o<i.byteLength;o++)n[o+1]=s[o];return t}return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=this.length),t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};N1.NAME="lengthBlock";var k={},Ae=class extends St{constructor({name:e=Qr,optional:t=!1,primitiveSchema:n,...i}={},s){super(i),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new _1(i),this.lenBlock=new N1(i),this.valueBlock=s?new s(i):new Re(i)}fromBER(e,t,n){let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}toBER(e,t){let n=t||new Tn;t||d3(this);let i=this.idBlock.toBER(e);if(n.write(i),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(e,n),n.write(new ArrayBuffer(2));else{let s=this.valueBlock.toBER(e);this.lenBlock.length=s.byteLength;let o=this.lenBlock.toBER(e);n.write(o),n.write(s)}return t?et:n.final()}toJSON(){let e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(e.primitiveSchema=this.primitiveSchema.toJSON()),e}toString(e="ascii"){return e==="ascii"?this.onAsciiEncoding():H.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${H.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(e){if(this===e)return!0;if(!(e instanceof this.constructor))return!1;let t=this.toBER(),n=e.toBER();return c3(t,n)}};Ae.NAME="BaseBlock";function d3(r){if(r instanceof k.Constructed)for(let e of r.valueBlock.value)d3(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var L1=class extends Ae{constructor({value:e=Qr,...t}={},n){super(t,n),e&&this.fromString(e)}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}fromBER(e,t,n){let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};L1.NAME="BaseStringBlock";var P1=class extends _t(Re){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};P1.NAME="PrimitiveValueBlock";var p3,C1=class extends Ae{constructor(e={}){super(e,P1),this.idBlock.isConstructed=!1}};p3=C1;k.Primitive=p3;C1.NAME="PRIMITIVE";function _8(r,e){if(r instanceof e)return r;let t=new e;return t.idBlock=r.idBlock,t.lenBlock=r.lenBlock,t.warnings=r.warnings,t.valueBeforeDecodeView=r.valueBeforeDecodeView,t}function di(r,e=0,t=r.length){let n=e,i=new Ae({},Re),s=new St;if(!Tt(s,r,e,t))return i.error=s.error,{offset:-1,result:i};if(!r.subarray(e,e+t).length)return i.error="Zero buffer length",{offset:-1,result:i};let a=i.idBlock.fromBER(r,e,t);if(i.idBlock.warnings.length&&i.warnings.concat(i.idBlock.warnings),a===-1)return i.error=i.idBlock.error,{offset:-1,result:i};if(e=a,t-=i.idBlock.blockLength,a=i.lenBlock.fromBER(r,e,t),i.lenBlock.warnings.length&&i.warnings.concat(i.lenBlock.warnings),a===-1)return i.error=i.lenBlock.error,{offset:-1,result:i};if(e=a,t-=i.lenBlock.blockLength,!i.idBlock.isConstructed&&i.lenBlock.isIndefiniteForm)return i.error="Indefinite length form used for primitive encoding form",{offset:-1,result:i};let c=Ae;switch(i.idBlock.tagClass){case 1:if(i.idBlock.tagNumber>=37&&i.idBlock.isHexOnly===!1)return i.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:i};switch(i.idBlock.tagNumber){case 0:if(i.idBlock.isConstructed&&i.lenBlock.length>0)return i.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:i};c=k.EndOfContent;break;case 1:c=k.Boolean;break;case 2:c=k.Integer;break;case 3:c=k.BitString;break;case 4:c=k.OctetString;break;case 5:c=k.Null;break;case 6:c=k.ObjectIdentifier;break;case 10:c=k.Enumerated;break;case 12:c=k.Utf8String;break;case 13:c=k.RelativeObjectIdentifier;break;case 14:c=k.TIME;break;case 15:return i.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:i};case 16:c=k.Sequence;break;case 17:c=k.Set;break;case 18:c=k.NumericString;break;case 19:c=k.PrintableString;break;case 20:c=k.TeletexString;break;case 21:c=k.VideotexString;break;case 22:c=k.IA5String;break;case 23:c=k.UTCTime;break;case 24:c=k.GeneralizedTime;break;case 25:c=k.GraphicString;break;case 26:c=k.VisibleString;break;case 27:c=k.GeneralString;break;case 28:c=k.UniversalString;break;case 29:c=k.CharacterString;break;case 30:c=k.BmpString;break;case 31:c=k.DATE;break;case 32:c=k.TimeOfDay;break;case 33:c=k.DateTime;break;case 34:c=k.Duration;break;default:{let l=i.idBlock.isConstructed?new k.Constructed:new k.Primitive;l.idBlock=i.idBlock,l.lenBlock=i.lenBlock,l.warnings=i.warnings,i=l}}break;case 2:case 3:case 4:default:c=i.idBlock.isConstructed?k.Constructed:k.Primitive}return i=_8(i,c),a=i.fromBER(r,e,i.lenBlock.isIndefiniteForm?t:i.lenBlock.length),i.valueBeforeDecodeView=r.subarray(n,n+i.blockLength),{offset:a,result:i}}function Xr(r){if(!r.byteLength){let e=new Ae({},Re);return e.error="Input buffer has zero length",{offset:-1,result:e}}return di(H.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function N8(r,e){return r?1:e}var ut=class extends Re{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;if(this.valueBeforeDecodeView=i.subarray(t,t+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),t;let s=t;for(;N8(this.isIndefiniteForm,n)>0;){let o=di(i,s,n);if(o.offset===-1)return this.error=o.result.error,this.warnings.concat(o.result.warnings),-1;if(s=o.offset,this.blockLength+=o.result.blockLength,n-=o.result.blockLength,this.value.push(o.result),this.isIndefiniteForm&&o.result.constructor.NAME===_n)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===_n?this.value.pop():this.warnings.push("No EndOfContent block encoded")),s}toBER(e,t){let n=t||new Tn;for(let i=0;i<this.value.length;i++)this.value[i].toBER(e,n);return t?et:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};ut.NAME="ConstructedValueBlock";var g3,jt=class extends Ae{constructor(e={}){super(e,ut),this.idBlock.isConstructed=!0}fromBER(e,t,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){let e=[];for(let n of this.valueBlock.value)e.push(n.toString("ascii").split(`
|
2
|
+
"use strict";var Libp2PKadDht=(()=>{var r5=Object.create;var jn=Object.defineProperty;var n5=Object.getOwnPropertyDescriptor;var i5=Object.getOwnPropertyNames;var s5=Object.getPrototypeOf,o5=Object.prototype.hasOwnProperty;var ln=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),ue=(r,e)=>{for(var t in e)jn(r,t,{get:e[t],enumerable:!0})},g2=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of i5(e))!o5.call(r,i)&&i!==t&&jn(r,i,{get:()=>e[i],enumerable:!(n=n5(e,i))||n.enumerable});return r};var un=(r,e,t)=>(t=r!=null?r5(s5(r)):{},g2(e||!r||!r.__esModule?jn(t,"default",{value:r,enumerable:!0}):t,r)),a5=r=>g2(jn({},"__esModule",{value:!0}),r);var p0=ln(An=>{(function(){var r,e,t,n,i,s,o,a;a=function(c){var l,u,f,h;return l=(c&255<<24)>>>24,u=(c&255<<16)>>>16,f=(c&65280)>>>8,h=c&255,[l,u,f,h].join(".")},o=function(c){var l,u,f,h,m,g;for(l=[],f=h=0;h<=3&&c.length!==0;f=++h){if(f>0){if(c[0]!==".")throw new Error("Invalid IP");c=c.substring(1)}g=e(c),m=g[0],u=g[1],c=c.substring(u),l.push(m)}if(c.length!==0)throw new Error("Invalid IP");switch(l.length){case 1:if(l[0]>4294967295)throw new Error("Invalid IP");return l[0]>>>0;case 2:if(l[0]>255||l[1]>16777215)throw new Error("Invalid IP");return(l[0]<<24|l[1])>>>0;case 3:if(l[0]>255||l[1]>255||l[2]>65535)throw new Error("Invalid IP");return(l[0]<<24|l[1]<<16|l[2])>>>0;case 4:if(l[0]>255||l[1]>255||l[2]>255||l[3]>255)throw new Error("Invalid IP");return(l[0]<<24|l[1]<<16|l[2]<<8|l[3])>>>0;default:throw new Error("Invalid IP")}},t=function(c){return c.charCodeAt(0)},n=t("0"),s=t("a"),i=t("A"),e=function(c){var l,u,f,h,m;for(h=0,l=10,u="9",f=0,c.length>1&&c[f]==="0"&&(c[f+1]==="x"||c[f+1]==="X"?(f+=2,l=16):"0"<=c[f+1]&&c[f+1]<="9"&&(f++,l=8,u="7")),m=f;f<c.length;){if("0"<=c[f]&&c[f]<=u)h=h*l+(t(c[f])-n)>>>0;else if(l===16)if("a"<=c[f]&&c[f]<="f")h=h*l+(10+t(c[f])-s)>>>0;else if("A"<=c[f]&&c[f]<="F")h=h*l+(10+t(c[f])-i)>>>0;else break;else break;if(h>4294967295)throw new Error("too large");f++}if(f===m)throw new Error("empty octet");return[h,f]},r=function(){function c(l,u){var f,h,m,g;if(typeof l!="string")throw new Error("Missing `net' parameter");if(u||(g=l.split("/",2),l=g[0],u=g[1]),u||(u=32),typeof u=="string"&&u.indexOf(".")>-1){try{this.maskLong=o(u)}catch(d){throw f=d,new Error("Invalid mask: "+u)}for(h=m=32;m>=0;h=--m)if(this.maskLong===4294967295<<32-h>>>0){this.bitmask=h;break}}else if(u||u===0)this.bitmask=parseInt(u,10),this.maskLong=0,this.bitmask>0&&(this.maskLong=4294967295<<32-this.bitmask>>>0);else throw new Error("Invalid mask: empty");try{this.netLong=(o(l)&this.maskLong)>>>0}catch(d){throw f=d,new Error("Invalid net address: "+l)}if(!(this.bitmask<=32))throw new Error("Invalid mask for ip4: "+u);this.size=Math.pow(2,32-this.bitmask),this.base=a(this.netLong),this.mask=a(this.maskLong),this.hostmask=a(~this.maskLong),this.first=this.bitmask<=30?a(this.netLong+1):this.base,this.last=this.bitmask<=30?a(this.netLong+this.size-2):a(this.netLong+this.size-1),this.broadcast=this.bitmask<=30?a(this.netLong+this.size-1):void 0}return c.prototype.contains=function(l){return typeof l=="string"&&(l.indexOf("/")>0||l.split(".").length!==4)&&(l=new c(l)),l instanceof c?this.contains(l.base)&&this.contains(l.broadcast||l.last):(o(l)&this.maskLong)>>>0===(this.netLong&this.maskLong)>>>0},c.prototype.next=function(l){return l==null&&(l=1),new c(a(this.netLong+this.size*l),this.mask)},c.prototype.forEach=function(l){var u,f,h;for(h=o(this.first),f=o(this.last),u=0;h<=f;)l(a(h),h,u),u++,h++},c.prototype.toString=function(){return this.base+"/"+this.bitmask},c}(),An.ip2long=o,An.long2ip=a,An.Netmask=r}).call(An)});var o3=ln(Wr=>{"use strict";var E8="[object ArrayBuffer]",It=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===E8}static toArrayBuffer(e){return this.isArrayBuffer(e)?e:e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t)return e;if(this.isArrayBuffer(e))return new t(e);if(this.isArrayBufferView(e))return new t(e.buffer,e.byteOffset,e.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){let n=r.toUint8Array(e),i=r.toUint8Array(t);if(n.length!==i.byteLength)return!1;for(let s=0;s<n.length;s++)if(n[s]!==i[s])return!1;return!0}static concat(...e){let t;Array.isArray(e[0])&&!(e[1]instanceof Function)||Array.isArray(e[0])&&e[1]instanceof Function?t=e[0]:e[e.length-1]instanceof Function?t=e.slice(0,e.length-1):t=e;let n=0;for(let o of t)n+=o.byteLength;let i=new Uint8Array(n),s=0;for(let o of t){let a=this.toUint8Array(o);i.set(a,s),s+=a.length}return e[e.length-1]instanceof Function?this.toView(i,e[e.length-1]):i.buffer}},xo="string",A8=/^[0-9a-f]+$/i,B8=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,I8=/^[a-zA-Z0-9-_]+$/,S1=class{static fromString(e){let t=unescape(encodeURIComponent(e)),n=new Uint8Array(t.length);for(let i=0;i<t.length;i++)n[i]=t.charCodeAt(i);return n.buffer}static toString(e){let t=It.toUint8Array(e),n="";for(let s=0;s<t.length;s++)n+=String.fromCharCode(t[s]);return decodeURIComponent(escape(n))}},Ge=class{static toString(e,t=!1){let n=It.toArrayBuffer(e),i=new DataView(n),s="";for(let o=0;o<n.byteLength;o+=2){let a=i.getUint16(o,t);s+=String.fromCharCode(a)}return s}static fromString(e,t=!1){let n=new ArrayBuffer(e.length*2),i=new DataView(n);for(let s=0;s<e.length;s++)i.setUint16(s*2,e.charCodeAt(s),t);return n}},k1=class r{static isHex(e){return typeof e===xo&&A8.test(e)}static isBase64(e){return typeof e===xo&&B8.test(e)}static isBase64Url(e){return typeof e===xo&&I8.test(e)}static ToString(e,t="utf8"){let n=It.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(n);case"binary":return this.ToBinary(n);case"hex":return this.ToHex(n);case"base64":return this.ToBase64(n);case"base64url":return this.ToBase64Url(n);case"utf16le":return Ge.toString(n,!0);case"utf16":case"utf16be":return Ge.toString(n);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e)return new ArrayBuffer(0);switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return Ge.fromString(e,!0);case"utf16":case"utf16be":return Ge.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=It.toUint8Array(e);if(typeof btoa<"u"){let n=this.ToString(t,"binary");return btoa(n)}else return Buffer.from(t).toString("base64")}static FromBase64(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64(t))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(t)):new Uint8Array(Buffer.from(t,"base64")).buffer}static FromBase64Url(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64Url(t))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return S1.fromString(e);case"utf16":case"utf16be":return Ge.fromString(e);case"utf16le":case"usc2":return Ge.fromString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return S1.toString(e);case"utf16":case"utf16be":return Ge.toString(e);case"utf16le":case"usc2":return Ge.toString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){let t=e.length,n=new Uint8Array(t);for(let i=0;i<t;i++)n[i]=e.charCodeAt(i);return n.buffer}static ToBinary(e){let t=It.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return n}static ToHex(e){let t=It.toUint8Array(e),n="",i=t.length;for(let s=0;s<i;s++){let o=t[s];o<16&&(n+="0"),n+=o.toString(16)}return n}static FromHex(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isHex(t))throw new TypeError("Argument 'hexString' is not HEX encoded");t.length%2&&(t=`0${t}`);let n=new Uint8Array(t.length/2);for(let i=0;i<t.length;i=i+2){let s=t.slice(i,i+2);n[i/2]=parseInt(s,16)}return n.buffer}static ToUtf16String(e,t=!1){return Ge.toString(e,t)}static FromUtf16String(e,t=!1){return Ge.fromString(e,t)}static Base64Padding(e){let t=4-e.length%4;if(t<4)for(let n=0;n<t;n++)e+="=";return e}static formatString(e){return e?.replace(/[\n\r\t ]/g,"")||""}};k1.DEFAULT_UTF8_ENCODING="utf8";function S8(r,...e){let t=arguments[0];for(let n=1;n<arguments.length;n++){let i=arguments[n];for(let s in i)t[s]=i[s]}return t}function k8(...r){let e=r.map(i=>i.byteLength).reduce((i,s)=>i+s),t=new Uint8Array(e),n=0;return r.map(i=>new Uint8Array(i)).forEach(i=>{for(let s of i)t[n++]=s}),t.buffer}function R8(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let i=0;i<r.byteLength;i++)if(t[i]!==n[i])return!1;return!0}Wr.BufferSourceConverter=It;Wr.Convert=k1;Wr.assign=S8;Wr.combine=k8;Wr.isEqual=R8});var N4=ln(($g,_4)=>{_4.exports=function(r){if(!r)throw Error("hashlru must have a max value, of type number, greater than 0");var e=0,t=Object.create(null),n=Object.create(null);function i(s,o){t[s]=o,e++,e>=r&&(e=0,n=t,t=Object.create(null))}return{has:function(s){return t[s]!==void 0||n[s]!==void 0},remove:function(s){t[s]!==void 0&&(t[s]=void 0),n[s]!==void 0&&(n[s]=void 0)},get:function(s){var o=t[s];if(o!==void 0)return o;if((o=n[s])!==void 0)return i(s,o),o},set:function(s,o){t[s]!==void 0?t[s]=o:i(s,o)},clear:function(){t=Object.create(null),n=Object.create(null)}}}});var P4=ln((zg,Xo)=>{"use strict";var C7=Object.prototype.hasOwnProperty,Ne="~";function Mn(){}Object.create&&(Mn.prototype=Object.create(null),new Mn().__proto__||(Ne=!1));function D7(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function L4(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var s=new D7(t,n||r,i),o=Ne?Ne+e:e;return r._events[o]?r._events[o].fn?r._events[o]=[r._events[o],s]:r._events[o].push(s):(r._events[o]=s,r._eventsCount++),r}function Ii(r,e){--r._eventsCount===0?r._events=new Mn:delete r._events[e]}function Te(){this._events=new Mn,this._eventsCount=0}Te.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)C7.call(t,n)&&e.push(Ne?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};Te.prototype.listeners=function(e){var t=Ne?Ne+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,s=n.length,o=new Array(s);i<s;i++)o[i]=n[i].fn;return o};Te.prototype.listenerCount=function(e){var t=Ne?Ne+e:e,n=this._events[t];return n?n.fn?1:n.length:0};Te.prototype.emit=function(e,t,n,i,s,o){var a=Ne?Ne+e:e;if(!this._events[a])return!1;var c=this._events[a],l=arguments.length,u,f;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,s),!0;case 6:return c.fn.call(c.context,t,n,i,s,o),!0}for(f=1,u=new Array(l-1);f<l;f++)u[f-1]=arguments[f];c.fn.apply(c.context,u)}else{var h=c.length,m;for(f=0;f<h;f++)switch(c[f].once&&this.removeListener(e,c[f].fn,void 0,!0),l){case 1:c[f].fn.call(c[f].context);break;case 2:c[f].fn.call(c[f].context,t);break;case 3:c[f].fn.call(c[f].context,t,n);break;case 4:c[f].fn.call(c[f].context,t,n,i);break;default:if(!u)for(m=1,u=new Array(l-1);m<l;m++)u[m-1]=arguments[m];c[f].fn.apply(c[f].context,u)}}return!0};Te.prototype.on=function(e,t,n){return L4(this,e,t,n,!1)};Te.prototype.once=function(e,t,n){return L4(this,e,t,n,!0)};Te.prototype.removeListener=function(e,t,n,i){var s=Ne?Ne+e:e;if(!this._events[s])return this;if(!t)return Ii(this,s),this;var o=this._events[s];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&Ii(this,s);else{for(var a=0,c=[],l=o.length;a<l;a++)(o[a].fn!==t||i&&!o[a].once||n&&o[a].context!==n)&&c.push(o[a]);c.length?this._events[s]=c.length===1?c[0]:c:Ii(this,s)}return this};Te.prototype.removeAllListeners=function(e){var t;return e?(t=Ne?Ne+e:e,this._events[t]&&Ii(this,t)):(this._events=new Mn,this._eventsCount=0),this};Te.prototype.off=Te.prototype.removeListener;Te.prototype.addListener=Te.prototype.on;Te.prefixed=Ne;Te.EventEmitter=Te;typeof Xo<"u"&&(Xo.exports=Te)});var j4=ln((Ly,G4)=>{"use strict";function z4(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function ec(r,e,t){if(!r||typeof r=="string")throw new TypeError("Please pass an Error to err-code");t||(t={}),typeof e=="object"&&(t=e,e=""),e&&(t.code=e);try{return z4(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),z4(new i,t)}}G4.exports=ec});var ac={};ue(ac,{EventTypes:()=>o2,MessageType:()=>F,Record:()=>me,kadDHT:()=>oc,passthroughMapper:()=>b0,removePrivateAddressesMapper:()=>f1,removePublicAddressesMapper:()=>y0});var m2=Symbol.for("@libp2p/content-routing");var y2=Symbol.for("@libp2p/peer-discovery");var Qi=Symbol.for("@libp2p/peer-id");var b2=Symbol.for("@libp2p/peer-routing");var Pt=class r extends Error{code;type;constructor(e="The operation was aborted"){super(e),this.name="AbortError",this.code=r.code,this.type=r.type}static code="ABORT_ERR";static type="aborted"},x=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var Ee=(r,...e)=>{try{[...e]}catch{}};var Le=class extends EventTarget{#e=new Map;constructor(){super(),Ee(1/0,this)}listenerCount(e){let t=this.#e.get(e);return t==null?0:t.length}addEventListener(e,t,n){super.addEventListener(e,t,n);let i=this.#e.get(e);i==null&&(i=[],this.#e.set(e,i)),i.push({callback:t,once:(n!==!0&&n!==!1&&n?.once)??!1})}removeEventListener(e,t,n){super.removeEventListener(e.toString(),t??null,n);let i=this.#e.get(e);i!=null&&(i=i.filter(({callback:s})=>s!==t),this.#e.set(e,i))}dispatchEvent(e){let t=super.dispatchEvent(e),n=this.#e.get(e.type);return n==null||(n=n.filter(({once:i})=>!i),this.#e.set(e.type,n)),t}safeDispatchEvent(e,t={}){return this.dispatchEvent(new De(e,t))}},Xi=class extends Event{detail;constructor(e,t){super(e,t),this.detail=t?.detail}},De=globalThis.CustomEvent??Xi;function w2(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function v2(...r){let e=[];for(let t of r)w2(t)&&e.push(t);await Promise.all(e.map(async t=>{t.beforeStart!=null&&await t.beforeStart()})),await Promise.all(e.map(async t=>{await t.start()})),await Promise.all(e.map(async t=>{t.afterStart!=null&&await t.afterStart()}))}async function x2(...r){let e=[];for(let t of r)w2(t)&&e.push(t);await Promise.all(e.map(async t=>{t.beforeStop!=null&&await t.beforeStop()})),await Promise.all(e.map(async t=>{await t.stop()})),await Promise.all(e.map(async t=>{t.afterStop!=null&&await t.afterStop()}))}var E2=Symbol.for("@libp2p/service-capabilities"),A2=Symbol.for("@libp2p/service-dependencies");function c5(r){return r[Symbol.asyncIterator]!=null}function l5(r){if(c5(r))return(async()=>{for await(let e of r);})();for(let e of r);}var Ji=l5;function fe(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var B2="/ipfs/kad/1.0.0",I2="/dht/record",es="/dht/provider";function Pe(r=0){return new Uint8Array(r)}function be(r=0){return new Uint8Array(r)}var u5=Math.pow(2,7),f5=Math.pow(2,14),h5=Math.pow(2,21),ts=Math.pow(2,28),rs=Math.pow(2,35),ns=Math.pow(2,42),is=Math.pow(2,49),Y=128,Ie=127;function he(r){if(r<u5)return 1;if(r<f5)return 2;if(r<h5)return 3;if(r<ts)return 4;if(r<rs)return 5;if(r<ns)return 6;if(r<is)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function ss(r,e,t=0){switch(he(r)){case 8:e[t++]=r&255|Y,r/=128;case 7:e[t++]=r&255|Y,r/=128;case 6:e[t++]=r&255|Y,r/=128;case 5:e[t++]=r&255|Y,r/=128;case 4:e[t++]=r&255|Y,r>>>=7;case 3:e[t++]=r&255|Y,r>>>=7;case 2:e[t++]=r&255|Y,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function d5(r,e,t=0){switch(he(r)){case 8:e.set(t++,r&255|Y),r/=128;case 7:e.set(t++,r&255|Y),r/=128;case 6:e.set(t++,r&255|Y),r/=128;case 5:e.set(t++,r&255|Y),r/=128;case 4:e.set(t++,r&255|Y),r>>>=7;case 3:e.set(t++,r&255|Y),r>>>=7;case 2:e.set(t++,r&255|Y),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function os(r,e){let t=r[e],n=0;if(n+=t&Ie,t<Y||(t=r[e+1],n+=(t&Ie)<<7,t<Y)||(t=r[e+2],n+=(t&Ie)<<14,t<Y)||(t=r[e+3],n+=(t&Ie)<<21,t<Y)||(t=r[e+4],n+=(t&Ie)*ts,t<Y)||(t=r[e+5],n+=(t&Ie)*rs,t<Y)||(t=r[e+6],n+=(t&Ie)*ns,t<Y)||(t=r[e+7],n+=(t&Ie)*is,t<Y))return n;throw new RangeError("Could not decode varint")}function p5(r,e){let t=r.get(e),n=0;if(n+=t&Ie,t<Y||(t=r.get(e+1),n+=(t&Ie)<<7,t<Y)||(t=r.get(e+2),n+=(t&Ie)<<14,t<Y)||(t=r.get(e+3),n+=(t&Ie)<<21,t<Y)||(t=r.get(e+4),n+=(t&Ie)*ts,t<Y)||(t=r.get(e+5),n+=(t&Ie)*rs,t<Y)||(t=r.get(e+6),n+=(t&Ie)*ns,t<Y)||(t=r.get(e+7),n+=(t&Ie)*is,t<Y))return n;throw new RangeError("Could not decode varint")}function Ke(r,e,t=0){return e==null&&(e=be(he(r))),e instanceof Uint8Array?ss(r,e,t):d5(r,e,t)}function Ue(r,e=0){return r instanceof Uint8Array?os(r,e):p5(r,e)}var as=new Float32Array([-0]),Ct=new Uint8Array(as.buffer);function S2(r,e,t){as[0]=r,e[t]=Ct[0],e[t+1]=Ct[1],e[t+2]=Ct[2],e[t+3]=Ct[3]}function k2(r,e){return Ct[0]=r[e],Ct[1]=r[e+1],Ct[2]=r[e+2],Ct[3]=r[e+3],as[0]}var cs=new Float64Array([-0]),Se=new Uint8Array(cs.buffer);function R2(r,e,t){cs[0]=r,e[t]=Se[0],e[t+1]=Se[1],e[t+2]=Se[2],e[t+3]=Se[3],e[t+4]=Se[4],e[t+5]=Se[5],e[t+6]=Se[6],e[t+7]=Se[7]}function T2(r,e){return Se[0]=r[e],Se[1]=r[e+1],Se[2]=r[e+2],Se[3]=r[e+3],Se[4]=r[e+4],Se[5]=r[e+5],Se[6]=r[e+6],Se[7]=r[e+7],cs[0]}var g5=BigInt(Number.MAX_SAFE_INTEGER),m5=BigInt(Number.MIN_SAFE_INTEGER),Oe=class r{lo;hi;constructor(e,t){this.lo=e|0,this.hi=t|0}toNumber(e=!1){if(!e&&this.hi>>>31>0){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(t+n*4294967296)}return this.lo+this.hi*4294967296}toBigInt(e=!1){if(e)return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n);if(this.hi>>>31){let t=~this.lo+1>>>0,n=~this.hi>>>0;return t===0&&(n=n+1>>>0),-(BigInt(t)+(BigInt(n)<<32n))}return BigInt(this.lo>>>0)+(BigInt(this.hi>>>0)<<32n)}toString(e=!1){return this.toBigInt(e).toString()}zzEncode(){let e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this}zzDecode(){let e=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this}length(){let e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return n===0?t===0?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:n<128?9:10}static fromBigInt(e){if(e===0n)return tr;if(e<g5&&e>m5)return this.fromNumber(Number(e));let t=e<0n;t&&(e=-e);let n=e>>32n,i=e-(n<<32n);return t&&(n=~n|0n,i=~i|0n,++i>_2&&(i=0n,++n>_2&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return tr;let t=e<0;t&&(e=-e);let n=e>>>0,i=(e-n)/4294967296>>>0;return t&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new r(n,i)}static from(e){return typeof e=="number"?r.fromNumber(e):typeof e=="bigint"?r.fromBigInt(e):typeof e=="string"?r.fromBigInt(BigInt(e)):e.low!=null||e.high!=null?new r(e.low>>>0,e.high>>>0):tr}},tr=new Oe(0,0);tr.toBigInt=function(){return 0n};tr.zzEncode=tr.zzDecode=function(){return this};tr.length=function(){return 1};var _2=4294967296n;function N2(r){let e=0,t=0;for(let n=0;n<r.length;++n)t=r.charCodeAt(n),t<128?e+=1:t<2048?e+=2:(t&64512)===55296&&(r.charCodeAt(n+1)&64512)===56320?(++n,e+=4):e+=3;return e}function L2(r,e,t){if(t-e<1)return"";let i,s=[],o=0,a;for(;e<t;)a=r[e++],a<128?s[o++]=a:a>191&&a<224?s[o++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,s[o++]=55296+(a>>10),s[o++]=56320+(a&1023)):s[o++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&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 ls(r,e,t){let n=t,i,s;for(let o=0;o<r.length;++o)i=r.charCodeAt(o),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((s=r.charCodeAt(o+1))&64512)===56320?(i=65536+((i&1023)<<10)+(s&1023),++o,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function Ye(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function Yn(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var us=class{buf;pos;len;_slice=Uint8Array.prototype.subarray;constructor(e){this.buf=e,this.pos=0,this.len=e.length}uint32(){let e=4294967295;if(e=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(e=(e|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(e=(e|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return e;if((this.pos+=5)>this.len)throw this.pos=this.len,Ye(this,10);return e}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)|0}bool(){return this.uint32()!==0}fixed32(){if(this.pos+4>this.len)throw Ye(this,4);return Yn(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Ye(this,4);return Yn(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Ye(this,4);let e=k2(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Ye(this,4);let e=T2(this.buf,this.pos);return this.pos+=8,e}bytes(){let e=this.uint32(),t=this.pos,n=this.pos+e;if(n>this.len)throw Ye(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return L2(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Ye(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Ye(this);while(this.buf[this.pos++]&128);return this}skipType(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(e=this.uint32()&7)!==4;)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error(`invalid wire type ${e} at offset ${this.pos}`)}return this}readLongVarint(){let e=new Oe(0,0),t=0;if(this.len-this.pos>4){for(;t<4;++t)if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(this.buf[this.pos]&127)<<28)>>>0,e.hi=(e.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return e;t=0}else{for(;t<3;++t){if(this.pos>=this.len)throw Ye(this);if(e.lo=(e.lo|(this.buf[this.pos]&127)<<t*7)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(this.buf[this.pos++]&127)<<t*7)>>>0,e}if(this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw Ye(this);if(e.hi=(e.hi|(this.buf[this.pos]&127)<<t*7+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}readFixed64(){if(this.pos+8>this.len)throw Ye(this,8);let e=Yn(this.buf,this.pos+=4),t=Yn(this.buf,this.pos+=4);return new Oe(e,t)}int64(){return this.readLongVarint().toBigInt()}int64Number(){return this.readLongVarint().toNumber()}int64String(){return this.readLongVarint().toString()}uint64(){return this.readLongVarint().toBigInt(!0)}uint64Number(){let e=os(this.buf,this.pos);return this.pos+=he(e),e}uint64String(){return this.readLongVarint().toString(!0)}sint64(){return this.readLongVarint().zzDecode().toBigInt()}sint64Number(){return this.readLongVarint().zzDecode().toNumber()}sint64String(){return this.readLongVarint().zzDecode().toString()}fixed64(){return this.readFixed64().toBigInt()}fixed64Number(){return this.readFixed64().toNumber()}fixed64String(){return this.readFixed64().toString()}sfixed64(){return this.readFixed64().toBigInt()}sfixed64Number(){return this.readFixed64().toNumber()}sfixed64String(){return this.readFixed64().toString()}};function fs(r){return new us(r instanceof Uint8Array?r:r.subarray())}function nt(r,e,t){let n=fs(r);return e.decode(n,void 0,t)}var ms={};ue(ms,{base10:()=>E5});var e9=new Uint8Array(0);function C2(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}function pt(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 D2(r){return new TextEncoder().encode(r)}function U2(r){return new TextDecoder().decode(r)}function y5(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var s=r.charAt(i),o=s.charCodeAt(0);if(t[o]!==255)throw new TypeError(s+" is ambiguous");t[o]=i}var a=r.length,c=r.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function f(g){if(g instanceof Uint8Array||(ArrayBuffer.isView(g)?g=new Uint8Array(g.buffer,g.byteOffset,g.byteLength):Array.isArray(g)&&(g=Uint8Array.from(g))),!(g instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(g.length===0)return"";for(var d=0,p=0,y=0,v=g.length;y!==v&&g[y]===0;)y++,d++;for(var b=(v-y)*u+1>>>0,S=new Uint8Array(b);y!==v;){for(var E=g[y],I=0,T=b-1;(E!==0||I<p)&&T!==-1;T--,I++)E+=256*S[T]>>>0,S[T]=E%a>>>0,E=E/a>>>0;if(E!==0)throw new Error("Non-zero carry");p=I,y++}for(var _=b-p;_!==b&&S[_]===0;)_++;for(var j=c.repeat(d);_<b;++_)j+=r.charAt(S[_]);return j}function h(g){if(typeof g!="string")throw new TypeError("Expected String");if(g.length===0)return new Uint8Array;var d=0;if(g[d]!==" "){for(var p=0,y=0;g[d]===c;)p++,d++;for(var v=(g.length-d)*l+1>>>0,b=new Uint8Array(v);g[d];){var S=t[g.charCodeAt(d)];if(S===255)return;for(var E=0,I=v-1;(S!==0||E<y)&&I!==-1;I--,E++)S+=a*b[I]>>>0,b[I]=S%256>>>0,S=S/256>>>0;if(S!==0)throw new Error("Non-zero carry");y=E,d++}if(g[d]!==" "){for(var T=v-y;T!==v&&b[T]===0;)T++;for(var _=new Uint8Array(p+(v-T)),j=p;T!==v;)_[j++]=b[T++];return _}}}function m(g){var d=h(g);if(d)return d;throw new Error(`Non-${e} character`)}return{encode:f,decodeUnsafe:h,decode:m}}var b5=y5,w5=b5,V2=w5;var hs=class{name;prefix;baseEncode;constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}},ds=class{name;prefix;baseDecode;prefixCodePoint;constructor(e,t,n){if(this.name=e,this.prefix=t,t.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return M2(this,e)}},ps=class{decoders;constructor(e){this.decoders=e}or(e){return M2(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n!=null)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}};function M2(r,e){return new ps({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var gs=class{name;prefix;baseEncode;baseDecode;encoder;decoder;constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new hs(e,t,n),this.decoder=new ds(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function wr({name:r,prefix:e,encode:t,decode:n}){return new gs(r,e,t,n)}function Dt({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=V2(t,r);return wr({prefix:e,name:r,encode:n,decode:s=>pt(i(s))})}function v5(r,e,t,n){let i={};for(let u=0;u<e.length;++u)i[e[u]]=u;let s=r.length;for(;r[s-1]==="=";)--s;let o=new Uint8Array(s*t/8|0),a=0,c=0,l=0;for(let u=0;u<s;++u){let f=i[r[u]];if(f===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|f,a+=t,a>=8&&(a-=8,o[l++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o}function x5(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,s="",o=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],o+=8;o>t;)o-=t,s+=e[i&a>>o];if(o!==0&&(s+=e[i&a<<t-o]),n)for(;s.length*t&7;)s+="=";return s}function se({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return wr({prefix:e,name:r,encode(i){return x5(i,n,t)},decode(i){return v5(i,n,t,r)}})}var E5=Dt({prefix:"9",name:"base10",alphabet:"0123456789"});var ys={};ue(ys,{base16:()=>A5,base16upper:()=>B5});var A5=se({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),B5=se({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var bs={};ue(bs,{base2:()=>I5});var I5=se({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var ws={};ue(ws,{base256emoji:()=>_5});var F2=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}"),S5=F2.reduce((r,e,t)=>(r[t]=e,r),[]),k5=F2.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function R5(r){return r.reduce((e,t)=>(e+=S5[t],e),"")}function T5(r){let e=[];for(let t of r){let n=k5[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var _5=wr({prefix:"\u{1F680}",name:"base256emoji",encode:R5,decode:T5});var vs={};ue(vs,{base32:()=>gt,base32hex:()=>C5,base32hexpad:()=>U5,base32hexpadupper:()=>O5,base32hexupper:()=>D5,base32pad:()=>L5,base32padupper:()=>P5,base32upper:()=>N5,base32z:()=>V5});var gt=se({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),N5=se({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),L5=se({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),P5=se({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),C5=se({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),D5=se({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),U5=se({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),O5=se({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),V5=se({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var xs={};ue(xs,{base36:()=>M5,base36upper:()=>F5});var M5=Dt({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),F5=Dt({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Es={};ue(Es,{base58btc:()=>ge,base58flickr:()=>H5});var ge=Dt({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),H5=Dt({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var As={};ue(As,{base64:()=>fn,base64pad:()=>K5,base64url:()=>q5,base64urlpad:()=>$5});var fn=se({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),K5=se({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),q5=se({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),$5=se({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Bs={};ue(Bs,{base8:()=>z5});var z5=se({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Is={};ue(Is,{identity:()=>G5});var G5=wr({prefix:"\0",name:"identity",encode:r=>U2(r),decode:r=>D2(r)});var m9=new TextEncoder,y9=new TextDecoder;var ks={};ue(ks,{identity:()=>mt});var W5=q2,H2=128,Z5=127,Q5=~Z5,X5=Math.pow(2,31);function q2(r,e,t){e=e||[],t=t||0;for(var n=t;r>=X5;)e[t++]=r&255|H2,r/=128;for(;r&Q5;)e[t++]=r&255|H2,r>>>=7;return e[t]=r|0,q2.bytes=t-n+1,e}var J5=Ss,ea=128,K2=127;function Ss(r,n){var t=0,n=n||0,i=0,s=n,o,a=r.length;do{if(s>=a)throw Ss.bytes=0,new RangeError("Could not decode varint");o=r[s++],t+=i<28?(o&K2)<<i:(o&K2)*Math.pow(2,i),i+=7}while(o>=ea);return Ss.bytes=s-n,t}var ta=Math.pow(2,7),ra=Math.pow(2,14),na=Math.pow(2,21),ia=Math.pow(2,28),sa=Math.pow(2,35),oa=Math.pow(2,42),aa=Math.pow(2,49),ca=Math.pow(2,56),la=Math.pow(2,63),ua=function(r){return r<ta?1:r<ra?2:r<na?3:r<ia?4:r<sa?5:r<oa?6:r<aa?7:r<ca?8:r<la?9:10},fa={encode:W5,decode:J5,encodingLength:ua},ha=fa,hn=ha;function dn(r,e=0){return[hn.decode(r,e),hn.decode.bytes]}function vr(r,e,t=0){return hn.encode(r,e,t),e}function xr(r){return hn.encodingLength(r)}function it(r,e){let t=e.byteLength,n=xr(r),i=n+xr(t),s=new Uint8Array(i+t);return vr(r,s,0),vr(t,s,n),s.set(e,i),new Er(r,t,e,s)}function rr(r){let e=pt(r),[t,n]=dn(e),[i,s]=dn(e.subarray(n)),o=e.subarray(n+s);if(o.byteLength!==i)throw new Error("Incorrect length");return new Er(t,i,o,e)}function $2(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&C2(r.bytes,t.bytes)}}var Er=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};var z2=0,da="identity",G2=pt;function pa(r){return it(z2,G2(r))}var mt={code:z2,name:da,encode:G2,digest:pa};var _s={};ue(_s,{sha256:()=>ne,sha512:()=>ga});function Ts({name:r,code:e,encode:t}){return new Rs(r,e,t)}var Rs=class{name;code;encode;constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?it(this.code,t):t.then(n=>it(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Y2(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ne=Ts({name:"sha2-256",code:18,encode:Y2("SHA-256")}),ga=Ts({name:"sha2-512",code:19,encode:Y2("SHA-512")});function W2(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return ya(t,Ns(r),e??ge.encoder);default:return ba(t,Ns(r),e??gt.encoder)}}var Z2=new WeakMap;function Ns(r){let e=Z2.get(r);if(e==null){let t=new Map;return Z2.set(r,t),t}return e}var ke=class r{code;version;multihash;bytes;"/";constructor(e,t,n,i){this.code=t,this.version=e,this.multihash=n,this.bytes=i,this["/"]=i}get asCID(){return this}get byteOffset(){return this.bytes.byteOffset}get byteLength(){return this.bytes.byteLength}toV0(){switch(this.version){case 0:return this;case 1:{let{code:e,multihash:t}=this;if(e!==pn)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==wa)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return r.createV0(t)}default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,n=it(e,t);return r.createV1(this.code,n)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 1. This is a bug please report`)}}equals(e){return r.equals(this,e)}static equals(e,t){let n=t;return n!=null&&e.code===n.code&&e.version===n.version&&$2(e.multihash,n.multihash)}toString(e){return W2(this,e)}toJSON(){return{"/":W2(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:s,bytes:o}=t;return new r(n,i,s,o??Q2(n,i,s.bytes))}else if(t[va]===!0){let{version:n,multihash:i,code:s}=t,o=rr(i);return r.create(n,s,o)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==pn)throw new Error(`Version 0 CID must use dag-pb (code: ${pn}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=Q2(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,pn,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length!==0)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=pt(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let s=i.subarray(t.multihashSize-t.digestSize),o=new Er(t.multihashCode,t.digestSize,s,i);return[t.version===0?r.createV0(o):r.createV1(t.codec,o),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[f,h]=dn(e.subarray(t));return t+=h,f},i=n(),s=pn;if(i===18?(i=0,t=0):s=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let o=t,a=n(),c=n(),l=t+c,u=l-o;return{version:i,codec:s,multihashCode:a,digestSize:c,multihashSize:u,size:l}}static parse(e,t){let[n,i]=ma(e,t),s=r.decode(i);if(s.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Ns(s).set(n,e),s}};function ma(r,e){switch(r[0]){case"Q":{let t=e??ge;return[ge.prefix,t.decode(`${ge.prefix}${r}`)]}case ge.prefix:{let t=e??ge;return[ge.prefix,t.decode(r)]}case gt.prefix:{let t=e??gt;return[gt.prefix,t.decode(r)]}default:{if(e==null)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[r[0],e.decode(r)]}}}function ya(r,e,t){let{prefix:n}=t;if(n!==ge.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let s=t.encode(r).slice(1);return e.set(n,s),s}else return i}function ba(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let s=t.encode(r);return e.set(n,s),s}else return i}var pn=112,wa=18;function Q2(r,e,t){let n=xr(r),i=n+xr(e),s=new Uint8Array(i+t.byteLength);return vr(r,s,0),vr(e,s,n),s.set(t,i),s}var va=Symbol.for("@ipld/js-cid/CID");var Ut={...Is,...bs,...Bs,...ms,...ys,...vs,...xs,...Es,...As,...ws},V9={..._s,...ks};function J2(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var X2=J2("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ls=J2("ascii","a",r=>{let e="a";for(let t=0;t<r.length;t++)e+=String.fromCharCode(r[t]);return e},r=>{r=r.substring(1);let e=be(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),xa={utf8:X2,"utf-8":X2,hex:Ut.base16,latin1:Ls,ascii:Ls,binary:Ls,...Ut},Zn=xa;function q(r,e="utf8"){let t=Zn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.decoder.decode(`${t.prefix}${r}`)}function Ps(r){let e=r??8192,t=e>>>1,n,i=e;return function(o){if(o<1||o>t)return be(o);i+o>e&&(n=be(e),i=0);let a=n.subarray(i,i+=o);return i&7&&(i=(i|7)+1),a}}var ir=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Cs(){}var Us=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},Ea=Ps();function Aa(r){return globalThis.Buffer!=null?be(r):Ea(r)}var mn=class{len;head;tail;states;constructor(){this.len=0,this.head=new ir(Cs,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new ir(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new Os((e=e>>>0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this}int32(e){return e<0?this._push(Qn,10,Oe.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=Oe.fromBigInt(e);return this._push(Qn,t.length(),t)}uint64Number(e){return this._push(ss,he(e),e)}uint64String(e){return this.uint64(BigInt(e))}int64(e){return this.uint64(e)}int64Number(e){return this.uint64Number(e)}int64String(e){return this.uint64String(e)}sint64(e){let t=Oe.fromBigInt(e).zzEncode();return this._push(Qn,t.length(),t)}sint64Number(e){let t=Oe.fromNumber(e).zzEncode();return this._push(Qn,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Ds,1,e?1:0)}fixed32(e){return this._push(gn,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=Oe.fromBigInt(e);return this._push(gn,4,t.lo)._push(gn,4,t.hi)}fixed64Number(e){let t=Oe.fromNumber(e);return this._push(gn,4,t.lo)._push(gn,4,t.hi)}fixed64String(e){return this.fixed64(BigInt(e))}sfixed64(e){return this.fixed64(e)}sfixed64Number(e){return this.fixed64Number(e)}sfixed64String(e){return this.fixed64String(e)}float(e){return this._push(S2,4,e)}double(e){return this._push(R2,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Ds,1,0):this.uint32(t)._push(Ia,t,e)}string(e){let t=N2(e);return t!==0?this.uint32(t)._push(ls,t,e):this._push(Ds,1,0)}fork(){return this.states=new Us(this),this.head=this.tail=new ir(Cs,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 ir(Cs,0,0),this.len=0),this}ldelim(){let e=this.head,t=this.tail,n=this.len;return this.reset().uint32(n),n!==0&&(this.tail.next=e.next,this.tail=t,this.len+=n),this}finish(){let e=this.head.next,t=Aa(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Ds(r,e,t){e[t]=r&255}function Ba(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var Os=class extends ir{next;constructor(e,t){super(Ba,e,t),this.next=void 0}};function Qn(r,e,t){for(;r.hi!==0;)e[t++]=r.lo&127|128,r.lo=(r.lo>>>7|r.hi<<25)>>>0,r.hi>>>=7;for(;r.lo>127;)e[t++]=r.lo&127|128,r.lo=r.lo>>>7;e[t++]=r.lo}function gn(r,e,t){e[t]=r&255,e[t+1]=r>>>8&255,e[t+2]=r>>>16&255,e[t+3]=r>>>24}function Ia(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(mn.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Sa,e,r),this},mn.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(ka,e,r),this});function Sa(r,e,t){e.set(r,t)}function ka(r,e,t){r.length<40?ls(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(q(r),t)}function Vs(){return new mn}function st(r,e){let t=Vs();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var Ar;(function(r){r[r.VARINT=0]="VARINT",r[r.BIT64=1]="BIT64",r[r.LENGTH_DELIMITED=2]="LENGTH_DELIMITED",r[r.START_GROUP=3]="START_GROUP",r[r.END_GROUP=4]="END_GROUP",r[r.BIT32=5]="BIT32"})(Ar||(Ar={}));function Xn(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function Br(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(s,o){let a=e(s);o.int32(a)},n=function(s){let o=s.int32();return e(o)};return Xn("enum",Ar.VARINT,t,n)}function ot(r,e){return Xn("message",Ar.LENGTH_DELIMITED,r,e)}var yn=class extends Error{code;constructor(e,t,n){super(e,n),this.code=t}};var bn;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.key!=null&&t.key.byteLength>0&&(n.uint32(10),n.bytes(t.key)),t.value!=null&&t.value.byteLength>0&&(n.uint32(18),n.bytes(t.value)),t.timeReceived!=null&&t.timeReceived!==""&&(n.uint32(42),n.string(t.timeReceived)),i.lengthDelimited!==!1&&n.ldelim()},(t,n,i={})=>{let s={key:Pe(0),value:Pe(0),timeReceived:""},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let a=t.uint32();switch(a>>>3){case 1:{s.key=t.bytes();break}case 2:{s.value=t.bytes();break}case 5:{s.timeReceived=t.string();break}default:{t.skipType(a&7);break}}}return s})),e),r.encode=t=>st(t,r.codec()),r.decode=(t,n)=>nt(t,r.codec(),n)})(bn||(bn={}));function e0(r){let e=r.getUTCFullYear(),t=String(r.getUTCMonth()+1).padStart(2,"0"),n=String(r.getUTCDate()).padStart(2,"0"),i=String(r.getUTCHours()).padStart(2,"0"),s=String(r.getUTCMinutes()).padStart(2,"0"),o=String(r.getUTCSeconds()).padStart(2,"0"),a=r.getUTCMilliseconds(),c=String(a*1e3*1e3).padStart(9,"0");return`${e}-${t}-${n}T${i}:${s}:${o}.${c}Z`}function t0(r){let e=new RegExp("(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})\\.(\\d+)Z"),t=String(r).trim().match(e);if(t==null)throw new Error("Invalid format");let n=parseInt(t[1],10),i=parseInt(t[2],10)-1,s=parseInt(t[3],10),o=parseInt(t[4],10),a=parseInt(t[5],10),c=parseInt(t[6],10),l=parseInt(t[7].slice(0,-6),10);return new Date(Date.UTC(n,i,s,o,a,c,l))}var me=class r{key;value;timeReceived;constructor(e,t,n){if(!(e instanceof Uint8Array))throw new Error("key must be a Uint8Array");if(!(t instanceof Uint8Array))throw new Error("value must be a Uint8Array");this.key=e,this.value=t,this.timeReceived=n}serialize(){return bn.encode(this.prepareSerialize())}prepareSerialize(){return{key:this.key,value:this.value,timeReceived:e0(this.timeReceived)}}static deserialize(e){let t=bn.decode(e);return new r(t.key,t.value,new Date(t.timeReceived))}static fromDeserialized(e){let t=t0(e.timeReceived);if(e.key==null)throw new Error("key missing from deserialized object");if(e.value==null)throw new Error("value missing from deserialized object");return new r(e.key,e.value,t)}};function Ta(r){let[e,t]=r[Symbol.asyncIterator]!=null?[r[Symbol.asyncIterator](),Symbol.asyncIterator]:[r[Symbol.iterator](),Symbol.iterator],n=[];return{peek:()=>e.next(),push:i=>{n.push(i)},next:()=>n.length>0?{done:!1,value:n.shift()}:e.next(),[t](){return this}}}var r0=Ta;function _a(r){return r[Symbol.asyncIterator]!=null}function Na(r,e){let t=0;if(_a(r))return async function*(){for await(let c of r)yield e(c,t++)}();let n=r0(r),{value:i,done:s}=n.next();if(s===!0)return function*(){}();let o=e(i,t++);if(typeof o.then=="function")return async function*(){yield await o;for await(let c of n)yield e(c,t++)}();let a=e;return function*(){yield o;for(let c of n)yield a(c,t++)}()}var Ir=Na;var Jn=globalThis.CustomEvent??Event;async function*wn(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,s=[],o=fe(),a=fe(),c=!1,l,u=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let g of r){if(s.length===t&&(o=fe(),await o.promise),u)break;let d={done:!1};s.push(d),g().then(p=>{d.done=!0,d.ok=!0,d.value=p,i.dispatchEvent(new Jn("task-complete"))},p=>{d.done=!0,d.err=p,i.dispatchEvent(new Jn("task-complete"))})}c=!0,i.dispatchEvent(new Jn("task-complete"))}catch(g){l=g,i.dispatchEvent(new Jn("task-complete"))}});function f(){return n?s[0]?.done:!!s.find(g=>g.done)}function*h(){for(;s.length>0&&s[0].done;){let g=s[0];if(s.shift(),g.ok)yield g.value;else throw u=!0,o.resolve(),g.err;o.resolve()}}function*m(){for(;f();)for(let g=0;g<s.length;g++)if(s[g].done){let d=s[g];if(s.splice(g,1),g--,d.ok)yield d.value;else throw u=!0,o.resolve(),d.err;o.resolve()}}for(;;){if(f()||(a=fe(),await a.promise),l!=null)throw l;if(n?yield*h():yield*m(),c&&s.length===0)break}}var e1=class{buffer;mask;top;btm;next;constructor(e){if(!(e>0)||e-1&e)throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return this.buffer[this.top]!==void 0?!1:(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){let e=this.buffer[this.btm];if(e!==void 0)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}isEmpty(){return this.buffer[this.btm]===void 0}},Sr=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new e1(this.hwm),this.tail=this.head,this.size=0}calculateSize(e){return e?.byteLength!=null?e.byteLength:1}push(e){if(e?.value!=null&&(this.size+=this.calculateSize(e.value)),!this.head.push(e)){let t=this.head;this.head=t.next=new e1(2*this.head.buffer.length),this.head.push(e)}}shift(){let e=this.tail.shift();if(e===void 0&&this.tail.next!=null){let t=this.tail.next;this.tail.next=null,this.tail=t,e=this.tail.shift()}return e?.value!=null&&(this.size-=this.calculateSize(e.value)),e}isEmpty(){return this.head.isEmpty()}};var Ms=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function kr(r={}){return La(t=>{let n=t.shift();if(n==null)return{done:!0};if(n.error!=null)throw n.error;return{done:n.done===!0,value:n.value}},r)}function La(r,e){e=e??{};let t=e.onEnd,n=new Sr,i,s,o,a=fe(),c=async()=>{try{return n.isEmpty()?o?{done:!0}:await new Promise((p,y)=>{s=v=>{s=null,n.push(v);try{p(r(n))}catch(b){y(b)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=fe()})}},l=p=>s!=null?s(p):(n.push(p),i),u=p=>(n=new Sr,s!=null?s({error:p}):(n.push({error:p}),i)),f=p=>{if(o)return i;if(e?.objectMode!==!0&&p?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return l({done:!1,value:p})},h=p=>o?i:(o=!0,p!=null?u(p):l({done:!0})),m=()=>(n=new Sr,h(),{done:!0}),g=p=>(h(p),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:m,throw:g,push:f,end:h,get readableLength(){return n.size},onEmpty:async p=>{let y=p?.signal;if(y?.throwIfAborted(),n.isEmpty())return;let v,b;y!=null&&(v=new Promise((S,E)=>{b=()=>{E(new Ms)},y.addEventListener("abort",b)}));try{await Promise.race([a.promise,v])}finally{b!=null&&y!=null&&y?.removeEventListener("abort",b)}}},t==null)return i;let d=i;return i={[Symbol.asyncIterator](){return this},next(){return d.next()},throw(p){return d.throw(p),t!=null&&(t(p),t=void 0),{done:!0}},return(){return d.return(),t!=null&&(t(),t=void 0),{done:!0}},push:f,end(p){return d.end(p),t!=null&&(t(p),t=void 0),i},get readableLength(){return d.readableLength},onEmpty:p=>d.onEmpty(p)},i}function Pa(r){return r[Symbol.asyncIterator]!=null}function Ca(...r){let e=[];for(let t of r)Pa(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=kr({objectMode:!0});Promise.resolve().then(async()=>{try{await Promise.all(r.map(async n=>{for await(let i of n)t.push(i)})),t.end()}catch(n){t.end(n)}}),yield*t}()}var t1=Ca;function Ot(r,...e){if(r==null)throw new Error("Empty pipeline");if(Fs(r)){let n=r;r=()=>n.source}else if(i0(r)||n0(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&Fs(t[t.length-1])&&(t[t.length-1]=t[t.length-1].sink),t.length>2)for(let n=1;n<t.length-1;n++)Fs(t[n])&&(t[n]=Ua(t[n]));return Da(...t)}var Da=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},n0=r=>r?.[Symbol.asyncIterator]!=null,i0=r=>r?.[Symbol.iterator]!=null,Fs=r=>r==null?!1:r.sink!=null&&r.source!=null,Ua=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=kr({objectMode:!0});t.then(()=>{n.end()},o=>{n.end(o)});let i,s=r.source;if(n0(s))i=async function*(){yield*s,n.end()};else if(i0(s))i=function*(){yield*s,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return t1(n,i())}return r.source};function Q(r,e){if(r===e)return!0;if(r.byteLength!==e.byteLength)return!1;for(let t=0;t<r.byteLength;t++)if(r[t]!==e[t])return!1;return!0}var s0;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.key!=null&&(n.uint32(10),n.bytes(t.key)),t.value!=null&&(n.uint32(18),n.bytes(t.value)),t.author!=null&&(n.uint32(26),n.bytes(t.author)),t.signature!=null&&(n.uint32(34),n.bytes(t.signature)),t.timeReceived!=null&&(n.uint32(42),n.string(t.timeReceived)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.key=t.bytes();break}case 2:{i.value=t.bytes();break}case 3:{i.author=t.bytes();break}case 4:{i.signature=t.bytes();break}case 5:{i.timeReceived=t.string();break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(s0||(s0={}));var F;(function(r){r.PUT_VALUE="PUT_VALUE",r.GET_VALUE="GET_VALUE",r.ADD_PROVIDER="ADD_PROVIDER",r.GET_PROVIDERS="GET_PROVIDERS",r.FIND_NODE="FIND_NODE",r.PING="PING"})(F||(F={}));var r1;(function(r){r[r.PUT_VALUE=0]="PUT_VALUE",r[r.GET_VALUE=1]="GET_VALUE",r[r.ADD_PROVIDER=2]="ADD_PROVIDER",r[r.GET_PROVIDERS=3]="GET_PROVIDERS",r[r.FIND_NODE=4]="FIND_NODE",r[r.PING=5]="PING"})(r1||(r1={}));(function(r){r.codec=()=>Br(r1)})(F||(F={}));var Tr;(function(r){r.NOT_CONNECTED="NOT_CONNECTED",r.CONNECTED="CONNECTED",r.CAN_CONNECT="CAN_CONNECT",r.CANNOT_CONNECT="CANNOT_CONNECT"})(Tr||(Tr={}));var Hs;(function(r){r[r.NOT_CONNECTED=0]="NOT_CONNECTED",r[r.CONNECTED=1]="CONNECTED",r[r.CAN_CONNECT=2]="CAN_CONNECT",r[r.CANNOT_CONNECT=3]="CANNOT_CONNECT"})(Hs||(Hs={}));(function(r){r.codec=()=>Br(Hs)})(Tr||(Tr={}));var Rr;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),t.id!=null&&t.id.byteLength>0&&(n.uint32(10),n.bytes(t.id)),t.multiaddrs!=null)for(let s of t.multiaddrs)n.uint32(18),n.bytes(s);t.connection!=null&&(n.uint32(24),Tr.codec().encode(t.connection,n)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={id:Pe(0),multiaddrs:[]},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.id=t.bytes();break}case 2:{i.multiaddrs.push(t.bytes());break}case 3:{i.connection=Tr.codec().decode(t);break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Rr||(Rr={}));var qe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{if(i.lengthDelimited!==!1&&n.fork(),t.type!=null&&r1[t.type]!==0&&(n.uint32(8),F.codec().encode(t.type,n)),t.clusterLevel!=null&&(n.uint32(80),n.int32(t.clusterLevel)),t.key!=null&&(n.uint32(18),n.bytes(t.key)),t.record!=null&&(n.uint32(26),n.bytes(t.record)),t.closer!=null)for(let s of t.closer)n.uint32(66),Rr.codec().encode(s,n);if(t.providers!=null)for(let s of t.providers)n.uint32(74),Rr.codec().encode(s,n);i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={type:F.PUT_VALUE,closer:[],providers:[]},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:{i.type=F.codec().decode(t);break}case 10:{i.clusterLevel=t.int32();break}case 2:{i.key=t.bytes();break}case 3:{i.record=t.bytes();break}case 8:{i.closer.push(Rr.codec().decode(t,t.uint32()));break}case 9:{i.providers.push(Rr.codec().decode(t,t.uint32()));break}default:{t.skipType(o&7);break}}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(qe||(qe={}));function Ks(r,e={}){let t={...r,name:"SEND_QUERY",type:0,messageName:r.type,messageType:r.type};return e.onProgress?.(new De("kad-dht:query:send-query",{detail:t})),t}function vn(r,e={}){let t={...r,name:"PEER_RESPONSE",type:1,messageName:r.messageType,closer:r.closer??[],providers:r.providers??[]};return e.onProgress?.(new De("kad-dht:query:peer-response",{detail:t})),t}function n1(r,e={}){let t={...r,name:"FINAL_PEER",type:2};return e.onProgress?.(new De("kad-dht:query:final-peer",{detail:t})),t}function Ve(r,e={}){let t={...r,name:"QUERY_ERROR",type:3};return e.onProgress?.(new De("kad-dht:query:query-error",{detail:t})),t}function qs(r,e={}){let t={...r,name:"PROVIDER",type:4};return e.onProgress?.(new De("kad-dht:query:provider",{detail:t})),t}function xn(r,e={}){let t={...r,name:"VALUE",type:5};return e.onProgress?.(new De("kad-dht:query:value",{detail:t})),t}function $s(r,e={}){let t={...r,name:"DIAL_PEER",type:7};return e.onProgress?.(new De("kad-dht:query:dial-peer",{detail:t})),t}function L(r,e="utf8"){let t=Zn[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return t.encoder.encode(r).substring(1)}function o0(r,e,t){if(t.length===0){let o="No records given";throw new x(o,"ERR_NO_RECORDS_RECEIVED")}let i=L(e).split("/");if(i.length<3){let o="Record key does not have a selector function";throw new x(o,"ERR_NO_SELECTOR_FUNCTION_FOR_RECORD_KEY")}let s=r[i[1].toString()];if(s==null){let o=`No selector function configured for key type "${i[1]}"`;throw new x(o,"ERR_UNRECOGNIZED_KEY_PREFIX")}return t.length===1?0:s(e,t)}function Oa(r,e){return 0}var a0={pk:Oa};async function _r(r,e){let t=e.key,i=L(t).split("/");if(i.length<3)return;let s=r[i[1].toString()];if(s==null){let o=`No validator available for key type "${i[1]}"`;throw new x(o,"ERR_INVALID_RECORD_KEY_TYPE")}await s(t,e.value)}var Va=async(r,e)=>{if(!(r instanceof Uint8Array))throw new x('"key" must be a Uint8Array',"ERR_INVALID_RECORD_KEY_NOT_BUFFER");if(r.byteLength<5)throw new x("invalid public key record","ERR_INVALID_RECORD_KEY_TOO_SHORT");if(L(r.subarray(0,4))!=="/pk/")throw new x("key was not prefixed with /pk/","ERR_INVALID_RECORD_KEY_BAD_PREFIX");let n=r.slice(4),i=await ne.digest(e);if(!Q(n,i.bytes))throw new x("public key does not match passed in key","ERR_INVALID_RECORD_HASH_MISMATCH")},c0={pk:Va};var u0=Symbol.for("nodejs.util.inspect.custom"),l0=Object.values(Ut).map(r=>r.decoder).reduce((r,e)=>r.or(e),Ut.identity.decoder),f0=114,js=36,Ys=37,En=class{type;multihash;privateKey;publicKey;string;constructor(e){this.type=e.type,this.multihash=e.multihash,this.privateKey=e.privateKey,Object.defineProperty(this,"string",{enumerable:!1,writable:!0})}get[Symbol.toStringTag](){return`PeerId(${this.toString()})`}[Qi]=!0;toString(){return this.string==null&&(this.string=ge.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return ke.createV1(f0,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return Q(this.multihash.bytes,e);if(typeof e=="string")return sr(e).equals(this);if(e?.multihash?.bytes!=null)return Q(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[u0](){return`PeerId(${this.toString()})`}},Nr=class extends En{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Lr=class extends En{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Pr=class extends En{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}},zs=2336,Gs=class{type="url";multihash;privateKey;publicKey;url;constructor(e){this.url=e.toString(),this.multihash=mt.digest(q(this.url))}[u0](){return`PeerId(${this.url})`}[Qi]=!0;toString(){return this.toCID().toString()}toCID(){return ke.createV1(zs,this.multihash)}toBytes(){return this.toCID().bytes}equals(e){return e==null?!1:(e instanceof Uint8Array&&(e=L(e)),e.toString()===this.toString())}};function sr(r,e){if(e=e??l0,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=rr(ge.decode(`z${r}`));return r.startsWith("12D")?new Lr({multihash:t}):r.startsWith("16U")?new Pr({multihash:t}):new Nr({multihash:t})}return yt(l0.decode(r))}function yt(r){try{let e=rr(r);if(e.code===mt.code){if(e.digest.length===js)return new Lr({multihash:e});if(e.digest.length===Ys)return new Pr({multihash:e})}if(e.code===ne.code)return new Nr({multihash:e})}catch{return Ma(ke.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function Ma(r){if(r?.multihash==null||r.version==null||r.version===1&&r.code!==f0&&r.code!==zs)throw new Error("Supplied PeerID CID is invalid");if(r.code===zs){let t=L(r.multihash.digest);return new Gs(new URL(t))}let e=r.multihash;if(e.code===ne.code)return new Nr({multihash:r.multihash});if(e.code===mt.code){if(e.digest.length===js)return new Lr({multihash:r.multihash});if(e.digest.length===Ys)return new Pr({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function h0(r,e){return r.length===js?new Lr({multihash:it(mt.code,r),privateKey:e}):r.length===Ys?new Pr({multihash:it(mt.code,r),privateKey:e}):new Nr({multihash:await ne.digest(r),publicKey:r,privateKey:e})}var i1=class{index=0;input="";new(e){return this.index=0,this.input=e,this}readAtomically(e){let t=this.index,n=e();return n===void 0&&(this.index=t),n}parseWith(e){let t=e();if(this.index===this.input.length)return t}peekChar(){if(!(this.index>=this.input.length))return this.input[this.index]}readChar(){if(!(this.index>=this.input.length))return this.input[this.index++]}readGivenChar(e){return this.readAtomically(()=>{let t=this.readChar();if(t===e)return t})}readSeparator(e,t,n){return this.readAtomically(()=>{if(!(t>0&&this.readGivenChar(e)===void 0))return n()})}readNumber(e,t,n,i){return this.readAtomically(()=>{let s=0,o=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",l=2**(8*i)-1;for(;;){let u=this.readAtomically(()=>{let f=this.readChar();if(f===void 0)return;let h=Number.parseInt(f,e);if(!Number.isNaN(h))return h});if(u===void 0)break;if(s*=e,s+=u,s>l||(o+=1,t!==void 0&&o>t))return}if(o!==0)return!n&&c&&o>1?void 0:s})}readIPv4Addr(){return this.readAtomically(()=>{let e=new Uint8Array(4);for(let t=0;t<e.length;t++){let n=this.readSeparator(".",t,()=>this.readNumber(10,3,!1,1));if(n===void 0)return;e[t]=n}return e})}readIPv6Addr(){let e=t=>{for(let n=0;n<t.length/2;n++){let i=n*2;if(n<t.length-3){let o=this.readSeparator(":",n,()=>this.readIPv4Addr());if(o!==void 0)return t[i]=o[0],t[i+1]=o[1],t[i+2]=o[2],t[i+3]=o[3],[i+4,!0]}let s=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(s===void 0)return[i,!1];t[i]=s>>8,t[i+1]=s&255}return[t.length,!1]};return this.readAtomically(()=>{let t=new Uint8Array(16),[n,i]=e(t);if(n===16)return t;if(i||this.readGivenChar(":")===void 0||this.readGivenChar(":")===void 0)return;let s=new Uint8Array(14),o=16-(n+2),[a]=e(s.subarray(0,o));return t.set(s.subarray(0,a),16-a),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var d0=45,Fa=15,Cr=new i1;function Ws(r){if(!(r.length>Fa))return Cr.new(r).parseWith(()=>Cr.readIPv4Addr())}function Zs(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>d0))return Cr.new(r).parseWith(()=>Cr.readIPv6Addr())}function s1(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>d0))return Cr.new(r).parseWith(()=>Cr.readIPAddr())}function o1(r){return!!Ws(r)}function a1(r){return!!Zs(r)}function c1(r){return!!s1(r)}var g0=un(p0(),1),Ha=["0.0.0.0/8","10.0.0.0/8","100.64.0.0/10","127.0.0.0/8","169.254.0.0/16","172.16.0.0/12","192.0.0.0/24","192.0.0.0/29","192.0.0.8/32","192.0.0.9/32","192.0.0.10/32","192.0.0.170/32","192.0.0.171/32","192.0.2.0/24","192.31.196.0/24","192.52.193.0/24","192.88.99.0/24","192.168.0.0/16","192.175.48.0/24","198.18.0.0/15","198.51.100.0/24","203.0.113.0/24","240.0.0.0/4","255.255.255.255/32"],Ka=Ha.map(r=>new g0.Netmask(r));function Qs(r){for(let e of Ka)if(e.contains(r))return!0;return!1}function qa(r){return/^::ffff:([0-9a-fA-F]{1,4}):([0-9a-fA-F]{1,4})$/.test(r)}function $a(r){let e=r.split(":");if(e.length<2)return!1;let t=e[e.length-1].padStart(4,"0"),n=e[e.length-2].padStart(4,"0"),i=`${parseInt(n.substring(0,2),16)}.${parseInt(n.substring(2),16)}.${parseInt(t.substring(0,2),16)}.${parseInt(t.substring(2),16)}`;return Qs(i)}function za(r){return/^::ffff:([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(r)}function Ga(r){let e=r.split(":"),t=e[e.length-1];return Qs(t)}function ja(r){return/^::$/.test(r)||/^::1$/.test(r)||/^64:ff9b::([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(r)||/^100::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001:2[0-9a-fA-F]:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2001:db8:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^2002:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(r)||/^f[c-d]([0-9a-fA-F]{2,2}):/i.test(r)||/^fe[8-9a-bA-B][0-9a-fA-F]:/i.test(r)||/^ff([0-9a-fA-F]{2,2}):/i.test(r)}function l1(r){return o1(r)?Qs(r):qa(r)?$a(r):za(r)?Ga(r):a1(r)?ja(r):void 0}var bt="/",m0=new TextEncoder().encode(bt),u1=m0[0],Dr=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=q(e);else if(e instanceof Uint8Array)this._buf=e;else throw new Error("Invalid key, should be String of Uint8Array");if(t==null&&(t=!0),t&&this.clean(),this._buf.byteLength===0||this._buf[0]!==u1)throw new Error("Invalid key")}toString(e="utf8"){return L(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(bt))}static random(){return new r(Math.random().toString().substring(2))}static asKey(e){return e instanceof Uint8Array||typeof e=="string"?new r(e):typeof e.uint8Array=="function"?new r(e.uint8Array()):null}clean(){if((this._buf==null||this._buf.byteLength===0)&&(this._buf=m0),this._buf[0]!==u1){let e=new Uint8Array(this._buf.byteLength+1);e.fill(u1,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===u1;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let s=t[i],o=n[i];if(s<o)return!0;if(s>o)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(bt).slice(1)}type(){return Ya(this.baseNamespace())}name(){return Wa(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(bt)||(e+=bt),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(bt):new r(e.slice(0,-1).join(bt))}child(e){return this.toString()===bt?e:e.toString()===bt?this:new r(this.toString()+e.toString(),!1)}isAncestorOf(e){return e.toString()===this.toString()?!1:e.toString().startsWith(this.toString())}isDecendantOf(e){return e.toString()===this.toString()?!1:this.toString().startsWith(e.toString())}isTopLevel(){return this.list().length===1}concat(...e){return r.withNamespaces([...this.namespaces(),...Za(e.map(t=>t.namespaces()))])}};function Ya(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function Wa(r){let e=r.split(":");return e[e.length-1]}function Za(r){return[].concat(...r)}function J(r,e){e==null&&(e=r.reduce((i,s)=>i+s.length,0));let t=be(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return t}var Xa=q("/pk/");function f1(r){return{...r,multiaddrs:r.multiaddrs.filter(e=>{let[[t,n]]=e.stringTuples();if(t===53||t===54||t===55)return n!=="localhost";if(t!==4&&t!==6||n==null)return!1;let i=l1(n);return i==null?!0:!i})}}function y0(r){return{...r,multiaddrs:r.multiaddrs.filter(e=>{let[[t,n]]=e.stringTuples();if(n==="localhost")return!0;if(t!==4&&t!==6||n==null)return!1;let i=l1(n);return i??!1})}}function b0(r){return r}async function Vt(r){return(await ne.digest(r)).digest}async function $e(r){return Vt(r.toBytes())}function Mt(r){return new Dr(`${I2}/${L(r,"base32")}`,!1)}function w0(r){return J([Xa,r.toBytes()])}function v0(r){return L(r.subarray(0,4))==="/pk/"}function x0(r){return yt(r.subarray(4))}function Xs(r,e){let t=new Date;return new me(r,e,t).serialize()}function E0(r,e=100){let t;return()=>{clearTimeout(t),t=setTimeout(()=>{r()},e)}}var Ja=290,e6=54,t6=55,r6=56,n6=4,i6=41;function A0(r){let e=r.stringTuples();for(let t of e)if(t[0]===Ja)return!1;if(e[0][0]===e6||e[0][0]===t6||e[0][0]===r6)return!0;if(e[0][0]===n6||e[0][0]===i6){let t=l1(`${e[0][1]}`);return t==null||!t}return!1}var h1=class{log;components;validators;selectors;peerRouting;queryManager;network;constructor(e,t){let{validators:n,selectors:i,peerRouting:s,queryManager:o,network:a,logPrefix:c}=t;this.components=e,this.log=e.logger.forComponent(`${c}:content-fetching`),this.validators=n,this.selectors=i,this.peerRouting=s,this.queryManager=o,this.network=a}async getLocal(e){this.log("getLocal %b",e);let t=Mt(e);this.log("fetching record for key %k",t);let n=await this.components.datastore.get(t);this.log("found %k in local datastore",t);let i=me.deserialize(n);return await _r(this.validators,i),i}async*sendCorrectionRecord(e,t,n,i={}){this.log("sendCorrection for %b",e);let s=Xs(e,n);for(let{value:o,from:a}of t){if(Q(o,n)){this.log("record was ok");continue}if(this.components.peerId.equals(a)){try{let u=Mt(e);this.log(`Storing corrected record for key ${u.toString()}`),await this.components.datastore.put(u,s.subarray())}catch(u){this.log.error("Failed error correcting self",u)}continue}let c=!1,l={type:F.PUT_VALUE,key:e,record:s};for await(let u of this.network.sendRequest(a,l,i))u.name==="PEER_RESPONSE"&&u.record!=null&&Q(u.record.value,me.deserialize(s).value)&&(c=!0),yield u;c||(yield Ve({from:a,error:new x("value not put correctly","ERR_PUT_VALUE_INVALID")},i)),this.log.error("Failed error correcting entry")}}async*put(e,t,n={}){this.log("put key %b value %b",e,t);let i=Xs(e,t),s=Mt(e);this.log(`storing record for key ${s.toString()}`),await this.components.datastore.put(s,i.subarray()),yield*Ot(this.peerRouting.getClosestPeers(e,{signal:n.signal}),o=>Ir(o,a=>async()=>{if(a.name!=="FINAL_PEER")return[a];let c=[],l={type:F.PUT_VALUE,key:e,record:i};this.log("send put to %p",a.peer.id);for await(let u of this.network.sendRequest(a.peer.id,l,n))c.push(u),u.name==="PEER_RESPONSE"&&(u.record!=null&&Q(u.record.value,me.deserialize(i).value)||c.push(Ve({from:a.peer.id,error:new x("value not put correctly","ERR_PUT_VALUE_INVALID")},n)));return c}),o=>wn(o,{ordered:!1,concurrency:3}),async function*(o){for await(let a of o)yield*a})}async*get(e,t={}){this.log("get %b",e);let n=[];for await(let a of this.getMany(e,t))a.name==="VALUE"&&n.push(a),yield a;if(n.length===0)return;let i=n.map(a=>a.value),s=0;try{s=o0(this.selectors,e,i)}catch(a){if(a.code!=="ERR_NO_SELECTOR_FUNCTION_FOR_RECORD_KEY")throw a}let o=i[s];if(this.log("GetValue %b %b",e,o),o==null)throw new x("best value was not found","ERR_NOT_FOUND");yield*this.sendCorrectionRecord(e,n,o,t),yield n[s]}async*getMany(e,t={}){this.log("getMany values for %b",e);try{let s=await this.getLocal(e);yield xn({value:s.value,from:this.components.peerId},t)}catch(s){this.log("error getting local value for %b",e,s)}let n=this,i=async function*({peer:s,signal:o}){for await(let a of n.peerRouting.getValueOrPeers(s,e,{signal:o}))yield a,a.name==="PEER_RESPONSE"&&a.record!=null&&(yield xn({from:s,value:a.record.value},t))};yield*this.queryManager.run(e,i,t)}};function eo(r,e){let t={[Symbol.iterator]:()=>t,next:()=>{let n=r.next(),i=n.value;return n.done===!0||i==null?{done:!0,value:void 0}:{done:!1,value:e(i)}}};return t}var at=class r{set;constructor(e){if(this.set=new Set,e!=null)for(let t of e)this.set.add(t.toString())}get size(){return this.set.size}[Symbol.iterator](){return this.values()}add(e){this.set.add(e.toString())}clear(){this.set.clear()}delete(e){this.set.delete(e.toString())}entries(){return eo(this.set.entries(),e=>{let t=sr(e[0]);return[t,t]})}forEach(e){this.set.forEach(t=>{let n=sr(t);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return eo(this.set.values(),e=>sr(e))}intersection(e){let t=new r;for(let n of e)this.has(n)&&t.add(n);return t}difference(e){let t=new r;for(let n of this)e.has(n)||t.add(n);return t}union(e){let t=new r;for(let n of e)t.add(n);for(let n of this)t.add(n);return t}};var ee={get(r=globalThis){let e=r.crypto;if(e?.subtle==null)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p/blob/main/packages/crypto/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return e}};var I0={SHA1:20,SHA256:32,SHA512:64};var s6={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"},o6=async(r,e)=>{let t=await ee.get().subtle.sign({name:"HMAC"},r,e);return new Uint8Array(t,0,t.byteLength)};async function S0(r,e){let t=s6[r],n=await ee.get().subtle.importKey("raw",e,{name:"HMAC",hash:{name:t}},!1,["sign"]);return{async digest(i){return o6(n,i)},length:I0[r]}}var gi={};ue(gi,{Ed25519PrivateKey:()=>Bt,Ed25519PublicKey:()=>lr,MAX_RSA_KEY_SIZE:()=>hr,RsaPrivateKey:()=>Zt,RsaPublicKey:()=>fr,Secp256k1PrivateKey:()=>gr,Secp256k1PublicKey:()=>pr,generateEphemeralKeyPair:()=>r3,generateKeyPair:()=>o7,generateKeyPairFromSeed:()=>a7,importKey:()=>f7,keyStretcher:()=>s3,keysPBM:()=>jr,marshalPrivateKey:()=>u7,marshalPublicKey:()=>l7,supportedKeys:()=>Lt,unmarshalPrivateKey:()=>f4,unmarshalPublicKey:()=>c7});var bo={};ue(bo,{Ed25519PrivateKey:()=>Bt,Ed25519PublicKey:()=>lr,generateKeyPair:()=>m8,generateKeyPairFromSeed:()=>yo,unmarshalEd25519PrivateKey:()=>p8,unmarshalEd25519PublicKey:()=>g8});function to(r,e){let t=q(r,"base64urlpad");if(e!=null){if(t.length>e)throw new Error("byte array longer than desired length");t=J([new Uint8Array(e-t.length),t])}return t}function ze(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Ur(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}function c6(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Or(r,...e){if(!c6(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}function d1(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Ur(r.outputLen),Ur(r.blockLen)}function Vr(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function k0(r,e){Or(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var p1=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;var Fr=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),We=(r,e)=>r<<32-e|r>>>e;var rf=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;var l6=async()=>{};async function R0(r,e,t){let n=Date.now();for(let i=0;i<r;i++){t(i);let s=Date.now()-n;s>=0&&s<e||(await l6(),n+=s)}}function T0(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function Ft(r){return typeof r=="string"&&(r=T0(r)),Or(r),r}function ro(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];Or(i),e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let s=r[n];t.set(s,i),i+=s.length}return t}var Mr=class{clone(){return this._cloneInto()}},u6={}.toString;function _0(r,e){if(e!==void 0&&u6.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function g1(r){let e=n=>r().update(Ft(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Hr(r=32){if(p1&&typeof p1.getRandomValues=="function")return p1.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function f6(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let i=BigInt(32),s=BigInt(4294967295),o=Number(t>>i&s),a=Number(t&s),c=n?4:0,l=n?0:4;r.setUint32(e+c,o,n),r.setUint32(e+l,a,n)}var N0=(r,e,t)=>r&e^~r&t,L0=(r,e,t)=>r&e^r&t^e&t,Kr=class extends Mr{constructor(e,t,n,i){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Fr(this.buffer)}update(e){Vr(this);let{view:t,buffer:n,blockLen:i}=this;e=Ft(e);let s=e.length;for(let o=0;o<s;){let a=Math.min(i-this.pos,s-o);if(a===i){let c=Fr(e);for(;i<=s-o;o+=i)this.process(c,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Vr(this),k0(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:i,isLE:s}=this,{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(n,0),o=0);for(let f=o;f<i;f++)t[f]=0;f6(n,i-8,BigInt(this.length*8),s),this.process(n,0);let a=Fr(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let l=c/4,u=this.get();if(l>u.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<l;f++)a.setUint32(4*f,u[f],s)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:i,finished:s,destroyed:o,pos:a}=this;return e.length=i,e.pos=a,e.finished=s,e.destroyed=o,i%t&&e.buffer.set(n),e}};var m1=BigInt(4294967295),no=BigInt(32);function P0(r,e=!1){return e?{h:Number(r&m1),l:Number(r>>no&m1)}:{h:Number(r>>no&m1)|0,l:Number(r&m1)|0}}function h6(r,e=!1){let t=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let i=0;i<r.length;i++){let{h:s,l:o}=P0(r[i],e);[t[i],n[i]]=[s,o]}return[t,n]}var d6=(r,e)=>BigInt(r>>>0)<<no|BigInt(e>>>0),p6=(r,e,t)=>r>>>t,g6=(r,e,t)=>r<<32-t|e>>>t,m6=(r,e,t)=>r>>>t|e<<32-t,y6=(r,e,t)=>r<<32-t|e>>>t,b6=(r,e,t)=>r<<64-t|e>>>t-32,w6=(r,e,t)=>r>>>t-32|e<<64-t,v6=(r,e)=>e,x6=(r,e)=>r,E6=(r,e,t)=>r<<t|e>>>32-t,A6=(r,e,t)=>e<<t|r>>>32-t,B6=(r,e,t)=>e<<t-32|r>>>64-t,I6=(r,e,t)=>r<<t-32|e>>>64-t;function S6(r,e,t,n){let i=(e>>>0)+(n>>>0);return{h:r+t+(i/2**32|0)|0,l:i|0}}var k6=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),R6=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,T6=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),_6=(r,e,t,n,i)=>e+t+n+i+(r/2**32|0)|0,N6=(r,e,t,n,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(i>>>0),L6=(r,e,t,n,i,s)=>e+t+n+i+s+(r/2**32|0)|0;var P6={fromBig:P0,split:h6,toBig:d6,shrSH:p6,shrSL:g6,rotrSH:m6,rotrSL:y6,rotrBH:b6,rotrBL:w6,rotr32H:v6,rotr32L:x6,rotlSH:E6,rotlSL:A6,rotlBH:B6,rotlBL:I6,add:S6,add3L:k6,add3H:R6,add4L:T6,add4H:_6,add5H:L6,add5L:N6},D=P6;var[C6,D6]=D.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Ht=new Uint32Array(80),Kt=new Uint32Array(80),io=class extends Kr{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:n,Bl:i,Ch:s,Cl:o,Dh:a,Dl:c,Eh:l,El:u,Fh:f,Fl:h,Gh:m,Gl:g,Hh:d,Hl:p}=this;return[e,t,n,i,s,o,a,c,l,u,f,h,m,g,d,p]}set(e,t,n,i,s,o,a,c,l,u,f,h,m,g,d,p){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=i|0,this.Ch=s|0,this.Cl=o|0,this.Dh=a|0,this.Dl=c|0,this.Eh=l|0,this.El=u|0,this.Fh=f|0,this.Fl=h|0,this.Gh=m|0,this.Gl=g|0,this.Hh=d|0,this.Hl=p|0}process(e,t){for(let b=0;b<16;b++,t+=4)Ht[b]=e.getUint32(t),Kt[b]=e.getUint32(t+=4);for(let b=16;b<80;b++){let S=Ht[b-15]|0,E=Kt[b-15]|0,I=D.rotrSH(S,E,1)^D.rotrSH(S,E,8)^D.shrSH(S,E,7),T=D.rotrSL(S,E,1)^D.rotrSL(S,E,8)^D.shrSL(S,E,7),_=Ht[b-2]|0,j=Kt[b-2]|0,$=D.rotrSH(_,j,19)^D.rotrBH(_,j,61)^D.shrSH(_,j,6),U=D.rotrSL(_,j,19)^D.rotrBL(_,j,61)^D.shrSL(_,j,6),ce=D.add4L(T,U,Kt[b-7],Kt[b-16]),ae=D.add4H(ce,I,$,Ht[b-7],Ht[b-16]);Ht[b]=ae|0,Kt[b]=ce|0}let{Ah:n,Al:i,Bh:s,Bl:o,Ch:a,Cl:c,Dh:l,Dl:u,Eh:f,El:h,Fh:m,Fl:g,Gh:d,Gl:p,Hh:y,Hl:v}=this;for(let b=0;b<80;b++){let S=D.rotrSH(f,h,14)^D.rotrSH(f,h,18)^D.rotrBH(f,h,41),E=D.rotrSL(f,h,14)^D.rotrSL(f,h,18)^D.rotrBL(f,h,41),I=f&m^~f&d,T=h&g^~h&p,_=D.add5L(v,E,T,D6[b],Kt[b]),j=D.add5H(_,y,S,I,C6[b],Ht[b]),$=_|0,U=D.rotrSH(n,i,28)^D.rotrBH(n,i,34)^D.rotrBH(n,i,39),ce=D.rotrSL(n,i,28)^D.rotrBL(n,i,34)^D.rotrBL(n,i,39),ae=n&s^n&a^s&a,He=i&o^i&c^o&c;y=d|0,v=p|0,d=m|0,p=g|0,m=f|0,g=h|0,{h:f,l:h}=D.add(l|0,u|0,j|0,$|0),l=a|0,u=c|0,a=s|0,c=o|0,s=n|0,o=i|0;let A=D.add3L($,ce,He);n=D.add3H(A,j,U,ae),i=A|0}({h:n,l:i}=D.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:s,l:o}=D.add(this.Bh|0,this.Bl|0,s|0,o|0),{h:a,l:c}=D.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:l,l:u}=D.add(this.Dh|0,this.Dl|0,l|0,u|0),{h:f,l:h}=D.add(this.Eh|0,this.El|0,f|0,h|0),{h:m,l:g}=D.add(this.Fh|0,this.Fl|0,m|0,g|0),{h:d,l:p}=D.add(this.Gh|0,this.Gl|0,d|0,p|0),{h:y,l:v}=D.add(this.Hh|0,this.Hl|0,y|0,v|0),this.set(n,i,s,o,a,c,l,u,f,h,m,g,d,p,y,v)}roundClean(){Ht.fill(0),Kt.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Bn=g1(()=>new io);var b1={};ue(b1,{abytes:()=>qr,bitGet:()=>K6,bitLen:()=>H6,bitMask:()=>In,bitSet:()=>q6,bytesToHex:()=>vt,bytesToNumberBE:()=>xt,bytesToNumberLE:()=>$t,concatBytes:()=>Et,createHmacDrbg:()=>ao,ensureBytes:()=>oe,equalBytes:()=>M6,hexToBytes:()=>or,hexToNumber:()=>oo,isBytes:()=>qt,numberToBytesBE:()=>zt,numberToBytesLE:()=>ar,numberToHexUnpadded:()=>O0,numberToVarBytesBE:()=>V6,utf8ToBytes:()=>F6,validateObject:()=>ct});var U0=BigInt(0),y1=BigInt(1),U6=BigInt(2);function qt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function qr(r){if(!qt(r))throw new Error("Uint8Array expected")}var O6=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function vt(r){qr(r);let e="";for(let t=0;t<r.length;t++)e+=O6[r[t]];return e}function O0(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function oo(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var wt={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function C0(r){if(r>=wt._0&&r<=wt._9)return r-wt._0;if(r>=wt._A&&r<=wt._F)return r-(wt._A-10);if(r>=wt._a&&r<=wt._f)return r-(wt._a-10)}function or(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let i=0,s=0;i<t;i++,s+=2){let o=C0(r.charCodeAt(s)),a=C0(r.charCodeAt(s+1));if(o===void 0||a===void 0){let c=r[s]+r[s+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+s)}n[i]=o*16+a}return n}function xt(r){return oo(vt(r))}function $t(r){return qr(r),oo(vt(Uint8Array.from(r).reverse()))}function zt(r,e){return or(r.toString(16).padStart(e*2,"0"))}function ar(r,e){return zt(r,e).reverse()}function V6(r){return or(O0(r))}function oe(r,e,t){let n;if(typeof e=="string")try{n=or(e)}catch(s){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${s}`)}else if(qt(e))n=Uint8Array.from(e);else throw new Error(`${r} must be hex string or Uint8Array`);let i=n.length;if(typeof t=="number"&&i!==t)throw new Error(`${r} expected ${t} bytes, got ${i}`);return n}function Et(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];qr(i),e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let s=r[n];t.set(s,i),i+=s.length}return t}function M6(r,e){if(r.length!==e.length)return!1;let t=0;for(let n=0;n<r.length;n++)t|=r[n]^e[n];return t===0}function F6(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function H6(r){let e;for(e=0;r>U0;r>>=y1,e+=1);return e}function K6(r,e){return r>>BigInt(e)&y1}function q6(r,e,t){return r|(t?y1:U0)<<BigInt(e)}var In=r=>(U6<<BigInt(r-1))-y1,so=r=>new Uint8Array(r),D0=r=>Uint8Array.from(r);function ao(r,e,t){if(typeof r!="number"||r<2)throw new Error("hashLen must be a number");if(typeof e!="number"||e<2)throw new Error("qByteLen must be a number");if(typeof t!="function")throw new Error("hmacFn must be a function");let n=so(r),i=so(r),s=0,o=()=>{n.fill(1),i.fill(0),s=0},a=(...f)=>t(i,n,...f),c=(f=so())=>{i=a(D0([0]),f),n=a(),f.length!==0&&(i=a(D0([1]),f),n=a())},l=()=>{if(s++>=1e3)throw new Error("drbg: tried 1000 values");let f=0,h=[];for(;f<e;){n=a();let m=n.slice();h.push(m),f+=n.length}return Et(...h)};return(f,h)=>{o(),c(f);let m;for(;!(m=h(l()));)c();return o(),m}}var $6={bigint:r=>typeof r=="bigint",function:r=>typeof r=="function",boolean:r=>typeof r=="boolean",string:r=>typeof r=="string",stringOrUint8Array:r=>typeof r=="string"||qt(r),isSafeInteger:r=>Number.isSafeInteger(r),array:r=>Array.isArray(r),field:(r,e)=>e.Fp.isValid(r),hash:r=>typeof r=="function"&&Number.isSafeInteger(r.outputLen)};function ct(r,e,t={}){let n=(i,s,o)=>{let a=$6[s];if(typeof a!="function")throw new Error(`Invalid validator "${s}", expected function`);let c=r[i];if(!(o&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${s}`)};for(let[i,s]of Object.entries(e))n(i,s,!1);for(let[i,s]of Object.entries(t))n(i,s,!0);return r}var ye=BigInt(0),te=BigInt(1),cr=BigInt(2),z6=BigInt(3),co=BigInt(4),V0=BigInt(5),M0=BigInt(8),G6=BigInt(9),j6=BigInt(16);function Z(r,e){let t=r%e;return t>=ye?t:e+t}function Y6(r,e,t){if(t<=ye||e<ye)throw new Error("Expected power/modulo > 0");if(t===te)return ye;let n=te;for(;e>ye;)e&te&&(n=n*r%t),r=r*r%t,e>>=te;return n}function re(r,e,t){let n=r;for(;e-- >ye;)n*=n,n%=t;return n}function w1(r,e){if(r===ye||e<=ye)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=Z(r,e),n=e,i=ye,s=te,o=te,a=ye;for(;t!==ye;){let l=n/t,u=n%t,f=i-o*l,h=s-a*l;n=t,t=u,i=o,s=a,o=f,a=h}if(n!==te)throw new Error("invert: does not exist");return Z(i,e)}function W6(r){let e=(r-te)/cr,t,n,i;for(t=r-te,n=0;t%cr===ye;t/=cr,n++);for(i=cr;i<r&&Y6(i,e,r)!==r-te;i++);if(n===1){let o=(r+te)/co;return function(c,l){let u=c.pow(l,o);if(!c.eql(c.sqr(u),l))throw new Error("Cannot find square root");return u}}let s=(t+te)/cr;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let l=n,u=a.pow(a.mul(a.ONE,i),t),f=a.pow(c,s),h=a.pow(c,t);for(;!a.eql(h,a.ONE);){if(a.eql(h,a.ZERO))return a.ZERO;let m=1;for(let d=a.sqr(h);m<l&&!a.eql(d,a.ONE);m++)d=a.sqr(d);let g=a.pow(u,te<<BigInt(l-m-1));u=a.sqr(g),f=a.mul(f,g),h=a.mul(h,u),l=m}return f}}function Z6(r){if(r%co===z6){let e=(r+te)/co;return function(n,i){let s=n.pow(i,e);if(!n.eql(n.sqr(s),i))throw new Error("Cannot find square root");return s}}if(r%M0===V0){let e=(r-V0)/M0;return function(n,i){let s=n.mul(i,cr),o=n.pow(s,e),a=n.mul(i,o),c=n.mul(n.mul(a,cr),o),l=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(l),i))throw new Error("Cannot find square root");return l}}return r%j6,W6(r)}var F0=(r,e)=>(Z(r,e)&te)===te,Q6=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function lo(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=Q6.reduce((n,i)=>(n[i]="function",n),e);return ct(r,t)}function X6(r,e,t){if(t<ye)throw new Error("Expected power > 0");if(t===ye)return r.ONE;if(t===te)return e;let n=r.ONE,i=e;for(;t>ye;)t&te&&(n=r.mul(n,i)),i=r.sqr(i),t>>=te;return n}function J6(r,e){let t=new Array(e.length),n=e.reduce((s,o,a)=>r.is0(o)?s:(t[a]=s,r.mul(s,o)),r.ONE),i=r.inv(n);return e.reduceRight((s,o,a)=>r.is0(o)?s:(t[a]=r.mul(s,t[a]),r.mul(s,o)),i),t}function uo(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function v1(r,e,t=!1,n={}){if(r<=ye)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:i,nByteLength:s}=uo(r,e);if(s>2048)throw new Error("Field lengths over 2048 bytes are not supported");let o=Z6(r),a=Object.freeze({ORDER:r,BITS:i,BYTES:s,MASK:In(i),ZERO:ye,ONE:te,create:c=>Z(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return ye<=c&&c<r},is0:c=>c===ye,isOdd:c=>(c&te)===te,neg:c=>Z(-c,r),eql:(c,l)=>c===l,sqr:c=>Z(c*c,r),add:(c,l)=>Z(c+l,r),sub:(c,l)=>Z(c-l,r),mul:(c,l)=>Z(c*l,r),pow:(c,l)=>X6(a,c,l),div:(c,l)=>Z(c*w1(l,r),r),sqrN:c=>c*c,addN:(c,l)=>c+l,subN:(c,l)=>c-l,mulN:(c,l)=>c*l,inv:c=>w1(c,r),sqrt:n.sqrt||(c=>o(a,c)),invertBatch:c=>J6(a,c),cmov:(c,l,u)=>u?l:c,toBytes:c=>t?ar(c,s):zt(c,s),fromBytes:c=>{if(c.length!==s)throw new Error(`Fp.fromBytes: expected ${s}, got ${c.length}`);return t?$t(c):xt(c)}});return Object.freeze(a)}function H0(r){if(typeof r!="bigint")throw new Error("field order must be bigint");let e=r.toString(2).length;return Math.ceil(e/8)}function fo(r){let e=H0(r);return e+Math.ceil(e/2)}function K0(r,e,t=!1){let n=r.length,i=H0(e),s=fo(e);if(n<16||n<s||n>1024)throw new Error(`expected ${s}-1024 bytes of input, got ${n}`);let o=t?xt(r):$t(r),a=Z(o,e-te)+te;return t?ar(a,i):zt(a,i)}var t8=BigInt(0),ho=BigInt(1);function x1(r,e){let t=(i,s)=>{let o=s.negate();return i?o:s},n=i=>{let s=Math.ceil(e/i)+1,o=2**(i-1);return{windows:s,windowSize:o}};return{constTimeNegate:t,unsafeLadder(i,s){let o=r.ZERO,a=i;for(;s>t8;)s&ho&&(o=o.add(a)),a=a.double(),s>>=ho;return o},precomputeWindow(i,s){let{windows:o,windowSize:a}=n(s),c=[],l=i,u=l;for(let f=0;f<o;f++){u=l,c.push(u);for(let h=1;h<a;h++)u=u.add(l),c.push(u);l=u.double()}return c},wNAF(i,s,o){let{windows:a,windowSize:c}=n(i),l=r.ZERO,u=r.BASE,f=BigInt(2**i-1),h=2**i,m=BigInt(i);for(let g=0;g<a;g++){let d=g*c,p=Number(o&f);o>>=m,p>c&&(p-=h,o+=ho);let y=d,v=d+Math.abs(p)-1,b=g%2!==0,S=p<0;p===0?u=u.add(t(b,s[y])):l=l.add(t(S,s[v]))}return{p:l,f:u}},wNAFCached(i,s,o,a){let c=i._WINDOW_SIZE||1,l=s.get(i);return l||(l=this.precomputeWindow(i,c),c!==1&&s.set(i,a(l))),this.wNAF(c,l,o)}}}function Sn(r){return lo(r.Fp),ct(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...uo(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Ze=BigInt(0),Me=BigInt(1),E1=BigInt(2),r8=BigInt(8),n8={zip215:!0};function i8(r){let e=Sn(r);return ct(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function q0(r){let e=i8(r),{Fp:t,n,prehash:i,hash:s,randomBytes:o,nByteLength:a,h:c}=e,l=E1<<BigInt(a*8)-Me,u=t.create,f=e.uvRatio||((B,w)=>{try{return{isValid:!0,value:t.sqrt(B*t.inv(w))}}catch{return{isValid:!1,value:Ze}}}),h=e.adjustScalarBytes||(B=>B),m=e.domain||((B,w,R)=>{if(w.length||R)throw new Error("Contexts/pre-hash are not supported");return B}),g=B=>typeof B=="bigint"&&Ze<B,d=(B,w)=>g(B)&&g(w)&&B<w,p=B=>B===Ze||d(B,l);function y(B,w){if(d(B,w))return B;throw new Error(`Expected valid scalar < ${w}, got ${typeof B} ${B}`)}function v(B){return B===Ze?B:y(B,n)}let b=new Map;function S(B){if(!(B instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(w,R,P,C){if(this.ex=w,this.ey=R,this.ez=P,this.et=C,!p(w))throw new Error("x required");if(!p(R))throw new Error("y required");if(!p(P))throw new Error("z required");if(!p(C))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(w){if(w instanceof E)throw new Error("extended point not allowed");let{x:R,y:P}=w||{};if(!p(R)||!p(P))throw new Error("invalid affine point");return new E(R,P,Me,u(R*P))}static normalizeZ(w){let R=t.invertBatch(w.map(P=>P.ez));return w.map((P,C)=>P.toAffine(R[C])).map(E.fromAffine)}_setWindowSize(w){this._WINDOW_SIZE=w,b.delete(this)}assertValidity(){let{a:w,d:R}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:P,ey:C,ez:V,et:M}=this,G=u(P*P),K=u(C*C),z=u(V*V),le=u(z*z),ie=u(G*w),ve=u(z*u(ie+K)),xe=u(le+u(R*u(G*K)));if(ve!==xe)throw new Error("bad point: equation left != right (1)");let pe=u(P*C),Be=u(V*M);if(pe!==Be)throw new Error("bad point: equation left != right (2)")}equals(w){S(w);let{ex:R,ey:P,ez:C}=this,{ex:V,ey:M,ez:G}=w,K=u(R*G),z=u(V*C),le=u(P*G),ie=u(M*C);return K===z&&le===ie}is0(){return this.equals(E.ZERO)}negate(){return new E(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){let{a:w}=e,{ex:R,ey:P,ez:C}=this,V=u(R*R),M=u(P*P),G=u(E1*u(C*C)),K=u(w*V),z=R+P,le=u(u(z*z)-V-M),ie=K+M,ve=ie-G,xe=K-M,pe=u(le*ve),Be=u(ie*xe),dt=u(le*xe),er=u(ve*ie);return new E(pe,Be,er,dt)}add(w){S(w);let{a:R,d:P}=e,{ex:C,ey:V,ez:M,et:G}=this,{ex:K,ey:z,ez:le,et:ie}=w;if(R===BigInt(-1)){let c2=u((V-C)*(z+K)),l2=u((V+C)*(z-K)),Zi=u(l2-c2);if(Zi===Ze)return this.double();let u2=u(M*E1*ie),f2=u(G*E1*le),h2=f2+u2,d2=l2+c2,p2=f2-u2,X4=u(h2*Zi),J4=u(d2*p2),e5=u(h2*p2),t5=u(Zi*d2);return new E(X4,J4,t5,e5)}let ve=u(C*K),xe=u(V*z),pe=u(G*P*ie),Be=u(M*le),dt=u((C+V)*(K+z)-ve-xe),er=Be-pe,cn=Be+pe,a2=u(xe-R*ve),Y4=u(dt*er),W4=u(cn*a2),Z4=u(dt*a2),Q4=u(er*cn);return new E(Y4,W4,Q4,Z4)}subtract(w){return this.add(w.negate())}wNAF(w){return _.wNAFCached(this,b,w,E.normalizeZ)}multiply(w){let{p:R,f:P}=this.wNAF(y(w,n));return E.normalizeZ([R,P])[0]}multiplyUnsafe(w){let R=v(w);return R===Ze?T:this.equals(T)||R===Me?this:this.equals(I)?this.wNAF(R).p:_.unsafeLadder(this,R)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,n).is0()}toAffine(w){let{ex:R,ey:P,ez:C}=this,V=this.is0();w==null&&(w=V?r8:t.inv(C));let M=u(R*w),G=u(P*w),K=u(C*w);if(V)return{x:Ze,y:Me};if(K!==Me)throw new Error("invZ was invalid");return{x:M,y:G}}clearCofactor(){let{h:w}=e;return w===Me?this:this.multiplyUnsafe(w)}static fromHex(w,R=!1){let{d:P,a:C}=e,V=t.BYTES;w=oe("pointHex",w,V);let M=w.slice(),G=w[V-1];M[V-1]=G&-129;let K=$t(M);K===Ze||(R?y(K,l):y(K,t.ORDER));let z=u(K*K),le=u(z-Me),ie=u(P*z-C),{isValid:ve,value:xe}=f(le,ie);if(!ve)throw new Error("Point.fromHex: invalid y coordinate");let pe=(xe&Me)===Me,Be=(G&128)!==0;if(!R&&xe===Ze&&Be)throw new Error("Point.fromHex: x=0 and x_0=1");return Be!==pe&&(xe=u(-xe)),E.fromAffine({x:xe,y:K})}static fromPrivateKey(w){return U(w).point}toRawBytes(){let{x:w,y:R}=this.toAffine(),P=ar(R,t.BYTES);return P[P.length-1]|=w&Me?128:0,P}toHex(){return vt(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,Me,u(e.Gx*e.Gy)),E.ZERO=new E(Ze,Me,Me,Ze);let{BASE:I,ZERO:T}=E,_=x1(E,a*8);function j(B){return Z(B,n)}function $(B){return j($t(B))}function U(B){let w=a;B=oe("private key",B,w);let R=oe("hashed private key",s(B),2*w),P=h(R.slice(0,w)),C=R.slice(w,2*w),V=$(P),M=I.multiply(V),G=M.toRawBytes();return{head:P,prefix:C,scalar:V,point:M,pointBytes:G}}function ce(B){return U(B).pointBytes}function ae(B=new Uint8Array,...w){let R=Et(...w);return $(s(m(R,oe("context",B),!!i)))}function He(B,w,R={}){B=oe("message",B),i&&(B=i(B));let{prefix:P,scalar:C,pointBytes:V}=U(w),M=ae(R.context,P,B),G=I.multiply(M).toRawBytes(),K=ae(R.context,G,V,B),z=j(M+K*C);v(z);let le=Et(G,ar(z,t.BYTES));return oe("result",le,a*2)}let A=n8;function N(B,w,R,P=A){let{context:C,zip215:V}=P,M=t.BYTES;B=oe("signature",B,2*M),w=oe("message",w),i&&(w=i(w));let G=$t(B.slice(M,2*M)),K,z,le;try{K=E.fromHex(R,V),z=E.fromHex(B.slice(0,M),V),le=I.multiplyUnsafe(G)}catch{return!1}if(!V&&K.isSmallOrder())return!1;let ie=ae(C,z.toRawBytes(),K.toRawBytes(),w);return z.add(K.multiplyUnsafe(ie)).subtract(le).clearCofactor().equals(E.ZERO)}return I._setWindowSize(8),{CURVE:e,getPublicKey:ce,sign:He,verify:N,ExtendedPoint:E,utils:{getExtendedPublicKey:U,randomPrivateKey:()=>o(t.BYTES),precompute(B=8,w=E.BASE){return w._setWindowSize(B),w.multiply(BigInt(3)),w}}}}var po=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),$0=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Sf=BigInt(0),s8=BigInt(1),z0=BigInt(2),kf=BigInt(3),o8=BigInt(5),a8=BigInt(8);function c8(r){let e=BigInt(10),t=BigInt(20),n=BigInt(40),i=BigInt(80),s=po,a=r*r%s*r%s,c=re(a,z0,s)*a%s,l=re(c,s8,s)*r%s,u=re(l,o8,s)*l%s,f=re(u,e,s)*u%s,h=re(f,t,s)*f%s,m=re(h,n,s)*h%s,g=re(m,i,s)*m%s,d=re(g,i,s)*m%s,p=re(d,e,s)*u%s;return{pow_p_5_8:re(p,z0,s)*r%s,b2:a}}function l8(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function u8(r,e){let t=po,n=Z(e*e*e,t),i=Z(n*n*e,t),s=c8(r*i).pow_p_5_8,o=Z(r*n*s,t),a=Z(e*o*o,t),c=o,l=Z(o*$0,t),u=a===r,f=a===Z(-r,t),h=a===Z(-r*$0,t);return u&&(o=c),(f||h)&&(o=l),F0(o,t)&&(o=Z(-o,t)),{isValid:u||f,value:o}}var f8=v1(po,void 0,!0),h8={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:f8,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:a8,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Bn,randomBytes:Hr,adjustScalarBytes:l8,uvRatio:u8},$r=q0(h8);var zr=32,At=64,A1=32;function G0(){let r=$r.utils.randomPrivateKey(),e=$r.getPublicKey(r);return{privateKey:Z0(r,e),publicKey:e}}function j0(r){if(r.length!==A1)throw new TypeError('"seed" must be 32 bytes in length.');if(!(r instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');let e=r,t=$r.getPublicKey(e);return{privateKey:Z0(e,t),publicKey:t}}function Y0(r,e){let t=r.subarray(0,A1);return $r.sign(e instanceof Uint8Array?e:e.subarray(),t)}function W0(r,e,t){return $r.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function Z0(r,e){let t=new Uint8Array(At);for(let n=0;n<A1;n++)t[n]=r[n],t[A1+n]=e[n];return t}var go={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function B1(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,i=r?.digest??"SHA-256",s=r?.saltLength??16,o=r?.iterations??32767,a=ee.get();t*=8;async function c(f,h){let m=a.getRandomValues(new Uint8Array(s)),g=a.getRandomValues(new Uint8Array(n)),d={name:e,iv:g};typeof h=="string"&&(h=q(h));let p;if(h.length===0){p=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["encrypt"]);try{let v={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(v,b,{name:e,length:t},!0,["encrypt"])}catch{p=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["encrypt"])}}else{let v={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},b=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);p=await a.subtle.deriveKey(v,b,{name:e,length:t},!0,["encrypt"])}let y=await a.subtle.encrypt(d,p,f);return J([m,d.iv,new Uint8Array(y)])}async function l(f,h){let m=f.subarray(0,s),g=f.subarray(s,s+n),d=f.subarray(s+n),p={name:e,iv:g};typeof h=="string"&&(h=q(h));let y;if(h.length===0)try{let b={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,S,{name:e,length:t},!0,["decrypt"])}catch{y=await a.subtle.importKey("jwk",go,{name:"AES-GCM"},!0,["decrypt"])}else{let b={name:"PBKDF2",salt:m,iterations:o,hash:{name:i}},S=await a.subtle.importKey("raw",h,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(b,S,{name:e,length:t},!0,["decrypt"])}let v=await a.subtle.decrypt(p,y,d);return new Uint8Array(v)}return{encrypt:c,decrypt:l}}async function Gr(r,e){let n=await B1().encrypt(r,e);return fn.encode(n)}var jr={};ue(jr,{KeyType:()=>X,PrivateKey:()=>Xe,PublicKey:()=>Qe});var X;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(X||(X={}));var mo;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(mo||(mo={}));(function(r){r.codec=()=>Br(mo)})(X||(X={}));var Qe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),X.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:i.Type=X.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(o&7);break}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Qe||(Qe={}));var Xe;(function(r){let e;r.codec=()=>(e==null&&(e=ot((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),X.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},s=n==null?t.len:t.pos+n;for(;t.pos<s;){let o=t.uint32();switch(o>>>3){case 1:i.Type=X.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(o&7);break}}return i})),e),r.encode=t=>st(t,r.codec()),r.decode=t=>nt(t,r.codec())})(Xe||(Xe={}));var lr=class{_key;constructor(e){this._key=Yr(e,zr)}verify(e,t){return W0(this._key,t,e)}marshal(){return this._key}get bytes(){return Qe.encode({Type:X.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Q(this.bytes,e.bytes)}hash(){let e=ne.digest(this.bytes);return ze(e)?e.then(({bytes:t})=>t):e.bytes}},Bt=class{_key;_publicKey;constructor(e,t){this._key=Yr(e,At),this._publicKey=Yr(t,zr)}sign(e){return Y0(this._key,e)}get public(){return new lr(this._publicKey)}marshal(){return this._key}get bytes(){return Xe.encode({Type:X.Ed25519,Data:this.marshal()}).subarray()}equals(e){return Q(this.bytes,e.bytes)}async hash(){let e=ne.digest(this.bytes),t;return ze(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=mt.digest(this.public.bytes);return ge.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return Gr(this.bytes,e);throw new x(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function p8(r){if(r.length>At){r=Yr(r,At+zr);let n=r.subarray(0,At),i=r.subarray(At,r.length);return new Bt(n,i)}r=Yr(r,At);let e=r.subarray(0,At),t=r.subarray(zr);return new Bt(e,t)}function g8(r){return r=Yr(r,zr),new lr(r)}async function m8(){let{privateKey:r,publicKey:e}=G0();return new Bt(r,e)}async function yo(r){let{privateKey:e,publicKey:t}=j0(r);return new Bt(e,t)}function Yr(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new x(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var X0={"P-256":256,"P-384":384,"P-521":521},y8=Object.keys(X0),wo=y8.join(" / ");async function J0(r){if(r!=="P-256"&&r!=="P-384"&&r!=="P-521")throw new x(`Unknown curve: ${r}. Must be ${wo}`,"ERR_INVALID_CURVE");let e=await ee.get().subtle.generateKey({name:"ECDH",namedCurve:r},!0,["deriveBits"]),t=async(s,o)=>{let a;o!=null?a=await ee.get().subtle.importKey("jwk",w8(r,o),{name:"ECDH",namedCurve:r},!1,["deriveBits"]):a=e.privateKey;let c=await ee.get().subtle.importKey("jwk",t3(r,s),{name:"ECDH",namedCurve:r},!1,[]),l=await ee.get().subtle.deriveBits({name:"ECDH",namedCurve:r,public:c},a,X0[r]);return new Uint8Array(l,0,l.byteLength)},n=await ee.get().subtle.exportKey("jwk",e.publicKey);return{key:b8(n),genSharedKey:t}}var e3={"P-256":32,"P-384":48,"P-521":66};function b8(r){if(r.crv==null||r.x==null||r.y==null)throw new x("JWK was missing components","ERR_INVALID_PARAMETERS");if(r.crv!=="P-256"&&r.crv!=="P-384"&&r.crv!=="P-521")throw new x(`Unknown curve: ${r.crv}. Must be ${wo}`,"ERR_INVALID_CURVE");let e=e3[r.crv];return J([Uint8Array.from([4]),to(r.x,e),to(r.y,e)],1+e*2)}function t3(r,e){if(r!=="P-256"&&r!=="P-384"&&r!=="P-521")throw new x(`Unknown curve: ${r}. Must be ${wo}`,"ERR_INVALID_CURVE");let t=e3[r];if(!Q(e.subarray(0,1),Uint8Array.from([4])))throw new x("Cannot unmarshal public key - invalid key format","ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:r,x:L(e.subarray(1,t+1),"base64url"),y:L(e.subarray(1+t),"base64url"),ext:!0}}var w8=(r,e)=>({...t3(r,e.public),d:L(e.private,"base64url")});var r3=J0;async function n3(r,e){let t=fn.decode(r);return B1().decrypt(t,e)}var i3={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,keySize:32}};async function s3(r,e,t){let n=i3[r];if(n==null){let v=Object.keys(i3).join(" / ");throw new x(`unknown cipher type '${r}'. Must be ${v}`,"ERR_INVALID_CIPHER_TYPE")}if(e==null)throw new x("missing hash type","ERR_MISSING_HASH_TYPE");let i=n.keySize,s=n.ivSize,o=20,a=q("key expansion"),c=2*(s+i+o),l=await S0(e,t),u=await l.digest(a),f=[],h=0;for(;h<c;){let v=await l.digest(J([u,a])),b=v.length;h+b>c&&(b=c-h),f.push(v),h+=b,u=await l.digest(u)}let m=c/2,g=J(f),d=g.subarray(0,m),p=g.subarray(m,c),y=v=>({iv:v.subarray(0,s),cipherKey:v.subarray(s,s+i),macKey:v.subarray(s+i)});return{k1:y(d),k2:y(p)}}var _o={};ue(_o,{MAX_RSA_KEY_SIZE:()=>hr,RsaPrivateKey:()=>Zt,RsaPublicKey:()=>fr,fromJwk:()=>z8,generateKeyPair:()=>G8,unmarshalRsaPrivateKey:()=>Ro,unmarshalRsaPublicKey:()=>$8});function lt(r){if(isNaN(r)||r<=0)throw new x("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Hr(r)}var Wt={};ue(Wt,{exportToPem:()=>F8,importFromPem:()=>ko,jwkToPkcs1:()=>U8,jwkToPkix:()=>V8,pkcs1ToJwk:()=>D8,pkixToJwk:()=>O8});var I1=class extends Mr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,d1(e);let n=Ft(t);if(this.iHash=e.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let i=this.blockLen,s=new Uint8Array(i);s.set(n.length>i?e.create().update(n).digest():n);for(let o=0;o<s.length;o++)s[o]^=54;this.iHash.update(s),this.oHash=e.create();for(let o=0;o<s.length;o++)s[o]^=106;this.oHash.update(s),s.fill(0)}update(e){return Vr(this),this.iHash.update(e),this}digestInto(e){Vr(this),Or(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:n,finished:i,destroyed:s,blockLen:o,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=s,e.blockLen=o,e.outputLen=a,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kn=(r,e,t)=>new I1(r,e).update(t).digest();kn.create=(r,e)=>new I1(r,e);function v8(r,e,t,n){d1(r);let i=_0({dkLen:32,asyncTick:10},n),{c:s,dkLen:o,asyncTick:a}=i;if(Ur(s),Ur(o),Ur(a),s<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=Ft(e),l=Ft(t),u=new Uint8Array(o),f=kn.create(r,c),h=f._cloneInto().update(l);return{c:s,dkLen:o,asyncTick:a,DK:u,PRF:f,PRFSalt:h}}function x8(r,e,t,n,i){return r.destroy(),e.destroy(),n&&n.destroy(),i.fill(0),t}async function vo(r,e,t,n){let{c:i,dkLen:s,asyncTick:o,DK:a,PRF:c,PRFSalt:l}=v8(r,e,t,n),u,f=new Uint8Array(4),h=Fr(f),m=new Uint8Array(c.outputLen);for(let g=1,d=0;d<s;g++,d+=c.outputLen){let p=a.subarray(d,d+c.outputLen);h.setInt32(0,g,!1),(u=l._cloneInto(u)).update(f).digestInto(m),p.set(m.subarray(0,p.length)),await R0(i-1,o,()=>{c._cloneInto(u).update(m).digestInto(m);for(let y=0;y<p.length;y++)p[y]^=m[y]})}return x8(c,l,a,u,m)}var H=un(o3());function ur(r,e){let t=0;if(r.length===1)return r[0];for(let n=r.length-1;n>=0;n--)t+=r[r.length-1-n]*Math.pow(2,e*n);return t}function Gt(r,e,t=-1){let n=t,i=r,s=0,o=Math.pow(2,e);for(let a=1;a<8;a++){if(r<o){let c;if(n<0)c=new ArrayBuffer(a),s=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),s=n}let l=new Uint8Array(c);for(let u=a-1;u>=0;u--){let f=Math.pow(2,u*e);l[s-u-1]=Math.floor(i/f),i-=l[s-u-1]*f}return c}o*=Math.pow(2,e)}return new ArrayBuffer(0)}function R1(...r){let e=0,t=0;for(let s of r)e+=s.length;let n=new ArrayBuffer(e),i=new Uint8Array(n);for(let s of r)i.set(s,t),t+=s.length;return i}function Eo(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let a=r[0]===255&&r[1]&128,c=r[0]===0&&(r[1]&128)===0;(a||c)&&this.warnings.push("Needlessly long format")}let e=new ArrayBuffer(this.valueHex.byteLength),t=new Uint8Array(e);for(let a=0;a<this.valueHex.byteLength;a++)t[a]=0;t[0]=r[0]&128;let n=ur(t,8),i=new ArrayBuffer(this.valueHex.byteLength),s=new Uint8Array(i);for(let a=0;a<this.valueHex.byteLength;a++)s[a]=r[a];return s[0]&=127,ur(s,8)-n}function a3(r){let e=r<0?r*-1:r,t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){let o=t-e,a=Gt(o,8,n),c=new Uint8Array(a);return c[0]|=128,a}let i=Gt(e,8,n),s=new Uint8Array(i);if(s[0]&128){let o=i.slice(0),a=new Uint8Array(o);i=new ArrayBuffer(i.byteLength+1),s=new Uint8Array(i);for(let c=0;c<o.byteLength;c++)s[c+1]=a[c];s[0]=0}return i}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function c3(r,e){if(r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),n=new Uint8Array(e);for(let i=0;i<t.length;i++)if(t[i]!==n[i])return!1;return!0}function Ce(r,e){let t=r.toString(10);if(e<t.length)return"";let n=e-t.length,i=new Array(n);for(let o=0;o<n;o++)i[o]="0";return i.join("").concat(t)}var gh=Math.log(2);function T1(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Ao(r){let e=0,t=0;for(let i=0;i<r.length;i++){let s=r[i];e+=s.byteLength}let n=new Uint8Array(e);for(let i=0;i<r.length;i++){let s=r[i];n.set(new Uint8Array(s),t),t+=s.byteLength}return n.buffer}function Tt(r,e,t,n){return e instanceof Uint8Array?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):n<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-n<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var Tn=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return Ao(this.items)}},Rn=[new Uint8Array([1])],l3="0123456789";var Qr="",et=new ArrayBuffer(0),Bo=new Uint8Array(0),_n="EndOfContent",f3="OCTET STRING",h3="BIT STRING";function _t(r){var e;return e=class extends r{constructor(...n){var i;super(...n);let s=n[0]||{};this.isHexOnly=(i=s.isHexOnly)!==null&&i!==void 0?i:!1,this.valueHexView=s.valueHex?H.BufferSourceConverter.toUint8Array(s.valueHex):Bo}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,i,s){let o=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!Tt(this,o,i,s))return-1;let a=i+s;return this.valueHexView=o.subarray(i,a),this.valueHexView.length?(this.blockLength=s,a):(this.warnings.push("Zero buffer length"),i)}toBER(n=!1){return this.isHexOnly?n?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",et)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:H.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var St=class{constructor({blockLength:e=0,error:t=Qr,warnings:n=[],valueBeforeDecode:i=Bo}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=H.BufferSourceConverter.toUint8Array(i)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:H.Convert.ToHex(this.valueBeforeDecodeView)}}};St.NAME="baseBlock";var Re=class extends St{fromBER(e,t,n){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};Re.NAME="valueBlock";var _1=class extends _t(St){constructor({idBlock:e={}}={}){var t,n,i,s;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?H.BufferSourceConverter.toUint8Array(e.valueHex):Bo,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(i=e.tagNumber)!==null&&i!==void 0?i:-1,this.isConstructed=(s=e.isConstructed)!==null&&s!==void 0?s:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(e=!1){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:return this.error="Unknown tag class",et}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let i=new Uint8Array(1);if(!e){let s=this.tagNumber;s&=31,t|=s,i[0]=t}return i.buffer}if(!this.isHexOnly){let i=Gt(this.tagNumber,7),s=new Uint8Array(i),o=i.byteLength,a=new Uint8Array(o+1);if(a[0]=t|31,!e){for(let c=0;c<o-1;c++)a[c+1]=s[c]|128;a[o]=s[o-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){let i=this.valueHexView;for(let s=0;s<i.length-1;s++)n[s+1]=i[s]|128;n[this.valueHexView.byteLength]=i[i.length-1]}return n.buffer}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;let s=i.subarray(t,t+n);if(s.length===0)return this.error="Zero buffer length",-1;switch(s[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(s[0]&32)===32,this.isHexOnly=!1;let a=s[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,l=this.valueHexView=new Uint8Array(255),u=255;for(;s[c]&128;){if(l[c-1]=s[c]&127,c++,c>=s.length)return this.error="End of input reached before message was fully decoded",-1;if(c===u){u+=255;let h=new Uint8Array(u);for(let m=0;m<l.length;m++)h[m]=l[m];l=this.valueHexView=new Uint8Array(u)}}this.blockLength=c+1,l[c-1]=s[c]&127;let f=new Uint8Array(c);for(let h=0;h<c;h++)f[h]=l[h];l=this.valueHexView=new Uint8Array(c),l.set(f),this.blockLength<=9?this.tagNumber=ur(l,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};_1.NAME="identificationBlock";var N1=class extends St{constructor({lenBlock:e={}}={}){var t,n,i;super(),this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==void 0?t:!1,this.longFormUsed=(n=e.longFormUsed)!==null&&n!==void 0?n:!1,this.length=(i=e.length)!==null&&i!==void 0?i:0}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;let s=i.subarray(t,t+n);if(s.length===0)return this.error="Zero buffer length",-1;if(s[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=s[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(s[0]&128),this.longFormUsed===!1)return this.length=s[0],this.blockLength=1,t+this.blockLength;let o=s[0]&127;if(o>8)return this.error="Too big integer",-1;if(o+1>s.length)return this.error="End of input reached before message was fully decoded",-1;let a=t+1,c=i.subarray(a,a+o);return c[o-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=ur(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=o+1,t+this.blockLength}toBER(e=!1){let t,n;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=128),t;if(this.longFormUsed){let i=Gt(this.length,8);if(i.byteLength>127)return this.error="Too big length",et;if(t=new ArrayBuffer(i.byteLength+1),e)return t;let s=new Uint8Array(i);n=new Uint8Array(t),n[0]=i.byteLength|128;for(let o=0;o<i.byteLength;o++)n[o+1]=s[o];return t}return t=new ArrayBuffer(1),e===!1&&(n=new Uint8Array(t),n[0]=this.length),t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};N1.NAME="lengthBlock";var k={},Ae=class extends St{constructor({name:e=Qr,optional:t=!1,primitiveSchema:n,...i}={},s){super(i),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new _1(i),this.lenBlock=new N1(i),this.valueBlock=s?new s(i):new Re(i)}fromBER(e,t,n){let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}toBER(e,t){let n=t||new Tn;t||d3(this);let i=this.idBlock.toBER(e);if(n.write(i),this.lenBlock.isIndefiniteForm)n.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(e,n),n.write(new ArrayBuffer(2));else{let s=this.valueBlock.toBER(e);this.lenBlock.length=s.byteLength;let o=this.lenBlock.toBER(e);n.write(o),n.write(s)}return t?et:n.final()}toJSON(){let e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(e.primitiveSchema=this.primitiveSchema.toJSON()),e}toString(e="ascii"){return e==="ascii"?this.onAsciiEncoding():H.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${H.Convert.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(e){if(this===e)return!0;if(!(e instanceof this.constructor))return!1;let t=this.toBER(),n=e.toBER();return c3(t,n)}};Ae.NAME="BaseBlock";function d3(r){if(r instanceof k.Constructed)for(let e of r.valueBlock.value)d3(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var L1=class extends Ae{constructor({value:e=Qr,...t}={},n){super(t,n),e&&this.fromString(e)}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}fromBER(e,t,n){let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};L1.NAME="BaseStringBlock";var P1=class extends _t(Re){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};P1.NAME="PrimitiveValueBlock";var p3,C1=class extends Ae{constructor(e={}){super(e,P1),this.idBlock.isConstructed=!1}};p3=C1;k.Primitive=p3;C1.NAME="PRIMITIVE";function _8(r,e){if(r instanceof e)return r;let t=new e;return t.idBlock=r.idBlock,t.lenBlock=r.lenBlock,t.warnings=r.warnings,t.valueBeforeDecodeView=r.valueBeforeDecodeView,t}function di(r,e=0,t=r.length){let n=e,i=new Ae({},Re),s=new St;if(!Tt(s,r,e,t))return i.error=s.error,{offset:-1,result:i};if(!r.subarray(e,e+t).length)return i.error="Zero buffer length",{offset:-1,result:i};let a=i.idBlock.fromBER(r,e,t);if(i.idBlock.warnings.length&&i.warnings.concat(i.idBlock.warnings),a===-1)return i.error=i.idBlock.error,{offset:-1,result:i};if(e=a,t-=i.idBlock.blockLength,a=i.lenBlock.fromBER(r,e,t),i.lenBlock.warnings.length&&i.warnings.concat(i.lenBlock.warnings),a===-1)return i.error=i.lenBlock.error,{offset:-1,result:i};if(e=a,t-=i.lenBlock.blockLength,!i.idBlock.isConstructed&&i.lenBlock.isIndefiniteForm)return i.error="Indefinite length form used for primitive encoding form",{offset:-1,result:i};let c=Ae;switch(i.idBlock.tagClass){case 1:if(i.idBlock.tagNumber>=37&&i.idBlock.isHexOnly===!1)return i.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:i};switch(i.idBlock.tagNumber){case 0:if(i.idBlock.isConstructed&&i.lenBlock.length>0)return i.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:i};c=k.EndOfContent;break;case 1:c=k.Boolean;break;case 2:c=k.Integer;break;case 3:c=k.BitString;break;case 4:c=k.OctetString;break;case 5:c=k.Null;break;case 6:c=k.ObjectIdentifier;break;case 10:c=k.Enumerated;break;case 12:c=k.Utf8String;break;case 13:c=k.RelativeObjectIdentifier;break;case 14:c=k.TIME;break;case 15:return i.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:i};case 16:c=k.Sequence;break;case 17:c=k.Set;break;case 18:c=k.NumericString;break;case 19:c=k.PrintableString;break;case 20:c=k.TeletexString;break;case 21:c=k.VideotexString;break;case 22:c=k.IA5String;break;case 23:c=k.UTCTime;break;case 24:c=k.GeneralizedTime;break;case 25:c=k.GraphicString;break;case 26:c=k.VisibleString;break;case 27:c=k.GeneralString;break;case 28:c=k.UniversalString;break;case 29:c=k.CharacterString;break;case 30:c=k.BmpString;break;case 31:c=k.DATE;break;case 32:c=k.TimeOfDay;break;case 33:c=k.DateTime;break;case 34:c=k.Duration;break;default:{let l=i.idBlock.isConstructed?new k.Constructed:new k.Primitive;l.idBlock=i.idBlock,l.lenBlock=i.lenBlock,l.warnings=i.warnings,i=l}}break;case 2:case 3:case 4:default:c=i.idBlock.isConstructed?k.Constructed:k.Primitive}return i=_8(i,c),a=i.fromBER(r,e,i.lenBlock.isIndefiniteForm?t:i.lenBlock.length),i.valueBeforeDecodeView=r.subarray(n,n+i.blockLength),{offset:a,result:i}}function Xr(r){if(!r.byteLength){let e=new Ae({},Re);return e.error="Input buffer has zero length",{offset:-1,result:e}}return di(H.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function N8(r,e){return r?1:e}var ut=class extends Re{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let i=H.BufferSourceConverter.toUint8Array(e);if(!Tt(this,i,t,n))return-1;if(this.valueBeforeDecodeView=i.subarray(t,t+n),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),t;let s=t;for(;N8(this.isIndefiniteForm,n)>0;){let o=di(i,s,n);if(o.offset===-1)return this.error=o.result.error,this.warnings.concat(o.result.warnings),-1;if(s=o.offset,this.blockLength+=o.result.blockLength,n-=o.result.blockLength,this.value.push(o.result),this.isIndefiniteForm&&o.result.constructor.NAME===_n)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===_n?this.value.pop():this.warnings.push("No EndOfContent block encoded")),s}toBER(e,t){let n=t||new Tn;for(let i=0;i<this.value.length;i++)this.value[i].toBER(e,n);return t?et:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};ut.NAME="ConstructedValueBlock";var g3,jt=class extends Ae{constructor(e={}){super(e,ut),this.idBlock.isConstructed=!0}fromBER(e,t,n){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?n:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){let e=[];for(let n of this.valueBlock.value)e.push(n.toString("ascii").split(`
|
3
3
|
`).map(i=>` ${i}`).join(`
|
4
4
|
`));let t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
|
5
5
|
${e.join(`
|
package/dist/src/query/events.js
CHANGED
@@ -16,8 +16,8 @@ export function peerResponseEvent(fields, options = {}) {
|
|
16
16
|
name: 'PEER_RESPONSE',
|
17
17
|
type: 1,
|
18
18
|
messageName: fields.messageType,
|
19
|
-
closer:
|
20
|
-
providers:
|
19
|
+
closer: fields.closer ?? [],
|
20
|
+
providers: fields.providers ?? []
|
21
21
|
};
|
22
22
|
options.onProgress?.(new CustomEvent('kad-dht:query:peer-response', { detail: event }));
|
23
23
|
return event;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAW/C,MAAM,UAAU,cAAc,CAAE,MAAwB,EAAE,UAA2B,EAAE;IACrF,MAAM,KAAK,GAAmB;QAC5B,GAAG,MAAM;QACT,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,MAAM,CAAC,IAAI;QACxB,WAAW,EAAE,MAAM,CAAC,IAAI;KACzB,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAEpF,OAAO,KAAK,CAAA;AACd,CAAC;AAUD,MAAM,UAAU,iBAAiB,CAAE,MAA+B,EAAE,UAA2B,EAAE;IAC/F,MAAM,KAAK,GAAsB;QAC/B,GAAG,MAAM;QACT,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,MAAM,EAAE,
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAW/C,MAAM,UAAU,cAAc,CAAE,MAAwB,EAAE,UAA2B,EAAE;IACrF,MAAM,KAAK,GAAmB;QAC5B,GAAG,MAAM;QACT,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,MAAM,CAAC,IAAI;QACxB,WAAW,EAAE,MAAM,CAAC,IAAI;KACzB,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAEpF,OAAO,KAAK,CAAA;AACd,CAAC;AAUD,MAAM,UAAU,iBAAiB,CAAE,MAA+B,EAAE,UAA2B,EAAE;IAC/F,MAAM,KAAK,GAAsB;QAC/B,GAAG,MAAM;QACT,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,CAAC;QACP,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;KAClC,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,6BAA6B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAEvF,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,MAAM,UAAU,cAAc,CAAE,MAA4B,EAAE,UAA2B,EAAE;IACzF,MAAM,KAAK,GAAmB;QAC5B,GAAG,MAAM;QACT,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAEpF,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,MAAM,UAAU,eAAe,CAAE,MAAwB,EAAE,UAA2B,EAAE;IACtF,MAAM,KAAK,GAAoB;QAC7B,GAAG,MAAM;QACT,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAErF,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,MAAM,UAAU,aAAa,CAAE,MAA2B,EAAE,UAA2B,EAAE;IACvF,MAAM,KAAK,GAAkB;QAC3B,GAAG,MAAM;QACT,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,wBAAwB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAElF,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,MAAM,UAAU,UAAU,CAAE,MAAwB,EAAE,UAA2B,EAAE;IACjF,MAAM,KAAK,GAAe;QACxB,GAAG,MAAM;QACT,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAE/E,OAAO,KAAK,CAAA;AACd,CAAC;AAMD,MAAM,UAAU,YAAY,CAAE,MAAuB,EAAE,UAA2B,EAAE;IAClF,MAAM,KAAK,GAAiB;QAC1B,GAAG,MAAM;QACT,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,wBAAwB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAElF,OAAO,KAAK,CAAA;AACd,CAAC;AAMD,MAAM,UAAU,aAAa,CAAE,MAA2B,EAAE,UAA2B,EAAE;IACvF,MAAM,KAAK,GAAkB;QAC3B,GAAG,MAAM;QACT,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,CAAC;KACR,CAAA;IAED,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,WAAW,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;IAEnF,OAAO,KAAK,CAAA;AACd,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@libp2p/kad-dht",
|
3
|
-
"version": "12.1.
|
3
|
+
"version": "12.1.4",
|
4
4
|
"description": "JavaScript implementation of the Kad-DHT for libp2p",
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/kad-dht#readme",
|
@@ -57,13 +57,13 @@
|
|
57
57
|
"doc-check": "aegir doc-check"
|
58
58
|
},
|
59
59
|
"dependencies": {
|
60
|
-
"@libp2p/crypto": "^4.1.
|
61
|
-
"@libp2p/interface": "^1.6.
|
62
|
-
"@libp2p/interface-internal": "^1.3.
|
63
|
-
"@libp2p/peer-collections": "^5.2.
|
64
|
-
"@libp2p/peer-id": "^4.2.
|
65
|
-
"@libp2p/record": "^4.0.
|
66
|
-
"@libp2p/utils": "^5.4.
|
60
|
+
"@libp2p/crypto": "^4.1.8",
|
61
|
+
"@libp2p/interface": "^1.6.3",
|
62
|
+
"@libp2p/interface-internal": "^1.3.3",
|
63
|
+
"@libp2p/peer-collections": "^5.2.8",
|
64
|
+
"@libp2p/peer-id": "^4.2.3",
|
65
|
+
"@libp2p/record": "^4.0.4",
|
66
|
+
"@libp2p/utils": "^5.4.8",
|
67
67
|
"@multiformats/multiaddr": "^12.2.3",
|
68
68
|
"any-signal": "^4.1.1",
|
69
69
|
"hashlru": "^2.3.0",
|
@@ -89,15 +89,15 @@
|
|
89
89
|
"uint8arrays": "^5.1.0"
|
90
90
|
},
|
91
91
|
"devDependencies": {
|
92
|
-
"@libp2p/interface-compliance-tests": "^5.4.
|
93
|
-
"@libp2p/logger": "^4.0.
|
94
|
-
"@libp2p/peer-id-factory": "^4.2.
|
95
|
-
"@libp2p/peer-store": "^10.1.
|
92
|
+
"@libp2p/interface-compliance-tests": "^5.4.11",
|
93
|
+
"@libp2p/logger": "^4.0.19",
|
94
|
+
"@libp2p/peer-id-factory": "^4.2.3",
|
95
|
+
"@libp2p/peer-store": "^10.1.4",
|
96
96
|
"@types/lodash.random": "^3.2.9",
|
97
97
|
"@types/lodash.range": "^3.2.9",
|
98
98
|
"@types/sinon": "^17.0.3",
|
99
99
|
"@types/which": "^3.0.3",
|
100
|
-
"aegir": "^
|
100
|
+
"aegir": "^44.0.1",
|
101
101
|
"datastore-core": "^9.2.9",
|
102
102
|
"datastore-level": "^10.1.8",
|
103
103
|
"delay": "^6.0.0",
|
package/src/query/events.ts
CHANGED
@@ -37,8 +37,8 @@ export function peerResponseEvent (fields: PeerResponseEventFields, options: Pro
|
|
37
37
|
name: 'PEER_RESPONSE',
|
38
38
|
type: 1,
|
39
39
|
messageName: fields.messageType,
|
40
|
-
closer:
|
41
|
-
providers:
|
40
|
+
closer: fields.closer ?? [],
|
41
|
+
providers: fields.providers ?? []
|
42
42
|
}
|
43
43
|
|
44
44
|
options.onProgress?.(new CustomEvent('kad-dht:query:peer-response', { detail: event }))
|