@helia/verified-fetch 0.0.0-6c88ee1 → 0.0.0-754c7af
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -3
- package/dist/index.min.js +4 -29
- package/dist/src/index.d.ts +242 -10
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +215 -6
- package/dist/src/index.js.map +1 -1
- package/dist/src/utils/dag-cbor-to-safe-json.d.ts +7 -0
- package/dist/src/utils/dag-cbor-to-safe-json.d.ts.map +1 -0
- package/dist/src/utils/dag-cbor-to-safe-json.js +37 -0
- package/dist/src/utils/dag-cbor-to-safe-json.js.map +1 -0
- package/dist/src/utils/get-stream-from-async-iterable.d.ts +10 -0
- package/dist/src/utils/get-stream-from-async-iterable.d.ts.map +1 -0
- package/dist/src/utils/{get-stream-and-content-type.js → get-stream-from-async-iterable.js} +10 -9
- package/dist/src/utils/get-stream-from-async-iterable.js.map +1 -0
- package/dist/src/verified-fetch.d.ts +5 -12
- package/dist/src/verified-fetch.d.ts.map +1 -1
- package/dist/src/verified-fetch.js +88 -60
- package/dist/src/verified-fetch.js.map +1 -1
- package/package.json +25 -18
- package/src/index.ts +247 -11
- package/src/utils/dag-cbor-to-safe-json.ts +44 -0
- package/src/utils/{get-stream-and-content-type.ts → get-stream-from-async-iterable.ts} +9 -8
- package/src/verified-fetch.ts +99 -67
- package/dist/src/utils/get-content-type.d.ts +0 -11
- package/dist/src/utils/get-content-type.d.ts.map +0 -1
- package/dist/src/utils/get-content-type.js +0 -43
- package/dist/src/utils/get-content-type.js.map +0 -1
- package/dist/src/utils/get-stream-and-content-type.d.ts +0 -10
- package/dist/src/utils/get-stream-and-content-type.d.ts.map +0 -1
- package/dist/src/utils/get-stream-and-content-type.js.map +0 -1
- package/src/utils/get-content-type.ts +0 -55
package/dist/index.min.js
CHANGED
|
@@ -1,20 +1,11 @@
|
|
|
1
1
|
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.HeliaVerifiedFetch = factory()}(typeof self !== 'undefined' ? self : this, function () {
|
|
2
|
-
"use strict";var HeliaVerifiedFetch=(()=>{var m8=Object.create;var Qc=Object.defineProperty;var g8=Object.getOwnPropertyDescriptor;var x8=Object.getOwnPropertyNames;var y8=Object.getPrototypeOf,w8=Object.prototype.hasOwnProperty;var re=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),j=(r,e)=>{for(var t in e)Qc(r,t,{get:e[t],enumerable:!0})},Cx=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of x8(e))!w8.call(r,i)&&i!==t&&Qc(r,i,{get:()=>e[i],enumerable:!(n=g8(e,i))||n.enumerable});return r};var ee=(r,e,t)=>(t=r!=null?m8(y8(r)):{},Cx(e||!r||!r.__esModule?Qc(t,"default",{value:r,enumerable:!0}):t,r)),b8=r=>Cx(Qc({},"__esModule",{value:!0}),r);var Vd=re((s7,Gx)=>{var No=1e3,Do=No*60,Lo=Do*60,Hi=Lo*24,uA=Hi*7,pA=Hi*365.25;Gx.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return dA(r);if(t==="number"&&isFinite(r))return e.long?hA(r):fA(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function dA(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*pA;case"weeks":case"week":case"w":return t*uA;case"days":case"day":case"d":return t*Hi;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Lo;case"minutes":case"minute":case"mins":case"min":case"m":return t*Do;case"seconds":case"second":case"secs":case"sec":case"s":return t*No;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function fA(r){var e=Math.abs(r);return e>=Hi?Math.round(r/Hi)+"d":e>=Lo?Math.round(r/Lo)+"h":e>=Do?Math.round(r/Do)+"m":e>=No?Math.round(r/No)+"s":r+"ms"}function hA(r){var e=Math.abs(r);return e>=Hi?nl(r,e,Hi,"day"):e>=Lo?nl(r,e,Lo,"hour"):e>=Do?nl(r,e,Do,"minute"):e>=No?nl(r,e,No,"second"):r+" ms"}function nl(r,e,t,n){var i=e>=t*1.5;return Math.round(r/t)+" "+n+(i?"s":"")}});var Yx=re((a7,Wx)=>{function mA(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=Vd(),t.destroy=u,Object.keys(r).forEach(l=>{t[l]=r[l]}),t.names=[],t.skips=[],t.formatters={};function e(l){let p=0;for(let m=0;m<l.length;m++)p=(p<<5)-p+l.charCodeAt(m),p|=0;return t.colors[Math.abs(p)%t.colors.length]}t.selectColor=e;function t(l){let p,m=null,d,f;function h(...x){if(!h.enabled)return;let g=h,y=Number(new Date),w=y-(p||y);g.diff=w,g.prev=p,g.curr=y,p=y,x[0]=t.coerce(x[0]),typeof x[0]!="string"&&x.unshift("%O");let E=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(S,b)=>{if(S==="%%")return"%";E++;let v=t.formatters[b];if(typeof v=="function"){let k=x[E];S=v.call(g,k),x.splice(E,1),E--}return S}),t.formatArgs.call(g,x),(g.log||t.log).apply(g,x)}return h.namespace=l,h.useColors=t.useColors(),h.color=t.selectColor(l),h.extend=n,h.destroy=t.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>m!==null?m:(d!==t.namespaces&&(d=t.namespaces,f=t.enabled(l)),f),set:x=>{m=x}}),typeof t.init=="function"&&t.init(h),h}function n(l,p){let m=t(this.namespace+(typeof p>"u"?":":p)+l);return m.log=this.log,m}function i(l){t.save(l),t.namespaces=l,t.names=[],t.skips=[];let p,m=(typeof l=="string"?l:"").split(/[\s,]+/),d=m.length;for(p=0;p<d;p++)m[p]&&(l=m[p].replace(/\*/g,".*?"),l[0]==="-"?t.skips.push(new RegExp("^"+l.slice(1)+"$")):t.names.push(new RegExp("^"+l+"$")))}function o(){let l=[...t.names.map(a),...t.skips.map(a).map(p=>"-"+p)].join(",");return t.enable(""),l}function s(l){if(l[l.length-1]==="*")return!0;let p,m;for(p=0,m=t.skips.length;p<m;p++)if(t.skips[p].test(l))return!1;for(p=0,m=t.names.length;p<m;p++)if(t.names[p].test(l))return!0;return!1}function a(l){return l.toString().substring(2,l.toString().length-2).replace(/\.\*\?$/,"*")}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Wx.exports=mA});var Md=re((Ft,il)=>{Ft.formatArgs=xA;Ft.save=yA;Ft.load=wA;Ft.useColors=gA;Ft.storage=bA();Ft.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Ft.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function gA(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function xA(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+il.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}Ft.log=console.debug||console.log||(()=>{});function yA(r){try{r?Ft.storage.setItem("debug",r):Ft.storage.removeItem("debug")}catch{}}function wA(){let r;try{r=Ft.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function bA(){try{return localStorage}catch{}}il.exports=Yx()(Ft);var{formatters:vA}=il.exports;vA.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var e1=re((h7,Qx)=>{Qx.exports=$d;var Zx=128,BA=127,kA=~BA,IA=Math.pow(2,31);function $d(r,e,t){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw $d.bytes=0,new RangeError("Could not encode varint");e=e||[],t=t||0;for(var n=t;r>=IA;)e[t++]=r&255|Zx,r/=128;for(;r&kA;)e[t++]=r&255|Zx,r>>>=7;return e[t]=r|0,$d.bytes=t-n+1,e}});var n1=re((m7,r1)=>{r1.exports=Hd;var _A=128,t1=127;function Hd(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a||i>49)throw Hd.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&t1)<<i:(s&t1)*Math.pow(2,i),i+=7}while(s>=_A);return Hd.bytes=o-n,t}});var o1=re((g7,i1)=>{var TA=Math.pow(2,7),CA=Math.pow(2,14),RA=Math.pow(2,21),UA=Math.pow(2,28),NA=Math.pow(2,35),DA=Math.pow(2,42),LA=Math.pow(2,49),PA=Math.pow(2,56),OA=Math.pow(2,63);i1.exports=function(r){return r<TA?1:r<CA?2:r<RA?3:r<UA?4:r<NA?5:r<DA?6:r<LA?7:r<PA?8:r<OA?9:10}});var ol=re((x7,s1)=>{s1.exports={encode:e1(),decode:n1(),encodingLength:o1()}});var Ce=re((DO,S1)=>{"use strict";function A1(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function y5(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 A1(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),A1(new i,t)}}S1.exports=y5});var xy=re(rs=>{"use strict";var lB="[object ArrayBuffer]",gn=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===lB}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 o=0;o<n.length;o++)if(n[o]!==i[o])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 s of t)n+=s.byteLength;let i=new Uint8Array(n),o=0;for(let s of t){let a=this.toUint8Array(s);i.set(a,o),o+=a.length}return e[e.length-1]instanceof Function?this.toView(i,e[e.length-1]):i.buffer}},rh="string",uB=/^[0-9a-f]+$/i,pB=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,dB=/^[a-zA-Z0-9-_]+$/,Pl=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=gn.toUint8Array(e),n="";for(let o=0;o<t.length;o++)n+=String.fromCharCode(t[o]);return decodeURIComponent(escape(n))}},sr=class{static toString(e,t=!1){let n=gn.toArrayBuffer(e),i=new DataView(n),o="";for(let s=0;s<n.byteLength;s+=2){let a=i.getUint16(s,t);o+=String.fromCharCode(a)}return o}static fromString(e,t=!1){let n=new ArrayBuffer(e.length*2),i=new DataView(n);for(let o=0;o<e.length;o++)i.setUint16(o*2,e.charCodeAt(o),t);return n}},Ol=class r{static isHex(e){return typeof e===rh&&uB.test(e)}static isBase64(e){return typeof e===rh&&pB.test(e)}static isBase64Url(e){return typeof e===rh&&dB.test(e)}static ToString(e,t="utf8"){let n=gn.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 sr.toString(n,!0);case"utf16":case"utf16be":return sr.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 sr.fromString(e,!0);case"utf16":case"utf16be":return sr.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=gn.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 Pl.fromString(e);case"utf16":case"utf16be":return sr.fromString(e);case"utf16le":case"usc2":return sr.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 Pl.toString(e);case"utf16":case"utf16be":return sr.toString(e);case"utf16le":case"usc2":return sr.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=gn.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return n}static ToHex(e){let t=gn.toUint8Array(e),n="",i=t.length;for(let o=0;o<i;o++){let s=t[o];s<16&&(n+="0"),n+=s.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 o=t.slice(i,i+2);n[i/2]=parseInt(o,16)}return n.buffer}static ToUtf16String(e,t=!1){return sr.toString(e,t)}static FromUtf16String(e,t=!1){return sr.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,"")||""}};Ol.DEFAULT_UTF8_ENCODING="utf8";function fB(r,...e){let t=arguments[0];for(let n=1;n<arguments.length;n++){let i=arguments[n];for(let o in i)t[o]=i[o]}return t}function hB(...r){let e=r.map(i=>i.byteLength).reduce((i,o)=>i+o),t=new Uint8Array(e),n=0;return r.map(i=>new Uint8Array(i)).forEach(i=>{for(let o of i)t[n++]=o}),t.buffer}function mB(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}rs.BufferSourceConverter=gn;rs.Convert=Ol;rs.assign=fB;rs.combine=hB;rs.isEqual=mB});var ku=re((JV,xh)=>{var XV=function(){typeof xh<"u"&&(xh.exports=h);var r=86400,e=3200,t=146097*e/400,n=r*t,i=1e3*n,o=864e13,s=4294967296,a=1e6,c="000000000",u=Math.trunc||function(v){var k=v-v%1;return k==0&&(v<0||v===0&&1/v!=1/0)?-0:k},l=h.prototype,p=(h.fromDate=function(v){return new h(+v)},h.fromInt64BE=E(0,1,2,3,0,4),h.fromInt64LE=E(3,2,1,0,4,0),h.fromString=function(R){var k,U=new h,R=(R+="").replace(/^\s*[+\-]?\d+/,function(L){var L=+L,ce=1970+(L-1970)%400;return U.year=L-ce,ce}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(M,L,ce){return L<0&&(ce*=-1),k=6e4*(60*+L+ +ce),""}).replace(/\.\d+$/,function(M){return U.nano=+(M+c).substr(1,9),""}).split(/\D+/);if(1<R.length?R[1]--:R[1]=0,U.time=k=Date.UTC.apply(Date,R)-(k||0),isNaN(k))throw new TypeError("Invalid Date");return x(U)},h.fromTimeT=function(v){return y(v,0)},l.year=0,l.time=0,l.nano=0,l.addNano=function(v){return this.nano+=+v||0,this},l.getNano=function(){var v=x(this);return(v.time%1e3*a+ +v.nano+1e9)%1e9},l.getTimeT=function(){var k=x(this),v=Math.floor(k.time/1e3),k=k.year;return k&&(v+=k*t*r/e),v},l.getYear=function(){return this.toDate().getUTCFullYear()+this.year},l.toDate=function(){return g(x(this).time)},l.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},l.toString=function(v){var k=this,U=k.toDate(),R={H:function(){return S(U.getUTCHours())},L:function(){return b(U.getUTCMilliseconds(),3)},M:function(){return S(U.getUTCMinutes())},N:function(){return b(k.getNano(),9)},S:function(){return S(U.getUTCSeconds())},Y:function(){var M=k.getYear();return 999999<M?"+"+M:9999<M?"+"+b(M,6):0<=M?b(M,4):-999999<=M?"-"+b(-M,6):M},a:function(){return d[U.getUTCDay()]},b:function(){return m[U.getUTCMonth()]},d:function(){return S(U.getUTCDate())},e:function(){return function(M){return(9<M?"":" ")+(0|M)}(U.getUTCDate())},m:function(){return S(U.getUTCMonth()+1)}};return function M(L){return L.replace(/%./g,function(ce){var D=ce[1],_=f[D],D=R[D];return _?M(_):D?D():ce})}(v||p)},l.writeInt64BE=w(0,1,2,3,0,4),l.writeInt64LE=w(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),m=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],d=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],f={"%":"%",F:"%Y-%m-%d",n:`
|
|
3
|
-
`,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return h;function h(v,k,U){var R=this;if(!(R instanceof h))return new h(v,k,U);R.time=+v||0,R.nano=+k||0,R.year=+U||0,x(R)}function x(v){var k,U,R,M=v.year,L=v.time,ce=v.nano,_=((ce<0||a<=ce)&&(ce-=(U=Math.floor(ce/a))*a,L+=U,U=1),M%e);return(L<-o||o<L||_)&&((k=u(L/i))&&(M+=k*e,L-=k*i),(R=g(L)).setUTCFullYear(_+R.getUTCFullYear()),R=(L=+R)+(k=u((M-=_)/e))*i,k&&-o<=R&&R<=o&&(M-=k*e,L=R),U=1),U&&(v.year=M,v.time=L,v.nano=ce),v}function g(v){var k=new Date(0);return k.setTime(v),k}function y(M,R){M=+M||0;var U=u((R=(R|0)*s)/n)+u(M/n),R=R%n+M%n,M=u(R/n);return M&&(U+=M,R-=M*n),new h(1e3*R,0,U*e)}function w(v,k,U,R,M,L){return function(_,D){var N=x(this);_=_||new Array(8),B(_,D|=0);var T=Math.floor(N.time/1e3),N=N.year*(t*r/e),J=u(N/s)+u(T/s),N=N%s+T%s,T=Math.floor(N/s);return T&&(J+=T,N-=T*s),ce(_,D+M,J),ce(_,D+L,N),_};function ce(_,D,J){_[D+v]=J>>24&255,_[D+k]=J>>16&255,_[D+U]=J>>8&255,_[D+R]=255&J}}function E(v,k,U,R,M,L){return function(_,D){B(_,D|=0);var J=ce(_,D+M);return y(ce(_,D+L),J)};function ce(_,D){return 16777216*_[D+v]+(_[D+k]<<16|_[D+U]<<8|_[D+R])}}function B(v,k){if(v=v&&v.length,v==null)throw new TypeError("Invalid Buffer");if(v<k+8)throw new RangeError("Out of range")}function S(v){return(9<v?"":"0")+(0|v)}function b(v,k){return(c+(0|v)).substr(-k)}}()});var Kb=re((Dj,Rh)=>{"use strict";var Lk=Object.prototype.hasOwnProperty,bt="~";function Ga(){}Object.create&&(Ga.prototype=Object.create(null),new Ga().__proto__||(bt=!1));function Pk(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function qb(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new Pk(t,n||r,i),s=bt?bt+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function $u(r,e){--r._eventsCount===0?r._events=new Ga:delete r._events[e]}function ht(){this._events=new Ga,this._eventsCount=0}ht.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)Lk.call(t,n)&&e.push(bt?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};ht.prototype.listeners=function(e){var t=bt?bt+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};ht.prototype.listenerCount=function(e){var t=bt?bt+e:e,n=this._events[t];return n?n.fn?1:n.length:0};ht.prototype.emit=function(e,t,n,i,o,s){var a=bt?bt+e:e;if(!this._events[a])return!1;var c=this._events[a],u=arguments.length,l,p;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(p=1,l=new Array(u-1);p<u;p++)l[p-1]=arguments[p];c.fn.apply(c.context,l)}else{var m=c.length,d;for(p=0;p<m;p++)switch(c[p].once&&this.removeListener(e,c[p].fn,void 0,!0),u){case 1:c[p].fn.call(c[p].context);break;case 2:c[p].fn.call(c[p].context,t);break;case 3:c[p].fn.call(c[p].context,t,n);break;case 4:c[p].fn.call(c[p].context,t,n,i);break;default:if(!l)for(d=1,l=new Array(u-1);d<u;d++)l[d-1]=arguments[d];c[p].fn.apply(c[p].context,l)}}return!0};ht.prototype.on=function(e,t,n){return qb(this,e,t,n,!1)};ht.prototype.once=function(e,t,n){return qb(this,e,t,n,!0)};ht.prototype.removeListener=function(e,t,n,i){var o=bt?bt+e:e;if(!this._events[o])return this;if(!t)return $u(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&$u(this,o);else{for(var a=0,c=[],u=s.length;a<u;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:$u(this,o)}return this};ht.prototype.removeAllListeners=function(e){var t;return e?(t=bt?bt+e:e,this._events[t]&&$u(this,t)):(this._events=new Ga,this._eventsCount=0),this};ht.prototype.off=ht.prototype.removeListener;ht.prototype.addListener=ht.prototype.on;ht.prefixed=bt;ht.EventEmitter=ht;typeof Rh<"u"&&(Rh.exports=ht)});var H0=re((eJ,_E)=>{"use strict";var GR=typeof navigator<"u"&&navigator.product==="ReactNative";function WR(){return GR?"http://localhost":self.location?self.location.protocol+"//"+self.location.host:""}var Bc=self.URL,IE=WR(),$0=class{constructor(e="",t=IE){this.super=new Bc(e,t),this.path=this.pathname+this.search,this.auth=this.username&&this.password?this.username+":"+this.password:null,this.query=this.search&&this.search.startsWith("?")?this.search.slice(1):null}get hash(){return this.super.hash}get host(){return this.super.host}get hostname(){return this.super.hostname}get href(){return this.super.href}get origin(){return this.super.origin}get password(){return this.super.password}get pathname(){return this.super.pathname}get port(){return this.super.port}get protocol(){return this.super.protocol}get search(){return this.super.search}get searchParams(){return this.super.searchParams}get username(){return this.super.username}set hash(e){this.super.hash=e}set host(e){this.super.host=e}set hostname(e){this.super.hostname=e}set href(e){this.super.href=e}set password(e){this.super.password=e}set pathname(e){this.super.pathname=e}set port(e){this.super.port=e}set protocol(e){this.super.protocol=e}set search(e){this.super.search=e}set username(e){this.super.username=e}static createObjectURL(e){return Bc.createObjectURL(e)}static revokeObjectURL(e){Bc.revokeObjectURL(e)}toJSON(){return this.super.toJSON()}toString(){return this.super.toString()}format(){return this.toString()}};function YR(r){if(typeof r=="string")return new Bc(r).toString();if(!(r instanceof Bc)){let e=r.username&&r.password?`${r.username}:${r.password}@`:"",t=r.auth?r.auth+"@":"",n=r.port?":"+r.port:"",i=r.protocol?r.protocol+"//":"",o=r.host||"",s=r.hostname||"",a=r.search||(r.query?"?"+r.query:""),c=r.hash||"",u=r.pathname||"",l=r.path||u+a;return`${i}${e||t}${o||s+n}${l}${c}`}}_E.exports={URLWithLegacySupport:$0,URLSearchParams:self.URLSearchParams,defaultBase:IE,format:YR}});var RE=re((tJ,CE)=>{"use strict";var{URLWithLegacySupport:TE,format:XR}=H0();CE.exports=(r,e={},t={},n)=>{let i=e.protocol?e.protocol.replace(":",""):"http";i=(t[i]||n||i)+":";let o;try{o=new TE(r)}catch{o={}}let s=Object.assign({},e,{protocol:i||o.protocol,host:e.host||o.host});return new TE(r,XR(s)).toString()}});var NE=re((rJ,UE)=>{"use strict";var{URLWithLegacySupport:JR,format:ZR,URLSearchParams:QR,defaultBase:eU}=H0(),tU=RE();UE.exports={URL:JR,URLSearchParams:QR,format:ZR,relative:tU,defaultBase:eU}});var FE=re((pJ,OE)=>{"use strict";OE.exports=PE;var cU=Vd(),Ri=PE.prototype,lU=new Date%1e9;function uU(){return(Math.random()*1e9>>>0)+lU++}function PE(r){r=r||{},this.id=r.id||uU(),this.max=r.max||1/0,this.items=r.items||[],this._lookup={},this.size=this.items.length,this.lastModified=new Date(r.lastModified||new Date);for(var e,t,n=this.items.length;n--;)e=this.items[n],t=new Date(e.expires)-new Date,this._lookup[e.key]=e,t>0?this.expire(e.key,t):t<=0&&this.delete(e.key)}Ri.has=function(r){return r in this._lookup};Ri.get=function(r){if(!this.has(r))return null;var e=this._lookup[r];return e.refresh&&this.expire(r,e.refresh),this.items.splice(this.items.indexOf(e),1),this.items.push(e),e.value};Ri.meta=function(r){if(!this.has(r))return null;var e=this._lookup[r];return"meta"in e?e.meta:null};Ri.set=function(r,e,t){var n=this._lookup[r],i=this._lookup[r]={key:r,value:e};return this.lastModified=new Date,n?(clearTimeout(n.timeout),this.items.splice(this.items.indexOf(n),1,i)):(this.size>=this.max&&this.delete(this.items[0].key),this.items.push(i),this.size++),t&&("ttl"in t&&this.expire(r,t.ttl),"meta"in t&&(i.meta=t.meta),t.refresh&&(i.refresh=t.ttl)),this};Ri.delete=function(r){var e=this._lookup[r];return e?(this.lastModified=new Date,this.items.splice(this.items.indexOf(e),1),clearTimeout(e.timeout),delete this._lookup[r],this.size--,this):!1};Ri.expire=function(r,e){var t=e||0,n=this._lookup[r];if(!n)return this;if(typeof t=="string"&&(t=cU(e)),typeof t!="number")throw new TypeError("Expiration time must be a string or number.");return clearTimeout(n.timeout),n.timeout=setTimeout(this.delete.bind(this,n.key),t),n.expires=Number(new Date)+t,this};Ri.clear=function(){for(var r=this.items.length;r--;)this.delete(this.items[r].key);return this};Ri.toJSON=function(){for(var r=new Array(this.items.length),e,t=r.length;t--;)e=this.items[t],r[t]={key:e.key,meta:e.meta,value:e.value,expires:e.expires,refresh:e.refresh};return{id:this.id,max:isFinite(this.max)?this.max:void 0,lastModified:this.lastModified,items:r}}});var X0=re((fJ,ME)=>{ME.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(o,s){t[o]=s,e++,e>=r&&(e=0,n=t,t=Object.create(null))}return{has:function(o){return t[o]!==void 0||n[o]!==void 0},remove:function(o){t[o]!==void 0&&(t[o]=void 0),n[o]!==void 0&&(n[o]=void 0)},get:function(o){var s=t[o];if(s!==void 0)return s;if((s=n[o])!==void 0)return i(o,s),s},set:function(o,s){t[o]!==void 0?t[o]=s:i(o,s)},clear:function(){t=Object.create(null),n=Object.create(null)}}}});var t3=re(Tp=>{"use strict";Tp.byteLength=wU;Tp.toByteArray=vU;Tp.fromByteArray=SU;var Gr=[],pr=[],yU=typeof Uint8Array<"u"?Uint8Array:Array,rg="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(yo=0,QE=rg.length;yo<QE;++yo)Gr[yo]=rg[yo],pr[rg.charCodeAt(yo)]=yo;var yo,QE;pr[45]=62;pr[95]=63;function e3(r){var e=r.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=r.indexOf("=");t===-1&&(t=e);var n=t===e?0:4-t%4;return[t,n]}function wU(r){var e=e3(r),t=e[0],n=e[1];return(t+n)*3/4-n}function bU(r,e,t){return(e+t)*3/4-t}function vU(r){var e,t=e3(r),n=t[0],i=t[1],o=new yU(bU(r,n,i)),s=0,a=i>0?n-4:n,c;for(c=0;c<a;c+=4)e=pr[r.charCodeAt(c)]<<18|pr[r.charCodeAt(c+1)]<<12|pr[r.charCodeAt(c+2)]<<6|pr[r.charCodeAt(c+3)],o[s++]=e>>16&255,o[s++]=e>>8&255,o[s++]=e&255;return i===2&&(e=pr[r.charCodeAt(c)]<<2|pr[r.charCodeAt(c+1)]>>4,o[s++]=e&255),i===1&&(e=pr[r.charCodeAt(c)]<<10|pr[r.charCodeAt(c+1)]<<4|pr[r.charCodeAt(c+2)]>>2,o[s++]=e>>8&255,o[s++]=e&255),o}function EU(r){return Gr[r>>18&63]+Gr[r>>12&63]+Gr[r>>6&63]+Gr[r&63]}function AU(r,e,t){for(var n,i=[],o=e;o<t;o+=3)n=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),i.push(EU(n));return i.join("")}function SU(r){for(var e,t=r.length,n=t%3,i=[],o=16383,s=0,a=t-n;s<a;s+=o)i.push(AU(r,s,s+o>a?a:s+o));return n===1?(e=r[t-1],i.push(Gr[e>>2]+Gr[e<<4&63]+"==")):n===2&&(e=(r[t-2]<<8)+r[t-1],i.push(Gr[e>>10]+Gr[e>>4&63]+Gr[e<<2&63]+"=")),i.join("")}});var r3=re(ng=>{ng.read=function(r,e,t,n,i){var o,s,a=i*8-n-1,c=(1<<a)-1,u=c>>1,l=-7,p=t?i-1:0,m=t?-1:1,d=r[e+p];for(p+=m,o=d&(1<<-l)-1,d>>=-l,l+=a;l>0;o=o*256+r[e+p],p+=m,l-=8);for(s=o&(1<<-l)-1,o>>=-l,l+=n;l>0;s=s*256+r[e+p],p+=m,l-=8);if(o===0)o=1-u;else{if(o===c)return s?NaN:(d?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-u}return(d?-1:1)*s*Math.pow(2,o-n)};ng.write=function(r,e,t,n,i,o){var s,a,c,u=o*8-i-1,l=(1<<u)-1,p=l>>1,m=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,f=n?1:-1,h=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=l):(s=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-s))<1&&(s--,c*=2),s+p>=1?e+=m/c:e+=m*Math.pow(2,1-p),e*c>=2&&(s++,c/=2),s+p>=l?(a=0,s=l):s+p>=1?(a=(e*c-1)*Math.pow(2,i),s=s+p):(a=e*Math.pow(2,p-1)*Math.pow(2,i),s=0));i>=8;r[t+d]=a&255,d+=f,a/=256,i-=8);for(s=s<<i|a,u+=i;u>0;r[t+d]=s&255,d+=f,s/=256,u-=8);r[t+d-f]|=h*128}});var dg=re($s=>{"use strict";var ig=t3(),Ms=r3(),n3=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;$s.Buffer=I;$s.SlowBuffer=CU;$s.INSPECT_MAX_BYTES=50;var Cp=2147483647;$s.kMaxLength=Cp;I.TYPED_ARRAY_SUPPORT=BU();!I.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function BU(){try{let r=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(r,e),r.foo()===42}catch{return!1}}Object.defineProperty(I.prototype,"parent",{enumerable:!0,get:function(){if(I.isBuffer(this))return this.buffer}});Object.defineProperty(I.prototype,"offset",{enumerable:!0,get:function(){if(I.isBuffer(this))return this.byteOffset}});function Pn(r){if(r>Cp)throw new RangeError('The value "'+r+'" is invalid for option "size"');let e=new Uint8Array(r);return Object.setPrototypeOf(e,I.prototype),e}function I(r,e,t){if(typeof r=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return cg(r)}return a3(r,e,t)}I.poolSize=8192;function a3(r,e,t){if(typeof r=="string")return IU(r,e);if(ArrayBuffer.isView(r))return _U(r);if(r==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r);if(Wr(r,ArrayBuffer)||r&&Wr(r.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Wr(r,SharedArrayBuffer)||r&&Wr(r.buffer,SharedArrayBuffer)))return sg(r,e,t);if(typeof r=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=r.valueOf&&r.valueOf();if(n!=null&&n!==r)return I.from(n,e,t);let i=TU(r);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof r[Symbol.toPrimitive]=="function")return I.from(r[Symbol.toPrimitive]("string"),e,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r)}I.from=function(r,e,t){return a3(r,e,t)};Object.setPrototypeOf(I.prototype,Uint8Array.prototype);Object.setPrototypeOf(I,Uint8Array);function c3(r){if(typeof r!="number")throw new TypeError('"size" argument must be of type number');if(r<0)throw new RangeError('The value "'+r+'" is invalid for option "size"')}function kU(r,e,t){return c3(r),r<=0?Pn(r):e!==void 0?typeof t=="string"?Pn(r).fill(e,t):Pn(r).fill(e):Pn(r)}I.alloc=function(r,e,t){return kU(r,e,t)};function cg(r){return c3(r),Pn(r<0?0:lg(r)|0)}I.allocUnsafe=function(r){return cg(r)};I.allocUnsafeSlow=function(r){return cg(r)};function IU(r,e){if((typeof e!="string"||e==="")&&(e="utf8"),!I.isEncoding(e))throw new TypeError("Unknown encoding: "+e);let t=l3(r,e)|0,n=Pn(t),i=n.write(r,e);return i!==t&&(n=n.slice(0,i)),n}function og(r){let e=r.length<0?0:lg(r.length)|0,t=Pn(e);for(let n=0;n<e;n+=1)t[n]=r[n]&255;return t}function _U(r){if(Wr(r,Uint8Array)){let e=new Uint8Array(r);return sg(e.buffer,e.byteOffset,e.byteLength)}return og(r)}function sg(r,e,t){if(e<0||r.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(r.byteLength<e+(t||0))throw new RangeError('"length" is outside of buffer bounds');let n;return e===void 0&&t===void 0?n=new Uint8Array(r):t===void 0?n=new Uint8Array(r,e):n=new Uint8Array(r,e,t),Object.setPrototypeOf(n,I.prototype),n}function TU(r){if(I.isBuffer(r)){let e=lg(r.length)|0,t=Pn(e);return t.length===0||r.copy(t,0,0,e),t}if(r.length!==void 0)return typeof r.length!="number"||pg(r.length)?Pn(0):og(r);if(r.type==="Buffer"&&Array.isArray(r.data))return og(r.data)}function lg(r){if(r>=Cp)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Cp.toString(16)+" bytes");return r|0}function CU(r){return+r!=r&&(r=0),I.alloc(+r)}I.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==I.prototype};I.compare=function(e,t){if(Wr(e,Uint8Array)&&(e=I.from(e,e.offset,e.byteLength)),Wr(t,Uint8Array)&&(t=I.from(t,t.offset,t.byteLength)),!I.isBuffer(e)||!I.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let n=e.length,i=t.length;for(let o=0,s=Math.min(n,i);o<s;++o)if(e[o]!==t[o]){n=e[o],i=t[o];break}return n<i?-1:i<n?1:0};I.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};I.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return I.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let i=I.allocUnsafe(t),o=0;for(n=0;n<e.length;++n){let s=e[n];if(Wr(s,Uint8Array))o+s.length>i.length?(I.isBuffer(s)||(s=I.from(s)),s.copy(i,o)):Uint8Array.prototype.set.call(i,s,o);else if(I.isBuffer(s))s.copy(i,o);else throw new TypeError('"list" argument must be an Array of Buffers');o+=s.length}return i};function l3(r,e){if(I.isBuffer(r))return r.length;if(ArrayBuffer.isView(r)||Wr(r,ArrayBuffer))return r.byteLength;if(typeof r!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof r);let t=r.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&t===0)return 0;let i=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return ag(r).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return y3(r).length;default:if(i)return n?-1:ag(r).length;e=(""+e).toLowerCase(),i=!0}}I.byteLength=l3;function RU(r,e,t){let n=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,e>>>=0,t<=e))return"";for(r||(r="utf8");;)switch(r){case"hex":return MU(this,e,t);case"utf8":case"utf-8":return p3(this,e,t);case"ascii":return zU(this,e,t);case"latin1":case"binary":return VU(this,e,t);case"base64":return OU(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return jU(this,e,t);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(r+"").toLowerCase(),n=!0}}I.prototype._isBuffer=!0;function wo(r,e,t){let n=r[e];r[e]=r[t],r[t]=n}I.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;t<e;t+=2)wo(this,t,t+1);return this};I.prototype.swap32=function(){let e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let t=0;t<e;t+=4)wo(this,t,t+3),wo(this,t+1,t+2);return this};I.prototype.swap64=function(){let e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let t=0;t<e;t+=8)wo(this,t,t+7),wo(this,t+1,t+6),wo(this,t+2,t+5),wo(this,t+3,t+4);return this};I.prototype.toString=function(){let e=this.length;return e===0?"":arguments.length===0?p3(this,0,e):RU.apply(this,arguments)};I.prototype.toLocaleString=I.prototype.toString;I.prototype.equals=function(e){if(!I.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:I.compare(this,e)===0};I.prototype.inspect=function(){let e="",t=$s.INSPECT_MAX_BYTES;return e=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(e+=" ... "),"<Buffer "+e+">"};n3&&(I.prototype[n3]=I.prototype.inspect);I.prototype.compare=function(e,t,n,i,o){if(Wr(e,Uint8Array)&&(e=I.from(e,e.offset,e.byteLength)),!I.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),t<0||n>e.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&t>=n)return 0;if(i>=o)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,i>>>=0,o>>>=0,this===e)return 0;let s=o-i,a=n-t,c=Math.min(s,a),u=this.slice(i,o),l=e.slice(t,n);for(let p=0;p<c;++p)if(u[p]!==l[p]){s=u[p],a=l[p];break}return s<a?-1:a<s?1:0};function u3(r,e,t,n,i){if(r.length===0)return-1;if(typeof t=="string"?(n=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,pg(t)&&(t=i?0:r.length-1),t<0&&(t=r.length+t),t>=r.length){if(i)return-1;t=r.length-1}else if(t<0)if(i)t=0;else return-1;if(typeof e=="string"&&(e=I.from(e,n)),I.isBuffer(e))return e.length===0?-1:i3(r,e,t,n,i);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(r,e,t):Uint8Array.prototype.lastIndexOf.call(r,e,t):i3(r,[e],t,n,i);throw new TypeError("val must be string, number or Buffer")}function i3(r,e,t,n,i){let o=1,s=r.length,a=e.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(r.length<2||e.length<2)return-1;o=2,s/=2,a/=2,t/=2}function c(l,p){return o===1?l[p]:l.readUInt16BE(p*o)}let u;if(i){let l=-1;for(u=t;u<s;u++)if(c(r,u)===c(e,l===-1?0:u-l)){if(l===-1&&(l=u),u-l+1===a)return l*o}else l!==-1&&(u-=u-l),l=-1}else for(t+a>s&&(t=s-a),u=t;u>=0;u--){let l=!0;for(let p=0;p<a;p++)if(c(r,u+p)!==c(e,p)){l=!1;break}if(l)return u}return-1}I.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1};I.prototype.indexOf=function(e,t,n){return u3(this,e,t,n,!0)};I.prototype.lastIndexOf=function(e,t,n){return u3(this,e,t,n,!1)};function UU(r,e,t,n){t=Number(t)||0;let i=r.length-t;n?(n=Number(n),n>i&&(n=i)):n=i;let o=e.length;n>o/2&&(n=o/2);let s;for(s=0;s<n;++s){let a=parseInt(e.substr(s*2,2),16);if(pg(a))return s;r[t+s]=a}return s}function NU(r,e,t,n){return Rp(ag(e,r.length-t),r,t,n)}function DU(r,e,t,n){return Rp(KU(e),r,t,n)}function LU(r,e,t,n){return Rp(y3(e),r,t,n)}function PU(r,e,t,n){return Rp(GU(e,r.length-t),r,t,n)}I.prototype.write=function(e,t,n,i){if(t===void 0)i="utf8",n=this.length,t=0;else if(n===void 0&&typeof t=="string")i=t,n=this.length,t=0;else if(isFinite(t))t=t>>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let o=this.length-t;if((n===void 0||n>o)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let s=!1;for(;;)switch(i){case"hex":return UU(this,e,t,n);case"utf8":case"utf-8":return NU(this,e,t,n);case"ascii":case"latin1":case"binary":return DU(this,e,t,n);case"base64":return LU(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return PU(this,e,t,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}};I.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function OU(r,e,t){return e===0&&t===r.length?ig.fromByteArray(r):ig.fromByteArray(r.slice(e,t))}function p3(r,e,t){t=Math.min(r.length,t);let n=[],i=e;for(;i<t;){let o=r[i],s=null,a=o>239?4:o>223?3:o>191?2:1;if(i+a<=t){let c,u,l,p;switch(a){case 1:o<128&&(s=o);break;case 2:c=r[i+1],(c&192)===128&&(p=(o&31)<<6|c&63,p>127&&(s=p));break;case 3:c=r[i+1],u=r[i+2],(c&192)===128&&(u&192)===128&&(p=(o&15)<<12|(c&63)<<6|u&63,p>2047&&(p<55296||p>57343)&&(s=p));break;case 4:c=r[i+1],u=r[i+2],l=r[i+3],(c&192)===128&&(u&192)===128&&(l&192)===128&&(p=(o&15)<<18|(c&63)<<12|(u&63)<<6|l&63,p>65535&&p<1114112&&(s=p))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return FU(n)}var o3=4096;function FU(r){let e=r.length;if(e<=o3)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=o3));return t}function zU(r,e,t){let n="";t=Math.min(r.length,t);for(let i=e;i<t;++i)n+=String.fromCharCode(r[i]&127);return n}function VU(r,e,t){let n="";t=Math.min(r.length,t);for(let i=e;i<t;++i)n+=String.fromCharCode(r[i]);return n}function MU(r,e,t){let n=r.length;(!e||e<0)&&(e=0),(!t||t<0||t>n)&&(t=n);let i="";for(let o=e;o<t;++o)i+=WU[r[o]];return i}function jU(r,e,t){let n=r.slice(e,t),i="";for(let o=0;o<n.length-1;o+=2)i+=String.fromCharCode(n[o]+n[o+1]*256);return i}I.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let i=this.subarray(e,t);return Object.setPrototypeOf(i,I.prototype),i};function Qe(r,e,t){if(r%1!==0||r<0)throw new RangeError("offset is not uint");if(r+e>t)throw new RangeError("Trying to access beyond buffer length")}I.prototype.readUintLE=I.prototype.readUIntLE=function(e,t,n){e=e>>>0,t=t>>>0,n||Qe(e,t,this.length);let i=this[e],o=1,s=0;for(;++s<t&&(o*=256);)i+=this[e+s]*o;return i};I.prototype.readUintBE=I.prototype.readUIntBE=function(e,t,n){e=e>>>0,t=t>>>0,n||Qe(e,t,this.length);let i=this[e+--t],o=1;for(;t>0&&(o*=256);)i+=this[e+--t]*o;return i};I.prototype.readUint8=I.prototype.readUInt8=function(e,t){return e=e>>>0,t||Qe(e,1,this.length),this[e]};I.prototype.readUint16LE=I.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||Qe(e,2,this.length),this[e]|this[e+1]<<8};I.prototype.readUint16BE=I.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||Qe(e,2,this.length),this[e]<<8|this[e+1]};I.prototype.readUint32LE=I.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};I.prototype.readUint32BE=I.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};I.prototype.readBigUInt64LE=Ni(function(e){e=e>>>0,js(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&_c(e,this.length-8);let i=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,o=this[++e]+this[++e]*2**8+this[++e]*2**16+n*2**24;return BigInt(i)+(BigInt(o)<<BigInt(32))});I.prototype.readBigUInt64BE=Ni(function(e){e=e>>>0,js(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&_c(e,this.length-8);let i=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],o=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n;return(BigInt(i)<<BigInt(32))+BigInt(o)});I.prototype.readIntLE=function(e,t,n){e=e>>>0,t=t>>>0,n||Qe(e,t,this.length);let i=this[e],o=1,s=0;for(;++s<t&&(o*=256);)i+=this[e+s]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*t)),i};I.prototype.readIntBE=function(e,t,n){e=e>>>0,t=t>>>0,n||Qe(e,t,this.length);let i=t,o=1,s=this[e+--i];for(;i>0&&(o*=256);)s+=this[e+--i]*o;return o*=128,s>=o&&(s-=Math.pow(2,8*t)),s};I.prototype.readInt8=function(e,t){return e=e>>>0,t||Qe(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};I.prototype.readInt16LE=function(e,t){e=e>>>0,t||Qe(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n};I.prototype.readInt16BE=function(e,t){e=e>>>0,t||Qe(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n};I.prototype.readInt32LE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};I.prototype.readInt32BE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};I.prototype.readBigInt64LE=Ni(function(e){e=e>>>0,js(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&_c(e,this.length-8);let i=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24)});I.prototype.readBigInt64BE=Ni(function(e){e=e>>>0,js(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&_c(e,this.length-8);let i=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(i)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n)});I.prototype.readFloatLE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),Ms.read(this,e,!0,23,4)};I.prototype.readFloatBE=function(e,t){return e=e>>>0,t||Qe(e,4,this.length),Ms.read(this,e,!1,23,4)};I.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||Qe(e,8,this.length),Ms.read(this,e,!0,52,8)};I.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||Qe(e,8,this.length),Ms.read(this,e,!1,52,8)};function Dt(r,e,t,n,i,o){if(!I.isBuffer(r))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||e<o)throw new RangeError('"value" argument is out of bounds');if(t+n>r.length)throw new RangeError("Index out of range")}I.prototype.writeUintLE=I.prototype.writeUIntLE=function(e,t,n,i){if(e=+e,t=t>>>0,n=n>>>0,!i){let a=Math.pow(2,8*n)-1;Dt(this,e,t,n,a,0)}let o=1,s=0;for(this[t]=e&255;++s<n&&(o*=256);)this[t+s]=e/o&255;return t+n};I.prototype.writeUintBE=I.prototype.writeUIntBE=function(e,t,n,i){if(e=+e,t=t>>>0,n=n>>>0,!i){let a=Math.pow(2,8*n)-1;Dt(this,e,t,n,a,0)}let o=n-1,s=1;for(this[t+o]=e&255;--o>=0&&(s*=256);)this[t+o]=e/s&255;return t+n};I.prototype.writeUint8=I.prototype.writeUInt8=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,1,255,0),this[t]=e&255,t+1};I.prototype.writeUint16LE=I.prototype.writeUInt16LE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};I.prototype.writeUint16BE=I.prototype.writeUInt16BE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};I.prototype.writeUint32LE=I.prototype.writeUInt32LE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};I.prototype.writeUint32BE=I.prototype.writeUInt32BE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function d3(r,e,t,n,i){x3(e,n,i,r,t,7);let o=Number(e&BigInt(4294967295));r[t++]=o,o=o>>8,r[t++]=o,o=o>>8,r[t++]=o,o=o>>8,r[t++]=o;let s=Number(e>>BigInt(32)&BigInt(4294967295));return r[t++]=s,s=s>>8,r[t++]=s,s=s>>8,r[t++]=s,s=s>>8,r[t++]=s,t}function f3(r,e,t,n,i){x3(e,n,i,r,t,7);let o=Number(e&BigInt(4294967295));r[t+7]=o,o=o>>8,r[t+6]=o,o=o>>8,r[t+5]=o,o=o>>8,r[t+4]=o;let s=Number(e>>BigInt(32)&BigInt(4294967295));return r[t+3]=s,s=s>>8,r[t+2]=s,s=s>>8,r[t+1]=s,s=s>>8,r[t]=s,t+8}I.prototype.writeBigUInt64LE=Ni(function(e,t=0){return d3(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});I.prototype.writeBigUInt64BE=Ni(function(e,t=0){return f3(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});I.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t=t>>>0,!i){let c=Math.pow(2,8*n-1);Dt(this,e,t,n,c-1,-c)}let o=0,s=1,a=0;for(this[t]=e&255;++o<n&&(s*=256);)e<0&&a===0&&this[t+o-1]!==0&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n};I.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t=t>>>0,!i){let c=Math.pow(2,8*n-1);Dt(this,e,t,n,c-1,-c)}let o=n-1,s=1,a=0;for(this[t+o]=e&255;--o>=0&&(s*=256);)e<0&&a===0&&this[t+o+1]!==0&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n};I.prototype.writeInt8=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};I.prototype.writeInt16LE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};I.prototype.writeInt16BE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};I.prototype.writeInt32LE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};I.prototype.writeInt32BE=function(e,t,n){return e=+e,t=t>>>0,n||Dt(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};I.prototype.writeBigInt64LE=Ni(function(e,t=0){return d3(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});I.prototype.writeBigInt64BE=Ni(function(e,t=0){return f3(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function h3(r,e,t,n,i,o){if(t+n>r.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function m3(r,e,t,n,i){return e=+e,t=t>>>0,i||h3(r,e,t,4,34028234663852886e22,-34028234663852886e22),Ms.write(r,e,t,n,23,4),t+4}I.prototype.writeFloatLE=function(e,t,n){return m3(this,e,t,!0,n)};I.prototype.writeFloatBE=function(e,t,n){return m3(this,e,t,!1,n)};function g3(r,e,t,n,i){return e=+e,t=t>>>0,i||h3(r,e,t,8,17976931348623157e292,-17976931348623157e292),Ms.write(r,e,t,n,52,8),t+8}I.prototype.writeDoubleLE=function(e,t,n){return g3(this,e,t,!0,n)};I.prototype.writeDoubleBE=function(e,t,n){return g3(this,e,t,!1,n)};I.prototype.copy=function(e,t,n,i){if(!I.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i<n&&(i=n),i===n||e.length===0||this.length===0)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t<i-n&&(i=e.length-t+n);let o=i-n;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(t,n,i):Uint8Array.prototype.set.call(e,this.subarray(n,i),t),o};I.prototype.fill=function(e,t,n,i){if(typeof e=="string"){if(typeof t=="string"?(i=t,t=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!I.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(e.length===1){let s=e.charCodeAt(0);(i==="utf8"&&s<128||i==="latin1")&&(e=s)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;t=t>>>0,n=n===void 0?this.length:n>>>0,e||(e=0);let o;if(typeof e=="number")for(o=t;o<n;++o)this[o]=e;else{let s=I.isBuffer(e)?e:I.from(e,i),a=s.length;if(a===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(o=0;o<n-t;++o)this[o+t]=s[o%a]}return this};var Vs={};function ug(r,e,t){Vs[r]=class extends t{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${r}]`,this.stack,delete this.name}get code(){return r}set code(i){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:i,writable:!0})}toString(){return`${this.name} [${r}]: ${this.message}`}}}ug("ERR_BUFFER_OUT_OF_BOUNDS",function(r){return r?`${r} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError);ug("ERR_INVALID_ARG_TYPE",function(r,e){return`The "${r}" argument must be of type number. Received type ${typeof e}`},TypeError);ug("ERR_OUT_OF_RANGE",function(r,e,t){let n=`The value of "${r}" is out of range.`,i=t;return Number.isInteger(t)&&Math.abs(t)>2**32?i=s3(String(t)):typeof t=="bigint"&&(i=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(i=s3(i)),i+="n"),n+=` It must be ${e}. Received ${i}`,n},RangeError);function s3(r){let e="",t=r.length,n=r[0]==="-"?1:0;for(;t>=n+4;t-=3)e=`_${r.slice(t-3,t)}${e}`;return`${r.slice(0,t)}${e}`}function $U(r,e,t){js(e,"offset"),(r[e]===void 0||r[e+t]===void 0)&&_c(e,r.length-(t+1))}function x3(r,e,t,n,i,o){if(r>t||r<e){let s=typeof e=="bigint"?"n":"",a;throw o>3?e===0||e===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${e}${s} and <= ${t}${s}`,new Vs.ERR_OUT_OF_RANGE("value",a,r)}$U(n,i,o)}function js(r,e){if(typeof r!="number")throw new Vs.ERR_INVALID_ARG_TYPE(e,"number",r)}function _c(r,e,t){throw Math.floor(r)!==r?(js(r,t),new Vs.ERR_OUT_OF_RANGE(t||"offset","an integer",r)):e<0?new Vs.ERR_BUFFER_OUT_OF_BOUNDS:new Vs.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${e}`,r)}var HU=/[^+/0-9A-Za-z-_]/g;function qU(r){if(r=r.split("=")[0],r=r.trim().replace(HU,""),r.length<2)return"";for(;r.length%4!==0;)r=r+"=";return r}function ag(r,e){e=e||1/0;let t,n=r.length,i=null,o=[];for(let s=0;s<n;++s){if(t=r.charCodeAt(s),t>55295&&t<57344){if(!i){if(t>56319){(e-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=t;continue}if(t<56320){(e-=3)>-1&&o.push(239,191,189),i=t;continue}t=(i-55296<<10|t-56320)+65536}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,t<128){if((e-=1)<0)break;o.push(t)}else if(t<2048){if((e-=2)<0)break;o.push(t>>6|192,t&63|128)}else if(t<65536){if((e-=3)<0)break;o.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((e-=4)<0)break;o.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return o}function KU(r){let e=[];for(let t=0;t<r.length;++t)e.push(r.charCodeAt(t)&255);return e}function GU(r,e){let t,n,i,o=[];for(let s=0;s<r.length&&!((e-=2)<0);++s)t=r.charCodeAt(s),n=t>>8,i=t%256,o.push(i),o.push(n);return o}function y3(r){return ig.toByteArray(qU(r))}function Rp(r,e,t,n){let i;for(i=0;i<n&&!(i+t>=e.length||i>=r.length);++i)e[i+t]=r[i];return i}function Wr(r,e){return r instanceof e||r!=null&&r.constructor!=null&&r.constructor.name!=null&&r.constructor.name===e.name}function pg(r){return r!==r}var WU=function(){let r="0123456789abcdef",e=new Array(256);for(let t=0;t<16;++t){let n=t*16;for(let i=0;i<16;++i)e[n+i]=r[t]+r[i]}return e}();function Ni(r){return typeof BigInt>"u"?YU:r}function YU(){throw new Error("BigInt not supported")}});var w3=re(fg=>{"use strict";fg.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};fg.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return r.toUpperCase().startsWith("UNKNOWN_")?parseInt(r.slice(8)):0}});var b3=re(hg=>{"use strict";hg.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};hg.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var v3=re(mg=>{"use strict";mg.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};mg.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var E3=re(gg=>{"use strict";gg.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};gg.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var A3=re(xg=>{"use strict";xg.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return r<0?null:`OPTION_${r}`};xg.toCode=function(r){if(typeof r=="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=r.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}});var k3=re((B3,yg)=>{var S3=function(r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.decode=p,r.encode=l,r.familyOf=u,r.name=void 0,r.sizeOf=c,r.v6=r.v4=void 0;let e=/^(\d{1,3}\.){3,3}\d{1,3}$/,t=4,n=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,i=16,o={name:"v4",size:t,isFormat:m=>e.test(m),encode(m,d,f){f=~~f,d=d||new Uint8Array(f+t);let h=m.length,x=0;for(let g=0;g<h;){let y=m.charCodeAt(g++);y===46?(d[f++]=x,x=0):x=x*10+(y-48)}return d[f]=x,d},decode(m,d){return d=~~d,`${m[d++]}.${m[d++]}.${m[d++]}.${m[d]}`}};r.v4=o;let s={name:"v6",size:i,isFormat:m=>m.length>0&&n.test(m),encode(m,d,f){f=~~f;let h=f+i,x=-1,g=0,y=0,w=!0,E=!1;d=d||new Uint8Array(f+i);for(let B=0;B<m.length;B++){let S=m.charCodeAt(B);S===58?(w?x!==-1?(f<h&&(d[f]=0),f<h-1&&(d[f+1]=0),f+=2):f<h&&(x=f):(E===!0?(f<h&&(d[f]=y),f++):(f<h&&(d[f]=g>>8),f<h-1&&(d[f+1]=g&255),f+=2),g=0,y=0),w=!0,E=!1):S===46?(f<h&&(d[f]=y),f++,y=0,g=0,w=!1,E=!0):(w=!1,S>=97?S-=87:S>=65?S-=55:(S-=48,y=y*10+S),g=(g<<4)+S)}if(w===!1)E===!0?(f<h&&(d[f]=y),f++):(f<h&&(d[f]=g>>8),f<h-1&&(d[f+1]=g&255),f+=2);else if(x===0)f<h&&(d[f]=0),f<h-1&&(d[f+1]=0),f+=2;else if(x!==-1){f+=2;for(let B=Math.min(f-1,h-1);B>=x+2;B--)d[B]=d[B-2];d[x]=0,d[x+1]=0,x=f}if(x!==f&&x!==-1)for(f>h-2&&(f=h-2);h>x;)d[--h]=f<h&&f>x?d[--f]:0;else for(;f<h;)d[f++]=0;return d},decode(m,d){d=~~d;let f="";for(let h=0;h<i;h+=2)h!==0&&(f+=":"),f+=(m[d+h]<<8|m[d+h+1]).toString(16);return f.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=s;let a="ip";r.name=a;function c(m){if(o.isFormat(m))return o.size;if(s.isFormat(m))return s.size;throw Error(`Invalid ip address: ${m}`)}function u(m){return c(m)===o.size?1:2}function l(m,d,f){f=~~f;let h=c(m);return typeof d=="function"&&(d=d(f+h)),h===o.size?o.encode(m,d,f):s.encode(m,d,f)}function p(m,d,f){if(d=~~d,f=f||m.length-d,f===o.size)return o.decode(m,d,f);if(f===s.size)return s.decode(m,d,f);throw Error(`Invalid buffer size needs to be ${o.size} for v4 or ${s.size} for v6.`)}return"default"in r?r.default:r}({});typeof define=="function"&&define.amd?define([],function(){return S3}):typeof yg=="object"&&typeof B3=="object"&&(yg.exports=S3)});var T3=re(G=>{"use strict";var W=dg().Buffer,Kn=w3(),XU=b3(),JU=v3(),Np=E3(),wg=A3(),bo=k3(),ZU=0,I3=32768,bg=32768,QU=~bg,_3=32768,eN=~_3,z=G.name={};z.encode=function(r,e,t,{mail:n=!1}={}){e||(e=W.alloc(z.encodingLength(r))),t||(t=0);let i=t,o=r.replace(/^\.|\.$/gm,"");if(o.length){let s=[];if(n){let a="";o.split(".").forEach(c=>{c.endsWith("\\")?a+=(a.length?".":"")+c.slice(0,-1):s.length===0&&a.length?s.push(a+"."+c):s.push(c)})}else s=o.split(".");for(let a=0;a<s.length;a++){let c=e.write(s[a],t+1);e[t]=c,t+=c+1}}return e[t++]=0,z.encode.bytes=t-i,e};z.encode.bytes=0;z.decode=function(r,e,{mail:t=!1}={}){e||(e=0);let n=[],i=e,o=0,s=0,a=!1;for(;;){if(e>=r.length)throw new Error("Cannot decode name (buffer overflow)");let c=r[e++];if(s+=a?0:1,c===0)break;if(c&192)if((c&192)===192){if(e+1>r.length)throw new Error("Cannot decode name (buffer overflow)");let u=r.readUInt16BE(e-1)-49152;if(u>=i)throw new Error("Cannot decode name (bad pointer)");e=u,i=u,s+=a?0:1,a=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+c>r.length)throw new Error("Cannot decode name (buffer overflow)");if(o+=c+1,o>254)throw new Error("Cannot decode name (name too long)");let u=r.toString("utf-8",e,e+c);t&&(u=u.replace(/\./g,"\\.")),n.push(u),e+=c,s+=a?0:c}}return z.decode.bytes=s,n.length===0?".":n.join(".")};z.decode.bytes=0;z.encodingLength=function(r){return r==="."||r===".."?1:W.byteLength(r.replace(/^\.|\.$/gm,""))+2};var oe={};oe.encode=function(r,e,t){e||(e=W.alloc(oe.encodingLength(r))),t||(t=0);let n=e.write(r,t+1);return e[t]=n,oe.encode.bytes=n+1,e};oe.encode.bytes=0;oe.decode=function(r,e){e||(e=0);let t=r[e],n=r.toString("utf-8",e+1,e+1+t);return oe.decode.bytes=t+1,n};oe.decode.bytes=0;oe.encodingLength=function(r){return W.byteLength(r)+1};var Ir={};Ir.encode=function(r,e,t){e||(e=Ir.encodingLength(r)),t||(t=0);let n=(r.flags||0)&32767,i=r.type==="response"?I3:ZU;return e.writeUInt16BE(r.id||0,t),e.writeUInt16BE(n|i,t+2),e.writeUInt16BE(r.questions.length,t+4),e.writeUInt16BE(r.answers.length,t+6),e.writeUInt16BE(r.authorities.length,t+8),e.writeUInt16BE(r.additionals.length,t+10),e};Ir.encode.bytes=12;Ir.decode=function(r,e){if(e||(e=0),r.length<12)throw new Error("Header must be 12 bytes");let t=r.readUInt16BE(e+2);return{id:r.readUInt16BE(e),type:t&I3?"response":"query",flags:t&32767,flag_qr:(t>>15&1)===1,opcode:JU.toString(t>>11&15),flag_aa:(t>>10&1)===1,flag_tc:(t>>9&1)===1,flag_rd:(t>>8&1)===1,flag_ra:(t>>7&1)===1,flag_z:(t>>6&1)===1,flag_ad:(t>>5&1)===1,flag_cd:(t>>4&1)===1,rcode:XU.toString(t&15),questions:new Array(r.readUInt16BE(e+4)),answers:new Array(r.readUInt16BE(e+6)),authorities:new Array(r.readUInt16BE(e+8)),additionals:new Array(r.readUInt16BE(e+10))}};Ir.decode.bytes=12;Ir.encodingLength=function(){return 12};var On=G.unknown={};On.encode=function(r,e,t){return e||(e=W.alloc(On.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.length,t),r.copy(e,t+2),On.encode.bytes=r.length+2,e};On.encode.bytes=0;On.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=r.slice(e+2,e+2+t);return On.decode.bytes=t+2,n};On.decode.bytes=0;On.encodingLength=function(r){return r.length+2};var Fn=G.ns={};Fn.encode=function(r,e,t){return e||(e=W.alloc(Fn.encodingLength(r))),t||(t=0),z.encode(r,e,t+2),e.writeUInt16BE(z.encode.bytes,t),Fn.encode.bytes=z.encode.bytes+2,e};Fn.encode.bytes=0;Fn.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=z.decode(r,e+2);return Fn.decode.bytes=t+2,n};Fn.decode.bytes=0;Fn.encodingLength=function(r){return z.encodingLength(r)+2};var zn=G.soa={};zn.encode=function(r,e,t){e||(e=W.alloc(zn.encodingLength(r))),t||(t=0);let n=t;return t+=2,z.encode(r.mname,e,t),t+=z.encode.bytes,z.encode(r.rname,e,t,{mail:!0}),t+=z.encode.bytes,e.writeUInt32BE(r.serial||0,t),t+=4,e.writeUInt32BE(r.refresh||0,t),t+=4,e.writeUInt32BE(r.retry||0,t),t+=4,e.writeUInt32BE(r.expire||0,t),t+=4,e.writeUInt32BE(r.minimum||0,t),t+=4,e.writeUInt16BE(t-n-2,n),zn.encode.bytes=t-n,e};zn.encode.bytes=0;zn.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mname=z.decode(r,e),e+=z.decode.bytes,n.rname=z.decode(r,e,{mail:!0}),e+=z.decode.bytes,n.serial=r.readUInt32BE(e),e+=4,n.refresh=r.readUInt32BE(e),e+=4,n.retry=r.readUInt32BE(e),e+=4,n.expire=r.readUInt32BE(e),e+=4,n.minimum=r.readUInt32BE(e),e+=4,zn.decode.bytes=e-t,n};zn.decode.bytes=0;zn.encodingLength=function(r){return 22+z.encodingLength(r.mname)+z.encodingLength(r.rname)};var Vn=G.txt={};Vn.encode=function(r,e,t){Array.isArray(r)||(r=[r]);for(let i=0;i<r.length;i++)if(typeof r[i]=="string"&&(r[i]=W.from(r[i])),!W.isBuffer(r[i]))throw new Error("Must be a Buffer");e||(e=W.alloc(Vn.encodingLength(r))),t||(t=0);let n=t;return t+=2,r.forEach(function(i){e[t++]=i.length,i.copy(e,t,0,i.length),t+=i.length}),e.writeUInt16BE(t-n-2,n),Vn.encode.bytes=t-n,e};Vn.encode.bytes=0;Vn.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let i=[];for(;n>0;){let o=r[e++];if(--n,n<o)throw new Error("Buffer overflow");i.push(r.slice(e,e+o)),e+=o,n-=o}return Vn.decode.bytes=e-t,i};Vn.decode.bytes=0;Vn.encodingLength=function(r){Array.isArray(r)||(r=[r]);let e=2;return r.forEach(function(t){typeof t=="string"?e+=W.byteLength(t)+1:e+=t.length+1}),e};var Mn=G.null={};Mn.encode=function(r,e,t){e||(e=W.alloc(Mn.encodingLength(r))),t||(t=0),typeof r=="string"&&(r=W.from(r)),r||(r=W.alloc(0));let n=t;t+=2;let i=r.length;return r.copy(e,t,0,i),t+=i,e.writeUInt16BE(t-n-2,n),Mn.encode.bytes=t-n,e};Mn.encode.bytes=0;Mn.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let i=r.slice(e,e+n);return e+=n,Mn.decode.bytes=e-t,i};Mn.decode.bytes=0;Mn.encodingLength=function(r){return r?(W.isBuffer(r)?r.length:W.byteLength(r))+2:2};var jn=G.hinfo={};jn.encode=function(r,e,t){e||(e=W.alloc(jn.encodingLength(r))),t||(t=0);let n=t;return t+=2,oe.encode(r.cpu,e,t),t+=oe.encode.bytes,oe.encode(r.os,e,t),t+=oe.encode.bytes,e.writeUInt16BE(t-n-2,n),jn.encode.bytes=t-n,e};jn.encode.bytes=0;jn.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.cpu=oe.decode(r,e),e+=oe.decode.bytes,n.os=oe.decode(r,e),e+=oe.decode.bytes,jn.decode.bytes=e-t,n};jn.decode.bytes=0;jn.encodingLength=function(r){return oe.encodingLength(r.cpu)+oe.encodingLength(r.os)+2};var Br=G.ptr={},tN=G.cname=Br,rN=G.dname=Br;Br.encode=function(r,e,t){return e||(e=W.alloc(Br.encodingLength(r))),t||(t=0),z.encode(r,e,t+2),e.writeUInt16BE(z.encode.bytes,t),Br.encode.bytes=z.encode.bytes+2,e};Br.encode.bytes=0;Br.decode=function(r,e){e||(e=0);let t=z.decode(r,e+2);return Br.decode.bytes=z.decode.bytes+2,t};Br.decode.bytes=0;Br.encodingLength=function(r){return z.encodingLength(r)+2};var $n=G.srv={};$n.encode=function(r,e,t){e||(e=W.alloc($n.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.priority||0,t+2),e.writeUInt16BE(r.weight||0,t+4),e.writeUInt16BE(r.port||0,t+6),z.encode(r.target,e,t+8);let n=z.encode.bytes+6;return e.writeUInt16BE(n,t),$n.encode.bytes=n+2,e};$n.encode.bytes=0;$n.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n={};return n.priority=r.readUInt16BE(e+2),n.weight=r.readUInt16BE(e+4),n.port=r.readUInt16BE(e+6),n.target=z.decode(r,e+8),$n.decode.bytes=t+2,n};$n.decode.bytes=0;$n.encodingLength=function(r){return 8+z.encodingLength(r.target)};var Wt=G.caa={};Wt.ISSUER_CRITICAL=128;Wt.encode=function(r,e,t){let n=Wt.encodingLength(r);return e||(e=W.alloc(Wt.encodingLength(r))),t||(t=0),r.issuerCritical&&(r.flags=Wt.ISSUER_CRITICAL),e.writeUInt16BE(n-2,t),t+=2,e.writeUInt8(r.flags||0,t),t+=1,oe.encode(r.tag,e,t),t+=oe.encode.bytes,e.write(r.value,t),t+=W.byteLength(r.value),Wt.encode.bytes=n,e};Wt.encode.bytes=0;Wt.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e);e+=2;let n=e,i={};return i.flags=r.readUInt8(e),e+=1,i.tag=oe.decode(r,e),e+=oe.decode.bytes,i.value=r.toString("utf-8",e,n+t),i.issuerCritical=!!(i.flags&Wt.ISSUER_CRITICAL),Wt.decode.bytes=t+2,i};Wt.decode.bytes=0;Wt.encodingLength=function(r){return oe.encodingLength(r.tag)+oe.encodingLength(r.value)+2};var Di=G.mx={};Di.encode=function(r,e,t){e||(e=W.alloc(Di.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,z.encode(r.exchange,e,t),t+=z.encode.bytes,e.writeUInt16BE(t-n-2,n),Di.encode.bytes=t-n,e};Di.encode.bytes=0;Di.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.preference=r.readUInt16BE(e),e+=2,n.exchange=z.decode(r,e),e+=z.decode.bytes,Di.decode.bytes=e-t,n};Di.encodingLength=function(r){return 4+z.encodingLength(r.exchange)};var Hn=G.a={};Hn.encode=function(r,e,t){return e||(e=W.alloc(Hn.encodingLength(r))),t||(t=0),e.writeUInt16BE(4,t),t+=2,bo.v4.encode(r,e,t),Hn.encode.bytes=6,e};Hn.encode.bytes=0;Hn.decode=function(r,e){e||(e=0),e+=2;let t=bo.v4.decode(r,e);return Hn.decode.bytes=6,t};Hn.decode.bytes=0;Hn.encodingLength=function(){return 6};var qn=G.aaaa={};qn.encode=function(r,e,t){return e||(e=W.alloc(qn.encodingLength(r))),t||(t=0),e.writeUInt16BE(16,t),t+=2,bo.v6.encode(r,e,t),qn.encode.bytes=18,e};qn.encode.bytes=0;qn.decode=function(r,e){e||(e=0),e+=2;let t=bo.v6.decode(r,e);return qn.decode.bytes=18,t};qn.decode.bytes=0;qn.encodingLength=function(){return 18};var Lt=G.option={};Lt.encode=function(r,e,t){e||(e=W.alloc(Lt.encodingLength(r))),t||(t=0);let n=t,i=wg.toCode(r.code);if(e.writeUInt16BE(i,t),t+=2,r.data)e.writeUInt16BE(r.data.length,t),t+=2,r.data.copy(e,t),t+=r.data.length;else switch(i){case 8:let o=r.sourcePrefixLength||0,s=r.family||bo.familyOf(r.ip),a=bo.encode(r.ip,W.alloc),c=Math.ceil(o/8);e.writeUInt16BE(c+4,t),t+=2,e.writeUInt16BE(s,t),t+=2,e.writeUInt8(o,t++),e.writeUInt8(r.scopePrefixLength||0,t++),a.copy(e,t,0,c),t+=c;break;case 11:r.timeout?(e.writeUInt16BE(2,t),t+=2,e.writeUInt16BE(r.timeout,t),t+=2):(e.writeUInt16BE(0,t),t+=2);break;case 12:let u=r.length||0;e.writeUInt16BE(u,t),t+=2,e.fill(0,t,t+u),t+=u;break;case 14:let l=r.tags.length*2;e.writeUInt16BE(l,t),t+=2;for(let p of r.tags)e.writeUInt16BE(p,t),t+=2;break;default:throw new Error(`Unknown roption code: ${r.code}`)}return Lt.encode.bytes=t-n,e};Lt.encode.bytes=0;Lt.decode=function(r,e){e||(e=0);let t={};t.code=r.readUInt16BE(e),t.type=wg.toString(t.code),e+=2;let n=r.readUInt16BE(e);switch(e+=2,t.data=r.slice(e,e+n),t.code){case 8:t.family=r.readUInt16BE(e),e+=2,t.sourcePrefixLength=r.readUInt8(e++),t.scopePrefixLength=r.readUInt8(e++);let i=W.alloc(t.family===1?4:16);r.copy(i,0,e,e+n-4),t.ip=bo.decode(i);break;case 11:n>0&&(t.timeout=r.readUInt16BE(e),e+=2);break;case 14:t.tags=[];for(let o=0;o<n;o+=2)t.tags.push(r.readUInt16BE(e)),e+=2}return Lt.decode.bytes=n+4,t};Lt.decode.bytes=0;Lt.encodingLength=function(r){if(r.data)return r.data.length+4;switch(wg.toCode(r.code)){case 8:let t=r.sourcePrefixLength||0;return Math.ceil(t/8)+8;case 11:return typeof r.timeout=="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw new Error(`Unknown roption code: ${r.code}`)};var Xt=G.opt={};Xt.encode=function(r,e,t){e||(e=W.alloc(Xt.encodingLength(r))),t||(t=0);let n=t,i=Hs(r,Lt);return e.writeUInt16BE(i,t),t=Tc(r,Lt,e,t+2),Xt.encode.bytes=t-n,e};Xt.encode.bytes=0;Xt.decode=function(r,e){e||(e=0);let t=e,n=[],i=r.readUInt16BE(e);e+=2;let o=0;for(;i>0;)n[o++]=Lt.decode(r,e),e+=Lt.decode.bytes,i-=Lt.decode.bytes;return Xt.decode.bytes=e-t,n};Xt.decode.bytes=0;Xt.encodingLength=function(r){return 2+Hs(r||[],Lt)};var At=G.dnskey={};At.PROTOCOL_DNSSEC=3;At.ZONE_KEY=128;At.SECURE_ENTRYPOINT=32768;At.encode=function(r,e,t){e||(e=W.alloc(At.encodingLength(r))),t||(t=0);let n=t,i=r.key;if(!W.isBuffer(i))throw new Error("Key must be a Buffer");return t+=2,e.writeUInt16BE(r.flags,t),t+=2,e.writeUInt8(At.PROTOCOL_DNSSEC,t),t+=1,e.writeUInt8(r.algorithm,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,At.encode.bytes=t-n,e.writeUInt16BE(At.encode.bytes-2,n),e};At.encode.bytes=0;At.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);if(e+=2,n.flags=r.readUInt16BE(e),e+=2,r.readUInt8(e)!==At.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,n.algorithm=r.readUInt8(e),e+=1,n.key=r.slice(e,t+i+2),e+=n.key.length,At.decode.bytes=e-t,n};At.decode.bytes=0;At.encodingLength=function(r){return 6+W.byteLength(r.key)};var Yr=G.rrsig={};Yr.encode=function(r,e,t){e||(e=W.alloc(Yr.encodingLength(r))),t||(t=0);let n=t,i=r.signature;if(!W.isBuffer(i))throw new Error("Signature must be a Buffer");return t+=2,e.writeUInt16BE(Kn.toType(r.typeCovered),t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.labels,t),t+=1,e.writeUInt32BE(r.originalTTL,t),t+=4,e.writeUInt32BE(r.expiration,t),t+=4,e.writeUInt32BE(r.inception,t),t+=4,e.writeUInt16BE(r.keyTag,t),t+=2,z.encode(r.signersName,e,t),t+=z.encode.bytes,i.copy(e,t,0,i.length),t+=i.length,Yr.encode.bytes=t-n,e.writeUInt16BE(Yr.encode.bytes-2,n),e};Yr.encode.bytes=0;Yr.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.typeCovered=Kn.toString(r.readUInt16BE(e)),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.labels=r.readUInt8(e),e+=1,n.originalTTL=r.readUInt32BE(e),e+=4,n.expiration=r.readUInt32BE(e),e+=4,n.inception=r.readUInt32BE(e),e+=4,n.keyTag=r.readUInt16BE(e),e+=2,n.signersName=z.decode(r,e),e+=z.decode.bytes,n.signature=r.slice(e,t+i+2),e+=n.signature.length,Yr.decode.bytes=e-t,n};Yr.decode.bytes=0;Yr.encodingLength=function(r){return 20+z.encodingLength(r.signersName)+W.byteLength(r.signature)};var Xr=G.rp={};Xr.encode=function(r,e,t){e||(e=W.alloc(Xr.encodingLength(r))),t||(t=0);let n=t;return t+=2,z.encode(r.mbox||".",e,t,{mail:!0}),t+=z.encode.bytes,z.encode(r.txt||".",e,t),t+=z.encode.bytes,Xr.encode.bytes=t-n,e.writeUInt16BE(Xr.encode.bytes-2,n),e};Xr.encode.bytes=0;Xr.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mbox=z.decode(r,e,{mail:!0})||".",e+=z.decode.bytes,n.txt=z.decode(r,e)||".",e+=z.decode.bytes,Xr.decode.bytes=e-t,n};Xr.decode.bytes=0;Xr.encodingLength=function(r){return 2+z.encodingLength(r.mbox||".")+z.encodingLength(r.txt||".")};var et={};et.encode=function(r,e,t){e||(e=W.alloc(et.encodingLength(r))),t||(t=0);let n=t;for(var i=[],o=0;o<r.length;o++){var s=Kn.toType(r[o]);i[s>>8]===void 0&&(i[s>>8]=[]),i[s>>8][s>>3&31]|=1<<7-(s&7)}for(o=0;o<i.length;o++)if(i[o]!==void 0){var a=W.from(i[o]);e.writeUInt8(o,t),t+=1,e.writeUInt8(a.length,t),t+=1,a.copy(e,t),t+=a.length}return et.encode.bytes=t-n,e};et.encode.bytes=0;et.decode=function(r,e,t){e||(e=0);let n=e;for(var i=[];e-n<t;){var o=r.readUInt8(e);e+=1;var s=r.readUInt8(e);e+=1;for(var a=0;a<s;a++)for(var c=r.readUInt8(e+a),u=0;u<8;u++)if(c&1<<7-u){var l=Kn.toString(o<<8|a<<3|u);i.push(l)}e+=s}return et.decode.bytes=e-n,i};et.decode.bytes=0;et.encodingLength=function(r){for(var e=[],t=0;t<r.length;t++){var n=Kn.toType(r[t]);e[n>>8]=Math.max(e[n>>8]||0,n&255)}var i=0;for(t=0;t<e.length;t++)e[t]!==void 0&&(i+=2+Math.ceil((e[t]+1)/8));return i};var Jr=G.nsec={};Jr.encode=function(r,e,t){e||(e=W.alloc(Jr.encodingLength(r))),t||(t=0);let n=t;return t+=2,z.encode(r.nextDomain,e,t),t+=z.encode.bytes,et.encode(r.rrtypes,e,t),t+=et.encode.bytes,Jr.encode.bytes=t-n,e.writeUInt16BE(Jr.encode.bytes-2,n),e};Jr.encode.bytes=0;Jr.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.nextDomain=z.decode(r,e),e+=z.decode.bytes,n.rrtypes=et.decode(r,e,i-(e-t)),e+=et.decode.bytes,Jr.decode.bytes=e-t,n};Jr.decode.bytes=0;Jr.encodingLength=function(r){return 2+z.encodingLength(r.nextDomain)+et.encodingLength(r.rrtypes)};var Zr=G.nsec3={};Zr.encode=function(r,e,t){e||(e=W.alloc(Zr.encodingLength(r))),t||(t=0);let n=t,i=r.salt;if(!W.isBuffer(i))throw new Error("salt must be a Buffer");let o=r.nextDomain;if(!W.isBuffer(o))throw new Error("nextDomain must be a Buffer");return t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.flags,t),t+=1,e.writeUInt16BE(r.iterations,t),t+=2,e.writeUInt8(i.length,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,e.writeUInt8(o.length,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,et.encode(r.rrtypes,e,t),t+=et.encode.bytes,Zr.encode.bytes=t-n,e.writeUInt16BE(Zr.encode.bytes-2,n),e};Zr.encode.bytes=0;Zr.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);e+=2,n.algorithm=r.readUInt8(e),e+=1,n.flags=r.readUInt8(e),e+=1,n.iterations=r.readUInt16BE(e),e+=2;let o=r.readUInt8(e);e+=1,n.salt=r.slice(e,e+o),e+=o;let s=r.readUInt8(e);return e+=1,n.nextDomain=r.slice(e,e+s),e+=s,n.rrtypes=et.decode(r,e,i-(e-t)),e+=et.decode.bytes,Zr.decode.bytes=e-t,n};Zr.decode.bytes=0;Zr.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+et.encodingLength(r.rrtypes)};var Qr=G.ds={};Qr.encode=function(r,e,t){e||(e=W.alloc(Qr.encodingLength(r))),t||(t=0);let n=t,i=r.digest;if(!W.isBuffer(i))throw new Error("Digest must be a Buffer");return t+=2,e.writeUInt16BE(r.keyTag,t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.digestType,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,Qr.encode.bytes=t-n,e.writeUInt16BE(Qr.encode.bytes-2,n),e};Qr.encode.bytes=0;Qr.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.keyTag=r.readUInt16BE(e),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.digestType=r.readUInt8(e),e+=1,n.digest=r.slice(e,t+i+2),e+=n.digest.length,Qr.decode.bytes=e-t,n};Qr.decode.bytes=0;Qr.encodingLength=function(r){return 6+W.byteLength(r.digest)};var Yt=G.sshfp={};Yt.getFingerprintLengthForHashType=function(e){switch(e){case 1:return 20;case 2:return 32}};Yt.encode=function(e,t,n){t||(t=W.alloc(Yt.encodingLength(e))),n||(n=0);let i=n;n+=2,t[n]=e.algorithm,n+=1,t[n]=e.hash,n+=1;let o=W.from(e.fingerprint.toUpperCase(),"hex");if(o.length!==Yt.getFingerprintLengthForHashType(e.hash))throw new Error("Invalid fingerprint length");return o.copy(t,n),n+=o.byteLength,Yt.encode.bytes=n-i,t.writeUInt16BE(Yt.encode.bytes-2,i),t};Yt.encode.bytes=0;Yt.decode=function(e,t){t||(t=0);let n=t,i={};t+=2,i.algorithm=e[t],t+=1,i.hash=e[t],t+=1;let o=Yt.getFingerprintLengthForHashType(i.hash);return i.fingerprint=e.slice(t,t+o).toString("hex").toUpperCase(),t+=o,Yt.decode.bytes=t-n,i};Yt.decode.bytes=0;Yt.encodingLength=function(r){return 4+W.from(r.fingerprint,"hex").byteLength};var en=G.naptr={};en.encode=function(r,e,t){e||(e=W.alloc(en.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.order||0,t),t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,oe.encode(r.flags,e,t),t+=oe.encode.bytes,oe.encode(r.services,e,t),t+=oe.encode.bytes,oe.encode(r.regexp,e,t),t+=oe.encode.bytes,z.encode(r.replacement,e,t),t+=z.encode.bytes,en.encode.bytes=t-n,e.writeUInt16BE(en.encode.bytes-2,n),e};en.encode.bytes=0;en.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.order=r.readUInt16BE(e),e+=2,n.preference=r.readUInt16BE(e),e+=2,n.flags=oe.decode(r,e),e+=oe.decode.bytes,n.services=oe.decode(r,e),e+=oe.decode.bytes,n.regexp=oe.decode(r,e),e+=oe.decode.bytes,n.replacement=z.decode(r,e),e+=z.decode.bytes,en.decode.bytes=e-t,n};en.decode.bytes=0;en.encodingLength=function(r){return oe.encodingLength(r.flags)+oe.encodingLength(r.services)+oe.encodingLength(r.regexp)+z.encodingLength(r.replacement)+6};var tn=G.tlsa={};tn.encode=function(r,e,t){e||(e=W.alloc(tn.encodingLength(r))),t||(t=0);let n=t,i=r.certificate;if(!W.isBuffer(i))throw new Error("Certificate must be a Buffer");return t+=2,e.writeUInt8(r.usage,t),t+=1,e.writeUInt8(r.selector,t),t+=1,e.writeUInt8(r.matchingType,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,tn.encode.bytes=t-n,e.writeUInt16BE(tn.encode.bytes-2,n),e};tn.encode.bytes=0;tn.decode=function(r,e){e||(e=0);let t=e,n={},i=r.readUInt16BE(e);return e+=2,n.usage=r.readUInt8(e),e+=1,n.selector=r.readUInt8(e),e+=1,n.matchingType=r.readUInt8(e),e+=1,n.certificate=r.slice(e,t+i+2),e+=n.certificate.length,tn.decode.bytes=e-t,n};tn.decode.bytes=0;tn.encodingLength=function(r){return 5+W.byteLength(r.certificate)};var vg=G.record=function(r){switch(r.toUpperCase()){case"A":return Hn;case"PTR":return Br;case"CNAME":return tN;case"DNAME":return rN;case"TXT":return Vn;case"NULL":return Mn;case"AAAA":return qn;case"SRV":return $n;case"HINFO":return jn;case"CAA":return Wt;case"NS":return Fn;case"SOA":return zn;case"MX":return Di;case"OPT":return Xt;case"DNSKEY":return At;case"RRSIG":return Yr;case"RP":return Xr;case"NSEC":return Jr;case"NSEC3":return Zr;case"SSHFP":return Yt;case"DS":return Qr;case"NAPTR":return en;case"TLSA":return tn}return On},ct=G.answer={};ct.encode=function(r,e,t){e||(e=W.alloc(ct.encodingLength(r))),t||(t=0);let n=t;if(z.encode(r.name,e,t),t+=z.encode.bytes,e.writeUInt16BE(Kn.toType(r.type),t),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw new Error("OPT name must be root.");e.writeUInt16BE(r.udpPayloadSize||4096,t+2),e.writeUInt8(r.extendedRcode||0,t+4),e.writeUInt8(r.ednsVersion||0,t+5),e.writeUInt16BE(r.flags||0,t+6),t+=8,Xt.encode(r.options||[],e,t),t+=Xt.encode.bytes}else{let i=Np.toClass(r.class===void 0?"IN":r.class);r.flush&&(i|=bg),e.writeUInt16BE(i,t+2),e.writeUInt32BE(r.ttl||0,t+4),t+=8;let o=vg(r.type);o.encode(r.data,e,t),t+=o.encode.bytes}return ct.encode.bytes=t-n,e};ct.encode.bytes=0;ct.decode=function(r,e){e||(e=0);let t={},n=e;if(t.name=z.decode(r,e),e+=z.decode.bytes,t.type=Kn.toString(r.readUInt16BE(e)),t.type==="OPT")t.udpPayloadSize=r.readUInt16BE(e+2),t.extendedRcode=r.readUInt8(e+4),t.ednsVersion=r.readUInt8(e+5),t.flags=r.readUInt16BE(e+6),t.flag_do=(t.flags>>15&1)===1,t.options=Xt.decode(r,e+8),e+=8+Xt.decode.bytes;else{let i=r.readUInt16BE(e+2);t.ttl=r.readUInt32BE(e+4),t.class=Np.toString(i&QU),t.flush=!!(i&bg);let o=vg(t.type);t.data=o.decode(r,e+8),e+=8+o.decode.bytes}return ct.decode.bytes=e-n,t};ct.decode.bytes=0;ct.encodingLength=function(r){let e=r.data!==null&&r.data!==void 0?r.data:r.options;return z.encodingLength(r.name)+8+vg(r.type).encodingLength(e)};var kr=G.question={};kr.encode=function(r,e,t){e||(e=W.alloc(kr.encodingLength(r))),t||(t=0);let n=t;return z.encode(r.name,e,t),t+=z.encode.bytes,e.writeUInt16BE(Kn.toType(r.type),t),t+=2,e.writeUInt16BE(Np.toClass(r.class===void 0?"IN":r.class),t),t+=2,kr.encode.bytes=t-n,r};kr.encode.bytes=0;kr.decode=function(r,e){e||(e=0);let t=e,n={};return n.name=z.decode(r,e),e+=z.decode.bytes,n.type=Kn.toString(r.readUInt16BE(e)),e+=2,n.class=Np.toString(r.readUInt16BE(e)),e+=2,!!(n.class&_3)&&(n.class&=eN),kr.decode.bytes=e-t,n};kr.decode.bytes=0;kr.encodingLength=function(r){return z.encodingLength(r.name)+4};G.AUTHORITATIVE_ANSWER=1024;G.TRUNCATED_RESPONSE=512;G.RECURSION_DESIRED=256;G.RECURSION_AVAILABLE=128;G.AUTHENTIC_DATA=32;G.CHECKING_DISABLED=16;G.DNSSEC_OK=32768;G.encode=function(r,e,t){let n=!e;n&&(e=W.alloc(G.encodingLength(r))),t||(t=0);let i=t;return r.questions||(r.questions=[]),r.answers||(r.answers=[]),r.authorities||(r.authorities=[]),r.additionals||(r.additionals=[]),Ir.encode(r,e,t),t+=Ir.encode.bytes,t=Tc(r.questions,kr,e,t),t=Tc(r.answers,ct,e,t),t=Tc(r.authorities,ct,e,t),t=Tc(r.additionals,ct,e,t),G.encode.bytes=t-i,n&&G.encode.bytes!==e.length?e.slice(0,G.encode.bytes):e};G.encode.bytes=0;G.decode=function(r,e){e||(e=0);let t=e,n=Ir.decode(r,e);return e+=Ir.decode.bytes,e=Up(n.questions,kr,r,e),e=Up(n.answers,ct,r,e),e=Up(n.authorities,ct,r,e),e=Up(n.additionals,ct,r,e),G.decode.bytes=e-t,n};G.decode.bytes=0;G.encodingLength=function(r){return Ir.encodingLength(r)+Hs(r.questions||[],kr)+Hs(r.answers||[],ct)+Hs(r.authorities||[],ct)+Hs(r.additionals||[],ct)};G.streamEncode=function(r){let e=G.encode(r),t=W.alloc(2);t.writeUInt16BE(e.byteLength);let n=W.concat([t,e]);return G.streamEncode.bytes=n.byteLength,n};G.streamEncode.bytes=0;G.streamDecode=function(r){let e=r.readUInt16BE(0);if(r.byteLength<e+2)return null;let t=G.decode(r.slice(2));return G.streamDecode.bytes=G.decode.bytes,t};G.streamDecode.bytes=0;function Hs(r,e){let t=0;for(let n=0;n<r.length;n++)t+=e.encodingLength(r[n]);return t}function Tc(r,e,t,n){for(let i=0;i<r.length;i++)e.encode(r[i],t,n),n+=e.encode.bytes;return n}function Up(r,e,t,n){for(let i=0;i<r.length;i++)r[i]=e.decode(t,n),n+=e.decode.bytes;return n}});var M3=re((Pc,Pp)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(d){if(!Array.isArray(d)&&!ArrayBuffer.isView(d))return!1;for(var f=0;f<d.length;f++)if(!Number.isInteger(d[f])||d[f]<0||d[f]>255)return!1;return!0}function i(d,f){return(d&65535)*f+(((d>>>16)*f&65535)<<16)}function o(d,f){return d<<f|d>>>32-f}function s(d){return d^=d>>>16,d=i(d,2246822507),d^=d>>>13,d=i(d,3266489909),d^=d>>>16,d}function a(d,f){d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535],f=[f[0]>>>16,f[0]&65535,f[1]>>>16,f[1]&65535];var h=[0,0,0,0];return h[3]+=d[3]+f[3],h[2]+=h[3]>>>16,h[3]&=65535,h[2]+=d[2]+f[2],h[1]+=h[2]>>>16,h[2]&=65535,h[1]+=d[1]+f[1],h[0]+=h[1]>>>16,h[1]&=65535,h[0]+=d[0]+f[0],h[0]&=65535,[h[0]<<16|h[1],h[2]<<16|h[3]]}function c(d,f){d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535],f=[f[0]>>>16,f[0]&65535,f[1]>>>16,f[1]&65535];var h=[0,0,0,0];return h[3]+=d[3]*f[3],h[2]+=h[3]>>>16,h[3]&=65535,h[2]+=d[2]*f[3],h[1]+=h[2]>>>16,h[2]&=65535,h[2]+=d[3]*f[2],h[1]+=h[2]>>>16,h[2]&=65535,h[1]+=d[1]*f[3],h[0]+=h[1]>>>16,h[1]&=65535,h[1]+=d[2]*f[2],h[0]+=h[1]>>>16,h[1]&=65535,h[1]+=d[3]*f[1],h[0]+=h[1]>>>16,h[1]&=65535,h[0]+=d[0]*f[3]+d[1]*f[2]+d[2]*f[1]+d[3]*f[0],h[0]&=65535,[h[0]<<16|h[1],h[2]<<16|h[3]]}function u(d,f){return f%=64,f===32?[d[1],d[0]]:f<32?[d[0]<<f|d[1]>>>32-f,d[1]<<f|d[0]>>>32-f]:(f-=32,[d[1]<<f|d[0]>>>32-f,d[0]<<f|d[1]>>>32-f])}function l(d,f){return f%=64,f===0?d:f<32?[d[0]<<f|d[1]>>>32-f,d[1]<<f]:[d[1]<<f-32,0]}function p(d,f){return[d[0]^f[0],d[1]^f[1]]}function m(d){return d=p(d,[0,d[0]>>>1]),d=c(d,[4283543511,3981806797]),d=p(d,[0,d[0]>>>1]),d=c(d,[3301882366,444984403]),d=p(d,[0,d[0]>>>1]),d}t.x86.hash32=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var h=d.length%4,x=d.length-h,g=f,y=0,w=3432918353,E=461845907,B=0;B<x;B=B+4)y=d[B]|d[B+1]<<8|d[B+2]<<16|d[B+3]<<24,y=i(y,w),y=o(y,15),y=i(y,E),g^=y,g=o(g,13),g=i(g,5)+3864292196;switch(y=0,h){case 3:y^=d[B+2]<<16;case 2:y^=d[B+1]<<8;case 1:y^=d[B],y=i(y,w),y=o(y,15),y=i(y,E),g^=y}return g^=d.length,g=s(g),g>>>0},t.x86.hash128=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var h=d.length%16,x=d.length-h,g=f,y=f,w=f,E=f,B=0,S=0,b=0,v=0,k=597399067,U=2869860233,R=951274213,M=2716044179,L=0;L<x;L=L+16)B=d[L]|d[L+1]<<8|d[L+2]<<16|d[L+3]<<24,S=d[L+4]|d[L+5]<<8|d[L+6]<<16|d[L+7]<<24,b=d[L+8]|d[L+9]<<8|d[L+10]<<16|d[L+11]<<24,v=d[L+12]|d[L+13]<<8|d[L+14]<<16|d[L+15]<<24,B=i(B,k),B=o(B,15),B=i(B,U),g^=B,g=o(g,19),g+=y,g=i(g,5)+1444728091,S=i(S,U),S=o(S,16),S=i(S,R),y^=S,y=o(y,17),y+=w,y=i(y,5)+197830471,b=i(b,R),b=o(b,17),b=i(b,M),w^=b,w=o(w,15),w+=E,w=i(w,5)+2530024501,v=i(v,M),v=o(v,18),v=i(v,k),E^=v,E=o(E,13),E+=g,E=i(E,5)+850148119;switch(B=0,S=0,b=0,v=0,h){case 15:v^=d[L+14]<<16;case 14:v^=d[L+13]<<8;case 13:v^=d[L+12],v=i(v,M),v=o(v,18),v=i(v,k),E^=v;case 12:b^=d[L+11]<<24;case 11:b^=d[L+10]<<16;case 10:b^=d[L+9]<<8;case 9:b^=d[L+8],b=i(b,R),b=o(b,17),b=i(b,M),w^=b;case 8:S^=d[L+7]<<24;case 7:S^=d[L+6]<<16;case 6:S^=d[L+5]<<8;case 5:S^=d[L+4],S=i(S,U),S=o(S,16),S=i(S,R),y^=S;case 4:B^=d[L+3]<<24;case 3:B^=d[L+2]<<16;case 2:B^=d[L+1]<<8;case 1:B^=d[L],B=i(B,k),B=o(B,15),B=i(B,U),g^=B}return g^=d.length,y^=d.length,w^=d.length,E^=d.length,g+=y,g+=w,g+=E,y+=g,w+=g,E+=g,g=s(g),y=s(y),w=s(w),E=s(E),g+=y,g+=w,g+=E,y+=g,w+=g,E+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(y>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(E>>>0).toString(16)).slice(-8)},t.x64.hash128=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var h=d.length%16,x=d.length-h,g=[0,f],y=[0,f],w=[0,0],E=[0,0],B=[2277735313,289559509],S=[1291169091,658871167],b=0;b<x;b=b+16)w=[d[b+4]|d[b+5]<<8|d[b+6]<<16|d[b+7]<<24,d[b]|d[b+1]<<8|d[b+2]<<16|d[b+3]<<24],E=[d[b+12]|d[b+13]<<8|d[b+14]<<16|d[b+15]<<24,d[b+8]|d[b+9]<<8|d[b+10]<<16|d[b+11]<<24],w=c(w,B),w=u(w,31),w=c(w,S),g=p(g,w),g=u(g,27),g=a(g,y),g=a(c(g,[0,5]),[0,1390208809]),E=c(E,S),E=u(E,33),E=c(E,B),y=p(y,E),y=u(y,31),y=a(y,g),y=a(c(y,[0,5]),[0,944331445]);switch(w=[0,0],E=[0,0],h){case 15:E=p(E,l([0,d[b+14]],48));case 14:E=p(E,l([0,d[b+13]],40));case 13:E=p(E,l([0,d[b+12]],32));case 12:E=p(E,l([0,d[b+11]],24));case 11:E=p(E,l([0,d[b+10]],16));case 10:E=p(E,l([0,d[b+9]],8));case 9:E=p(E,[0,d[b+8]]),E=c(E,S),E=u(E,33),E=c(E,B),y=p(y,E);case 8:w=p(w,l([0,d[b+7]],56));case 7:w=p(w,l([0,d[b+6]],48));case 6:w=p(w,l([0,d[b+5]],40));case 5:w=p(w,l([0,d[b+4]],32));case 4:w=p(w,l([0,d[b+3]],24));case 3:w=p(w,l([0,d[b+2]],16));case 2:w=p(w,l([0,d[b+1]],8));case 1:w=p(w,[0,d[b]]),w=c(w,B),w=u(w,31),w=c(w,S),g=p(g,w)}return g=p(g,[0,d.length]),y=p(y,[0,d.length]),g=a(g,y),y=a(y,g),g=m(g),y=m(y),g=a(g,y),y=a(y,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(y[0]>>>0).toString(16)).slice(-8)+("00000000"+(y[1]>>>0).toString(16)).slice(-8)},typeof Pc<"u"?(typeof Pp<"u"&&Pp.exports&&(Pc=Pp.exports=t),Pc.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(Pc)});var $3=re((SQ,j3)=>{j3.exports=M3()});var Fp=re((RQ,q3)=>{"use strict";q3.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(yN,0),c=~(4294967295<<o+1),u=H3(i&c);return a+u-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(wN),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,t),u=~(255<<c),l=o&u;i|=l<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(bN)}};function yN(r,e){return r+H3(e)}function H3(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function wN(r,e){return r[0]-e[0]}function bN(r){return r[1]}});var C6=re((ote,T6)=>{var Zg=class{constructor(e,t=12,n=8*1024,i=32*1024,o=64,s){this.bits=t,this.min=n,this.max=i,this.asModule=e,this.rabin=new e.Rabin(t,n,i,o,s),this.polynomial=s}fingerprint(e){let{__retain:t,__release:n,__allocArray:i,__getInt32Array:o,Int32Array_ID:s,Uint8Array_ID:a}=this.asModule,c=new Int32Array(Math.ceil(e.length/this.min)),u=t(i(s,c)),l=t(i(a,e)),p=this.rabin.fingerprint(l,u),m=o(p);n(l),n(u);let d=m.indexOf(0);return d>=0?m.subarray(0,d):m}};T6.exports=Zg});var P6=re($c=>{"use strict";var MD=typeof BigUint64Array<"u",Mc=Symbol(),jc=1024;function R6(r,e){let t=new Uint32Array(r),n=new Uint16Array(r);var i=t[e+-4>>>2]>>>1,o=e>>>1;if(i<=jc)return String.fromCharCode.apply(String,n.subarray(o,o+i));let s=[];do{let a=n[o+jc-1],c=a>=55296&&a<56320?jc-1:jc;s.push(String.fromCharCode.apply(String,n.subarray(o,o+=c))),i-=c}while(i>jc);return s.join("")+String.fromCharCode.apply(String,n.subarray(o,o+i))}function Qg(r){let e={};function t(i,o){return i?R6(i.buffer,o):"<yet unknown>"}let n=r.env=r.env||{};return n.abort=n.abort||function(o,s,a,c){let u=e.memory||n.memory;throw Error("abort: "+t(u,o)+" at "+t(u,s)+":"+a+":"+c)},n.trace=n.trace||function(o,s){let a=e.memory||n.memory;console.log("trace: "+t(a,o)+(s?" ":"")+Array.prototype.slice.call(arguments,2,2+s).join(", "))},r.Math=r.Math||Math,r.Date=r.Date||Date,e}function ex(r,e){let t=e.exports,n=t.memory,i=t.table,o=t.__alloc,s=t.__retain,a=t.__rtti_base||-1;function c(S){let b=new Uint32Array(n.buffer),v=b[a>>>2];if((S>>>=0)>=v)throw Error("invalid id: "+S);return b[(a+4>>>2)+S*2]}function u(S){let b=new Uint32Array(n.buffer),v=b[a>>>2];if((S>>>=0)>=v)throw Error("invalid id: "+S);return b[(a+4>>>2)+S*2+1]}function l(S){return 31-Math.clz32(S>>>5&31)}function p(S){return 31-Math.clz32(S>>>14&31)}function m(S){let b=S.length,v=o(b<<1,1),k=new Uint16Array(n.buffer);for(var U=0,R=v>>>1;U<b;++U)k[R+U]=S.charCodeAt(U);return v}r.__allocString=m;function d(S){let b=n.buffer;if(new Uint32Array(b)[S+-8>>>2]!==1)throw Error("not a string: "+S);return R6(b,S)}r.__getString=d;function f(S,b,v){let k=n.buffer;if(v)switch(S){case 2:return new Float32Array(k);case 3:return new Float64Array(k)}else switch(S){case 0:return new(b?Int8Array:Uint8Array)(k);case 1:return new(b?Int16Array:Uint16Array)(k);case 2:return new(b?Int32Array:Uint32Array)(k);case 3:return new(b?BigInt64Array:BigUint64Array)(k)}throw Error("unsupported align: "+S)}function h(S,b){let v=c(S);if(!(v&3))throw Error("not an array: "+S+" @ "+v);let k=l(v),U=b.length,R=o(U<<k,0),M=o(v&2?16:12,S),L=new Uint32Array(n.buffer);L[M+0>>>2]=s(R),L[M+4>>>2]=R,L[M+8>>>2]=U<<k,v&2&&(L[M+12>>>2]=U);let ce=f(k,v&1024,v&2048);if(v&8192)for(let _=0;_<U;++_)ce[(R>>>k)+_]=s(b[_]);else ce.set(b,R>>>k);return M}r.__allocArray=h;function x(S){let b=new Uint32Array(n.buffer),v=b[S+-8>>>2],k=c(v);if(!(k&1))throw Error("not an array: "+v);let U=l(k);var R=b[S+4>>>2];let M=k&2?b[S+12>>>2]:b[R+-4>>>2]>>>U;return f(U,k&1024,k&2048).subarray(R>>>=U,R+M)}r.__getArrayView=x;function g(S){let b=x(S),v=b.length,k=new Array(v);for(let U=0;U<v;U++)k[U]=b[U];return k}r.__getArray=g;function y(S){let b=n.buffer,v=new Uint32Array(b)[S+-4>>>2];return b.slice(S,S+v)}r.__getArrayBuffer=y;function w(S,b,v){return new S(E(S,b,v))}function E(S,b,v){let k=n.buffer,U=new Uint32Array(k),R=U[v+4>>>2];return new S(k,R,U[R+-4>>>2]>>>b)}r.__getInt8Array=w.bind(null,Int8Array,0),r.__getInt8ArrayView=E.bind(null,Int8Array,0),r.__getUint8Array=w.bind(null,Uint8Array,0),r.__getUint8ArrayView=E.bind(null,Uint8Array,0),r.__getUint8ClampedArray=w.bind(null,Uint8ClampedArray,0),r.__getUint8ClampedArrayView=E.bind(null,Uint8ClampedArray,0),r.__getInt16Array=w.bind(null,Int16Array,1),r.__getInt16ArrayView=E.bind(null,Int16Array,1),r.__getUint16Array=w.bind(null,Uint16Array,1),r.__getUint16ArrayView=E.bind(null,Uint16Array,1),r.__getInt32Array=w.bind(null,Int32Array,2),r.__getInt32ArrayView=E.bind(null,Int32Array,2),r.__getUint32Array=w.bind(null,Uint32Array,2),r.__getUint32ArrayView=E.bind(null,Uint32Array,2),MD&&(r.__getInt64Array=w.bind(null,BigInt64Array,3),r.__getInt64ArrayView=E.bind(null,BigInt64Array,3),r.__getUint64Array=w.bind(null,BigUint64Array,3),r.__getUint64ArrayView=E.bind(null,BigUint64Array,3)),r.__getFloat32Array=w.bind(null,Float32Array,2),r.__getFloat32ArrayView=E.bind(null,Float32Array,2),r.__getFloat64Array=w.bind(null,Float64Array,3),r.__getFloat64ArrayView=E.bind(null,Float64Array,3);function B(S,b){let v=new Uint32Array(n.buffer);var k=v[S+-8>>>2];if(k<=v[a>>>2])do if(k==b)return!0;while(k=u(k));return!1}return r.__instanceof=B,r.memory=r.memory||n,r.table=r.table||i,L6(t,r)}function U6(r){return typeof Response<"u"&&r instanceof Response}async function N6(r,e){return U6(r=await r)?D6(r,e):ex(Qg(e||(e={})),await WebAssembly.instantiate(r instanceof WebAssembly.Module?r:await WebAssembly.compile(r),e))}$c.instantiate=N6;function jD(r,e){return ex(Qg(e||(e={})),new WebAssembly.Instance(r instanceof WebAssembly.Module?r:new WebAssembly.Module(r),e))}$c.instantiateSync=jD;async function D6(r,e){return WebAssembly.instantiateStreaming?ex(Qg(e||(e={})),(await WebAssembly.instantiateStreaming(r,e)).instance):N6(U6(r=await r)?r.arrayBuffer():r,e)}$c.instantiateStreaming=D6;function L6(r,e){var t=e?Object.create(e):{},n=r.__argumentsLength?function(i){r.__argumentsLength.value=i}:r.__setArgumentsLength||r.__setargc||function(){};for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let o=r[i],s=i.split("."),a=t;for(;s.length>1;){let l=s.shift();Object.prototype.hasOwnProperty.call(a,l)||(a[l]={}),a=a[l]}let c=s[0],u=c.indexOf("#");if(u>=0){let l=c.substring(0,u),p=a[l];if(typeof p>"u"||!p.prototype){let m=function(...d){return m.wrap(m.prototype.constructor(0,...d))};m.prototype={valueOf:function(){return this[Mc]}},m.wrap=function(d){return Object.create(m.prototype,{[Mc]:{value:d,writable:!1}})},p&&Object.getOwnPropertyNames(p).forEach(d=>Object.defineProperty(m,d,Object.getOwnPropertyDescriptor(p,d))),a[l]=m}if(c=c.substring(u+1),a=a[l].prototype,/^(get|set):/.test(c)){if(!Object.prototype.hasOwnProperty.call(a,c=c.substring(4))){let m=r[i.replace("set:","get:")],d=r[i.replace("get:","set:")];Object.defineProperty(a,c,{get:function(){return m(this[Mc])},set:function(f){d(this[Mc],f)},enumerable:!0})}}else c==="constructor"?(a[c]=(...m)=>(n(m.length),o(...m))).original=o:(a[c]=function(...m){return n(m.length),o(this[Mc],...m)}).original=o}else/^(get|set):/.test(c)?Object.prototype.hasOwnProperty.call(a,c=c.substring(4))||Object.defineProperty(a,c,{get:r[i.replace("set:","get:")],set:r[i.replace("get:","set:")],enumerable:!0}):typeof o=="function"&&o!==n?(a[c]=(...l)=>(n(l.length),o(...l))).original=o:a[c]=o}return t}$c.demangle=L6});var F6=re((ate,O6)=>{var{instantiate:$D}=P6();tx.supported=typeof WebAssembly<"u";function tx(r={}){if(!tx.supported)return null;var e=new Uint8Array([0,97,115,109,1,0,0,0,1,78,14,96,2,127,126,0,96,1,127,1,126,96,2,127,127,0,96,1,127,1,127,96,1,127,0,96,2,127,127,1,127,96,3,127,127,127,1,127,96,0,0,96,3,127,127,127,0,96,0,1,127,96,4,127,127,127,127,0,96,5,127,127,127,127,127,1,127,96,1,126,1,127,96,2,126,126,1,126,2,13,1,3,101,110,118,5,97,98,111,114,116,0,10,3,54,53,2,2,8,9,3,5,2,8,6,5,3,4,2,6,9,12,13,2,5,11,3,2,3,2,3,2,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,6,7,7,4,4,5,3,1,0,1,6,47,9,127,1,65,0,11,127,1,65,0,11,127,0,65,3,11,127,0,65,4,11,127,1,65,0,11,127,1,65,0,11,127,1,65,0,11,127,0,65,240,2,11,127,0,65,6,11,7,240,5,41,6,109,101,109,111,114,121,2,0,7,95,95,97,108,108,111,99,0,10,8,95,95,114,101,116,97,105,110,0,11,9,95,95,114,101,108,101,97,115,101,0,12,9,95,95,99,111,108,108,101,99,116,0,51,11,95,95,114,116,116,105,95,98,97,115,101,3,7,13,73,110,116,51,50,65,114,114,97,121,95,73,68,3,2,13,85,105,110,116,56,65,114,114,97,121,95,73,68,3,3,6,100,101,103,114,101,101,0,16,3,109,111,100,0,17,5,82,97,98,105,110,3,8,16,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,0,21,16,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,0,22,21,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,23,21,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,24,14,82,97,98,105,110,35,103,101,116,58,119,112,111,115,0,25,14,82,97,98,105,110,35,115,101,116,58,119,112,111,115,0,26,15,82,97,98,105,110,35,103,101,116,58,99,111,117,110,116,0,27,15,82,97,98,105,110,35,115,101,116,58,99,111,117,110,116,0,28,13,82,97,98,105,110,35,103,101,116,58,112,111,115,0,29,13,82,97,98,105,110,35,115,101,116,58,112,111,115,0,30,15,82,97,98,105,110,35,103,101,116,58,115,116,97,114,116,0,31,15,82,97,98,105,110,35,115,101,116,58,115,116,97,114,116,0,32,16,82,97,98,105,110,35,103,101,116,58,100,105,103,101,115,116,0,33,16,82,97,98,105,110,35,115,101,116,58,100,105,103,101,115,116,0,34,21,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,35,21,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,36,22,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,37,22,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,38,31,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,39,31,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,40,20,82,97,98,105,110,35,103,101,116,58,112,111,108,121,110,111,109,105,97,108,0,41,20,82,97,98,105,110,35,115,101,116,58,112,111,108,121,110,111,109,105,97,108,0,42,17,82,97,98,105,110,35,103,101,116,58,109,105,110,115,105,122,101,0,43,17,82,97,98,105,110,35,115,101,116,58,109,105,110,115,105,122,101,0,44,17,82,97,98,105,110,35,103,101,116,58,109,97,120,115,105,122,101,0,45,17,82,97,98,105,110,35,115,101,116,58,109,97,120,115,105,122,101,0,46,14,82,97,98,105,110,35,103,101,116,58,109,97,115,107,0,47,14,82,97,98,105,110,35,115,101,116,58,109,97,115,107,0,48,17,82,97,98,105,110,35,99,111,110,115,116,114,117,99,116,111,114,0,20,17,82,97,98,105,110,35,102,105,110,103,101,114,112,114,105,110,116,0,49,8,1,50,10,165,31,53,199,1,1,4,127,32,1,40,2,0,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,3,65,4,107,118,65,16,115,33,4,32,3,65,7,107,11,33,3,32,1,40,2,20,33,2,32,1,40,2,16,34,5,4,64,32,5,32,2,54,2,20,11,32,2,4,64,32,2,32,5,54,2,16,11,32,1,32,0,32,4,32,3,65,4,116,106,65,2,116,106,40,2,96,70,4,64,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,2,54,2,96,32,2,69,4,64,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,65,127,115,113,34,1,54,2,4,32,1,69,4,64,32,0,32,0,40,2,0,65,1,32,3,116,65,127,115,113,54,2,0,11,11,11,11,226,2,1,6,127,32,1,40,2,0,33,3,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,34,5,65,1,113,4,64,32,3,65,124,113,65,16,106,32,5,65,124,113,106,34,2,65,240,255,255,255,3,73,4,64,32,0,32,4,16,1,32,1,32,2,32,3,65,3,113,114,34,3,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,33,5,11,11,32,3,65,2,113,4,64,32,1,65,4,107,40,2,0,34,2,40,2,0,34,6,65,124,113,65,16,106,32,3,65,124,113,106,34,7,65,240,255,255,255,3,73,4,64,32,0,32,2,16,1,32,2,32,7,32,6,65,3,113,114,34,3,54,2,0,32,2,33,1,11,11,32,4,32,5,65,2,114,54,2,0,32,4,65,4,107,32,1,54,2,0,32,0,32,3,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,2,65,4,107,118,65,16,115,33,4,32,2,65,7,107,11,34,3,65,4,116,32,4,106,65,2,116,106,40,2,96,33,2,32,1,65,0,54,2,16,32,1,32,2,54,2,20,32,2,4,64,32,2,32,1,54,2,16,11,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,1,54,2,96,32,0,32,0,40,2,0,65,1,32,3,116,114,54,2,0,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,114,54,2,4,11,119,1,1,127,32,2,2,127,32,0,40,2,160,12,34,2,4,64,32,2,32,1,65,16,107,70,4,64,32,2,40,2,0,33,3,32,1,65,16,107,33,1,11,11,32,1,11,107,34,2,65,48,73,4,64,15,11,32,1,32,3,65,2,113,32,2,65,32,107,65,1,114,114,54,2,0,32,1,65,0,54,2,16,32,1,65,0,54,2,20,32,1,32,2,106,65,16,107,34,2,65,2,54,2,0,32,0,32,2,54,2,160,12,32,0,32,1,16,2,11,155,1,1,3,127,35,0,34,0,69,4,64,65,1,63,0,34,0,74,4,127,65,1,32,0,107,64,0,65,0,72,5,65,0,11,4,64,0,11,65,176,3,34,0,65,0,54,2,0,65,208,15,65,0,54,2,0,3,64,32,1,65,23,73,4,64,32,1,65,2,116,65,176,3,106,65,0,54,2,4,65,0,33,2,3,64,32,2,65,16,73,4,64,32,1,65,4,116,32,2,106,65,2,116,65,176,3,106,65,0,54,2,96,32,2,65,1,106,33,2,12,1,11,11,32,1,65,1,106,33,1,12,1,11,11,65,176,3,65,224,15,63,0,65,16,116,16,3,65,176,3,36,0,11,32,0,11,45,0,32,0,65,240,255,255,255,3,79,4,64,65,32,65,224,0,65,201,3,65,29,16,0,0,11,32,0,65,15,106,65,112,113,34,0,65,16,32,0,65,16,75,27,11,169,1,1,1,127,32,0,32,1,65,128,2,73,4,127,32,1,65,4,118,33,1,65,0,5,32,1,65,248,255,255,255,1,73,4,64,32,1,65,1,65,27,32,1,103,107,116,106,65,1,107,33,1,11,32,1,65,31,32,1,103,107,34,2,65,4,107,118,65,16,115,33,1,32,2,65,7,107,11,34,2,65,2,116,106,40,2,4,65,127,32,1,116,113,34,1,4,127,32,0,32,1,104,32,2,65,4,116,106,65,2,116,106,40,2,96,5,32,0,40,2,0,65,127,32,2,65,1,106,116,113,34,1,4,127,32,0,32,0,32,1,104,34,0,65,2,116,106,40,2,4,104,32,0,65,4,116,106,65,2,116,106,40,2,96,5,65,0,11,11,11,111,1,1,127,63,0,34,2,32,1,65,248,255,255,255,1,73,4,127,32,1,65,1,65,27,32,1,103,107,116,65,1,107,106,5,32,1,11,65,16,32,0,40,2,160,12,32,2,65,16,116,65,16,107,71,116,106,65,255,255,3,106,65,128,128,124,113,65,16,118,34,1,32,2,32,1,74,27,64,0,65,0,72,4,64,32,1,64,0,65,0,72,4,64,0,11,11,32,0,32,2,65,16,116,63,0,65,16,116,16,3,11,113,1,2,127,32,1,40,2,0,34,3,65,124,113,32,2,107,34,4,65,32,79,4,64,32,1,32,2,32,3,65,2,113,114,54,2,0,32,2,32,1,65,16,106,106,34,1,32,4,65,16,107,65,1,114,54,2,0,32,0,32,1,16,2,5,32,1,32,3,65,126,113,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,32,1,65,16,106,32,1,40,2,0,65,124,113,106,40,2,0,65,125,113,54,2,0,11,11,91,1,2,127,32,0,32,1,16,5,34,4,16,6,34,3,69,4,64,65,1,36,1,65,0,36,1,32,0,32,4,16,6,34,3,69,4,64,32,0,32,4,16,7,32,0,32,4,16,6,33,3,11,11,32,3,65,0,54,2,4,32,3,32,2,54,2,8,32,3,32,1,54,2,12,32,0,32,3,16,1,32,0,32,3,32,4,16,8,32,3,11,13,0,16,4,32,0,32,1,16,9,65,16,106,11,33,1,1,127,32,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,18,0,32,0,65,172,3,75,4,64,32,0,65,16,107,16,52,11,11,140,3,1,1,127,2,64,32,1,69,13,0,32,0,65,0,58,0,0,32,0,32,1,106,65,1,107,65,0,58,0,0,32,1,65,2,77,13,0,32,0,65,1,106,65,0,58,0,0,32,0,65,2,106,65,0,58,0,0,32,0,32,1,106,34,2,65,2,107,65,0,58,0,0,32,2,65,3,107,65,0,58,0,0,32,1,65,6,77,13,0,32,0,65,3,106,65,0,58,0,0,32,0,32,1,106,65,4,107,65,0,58,0,0,32,1,65,8,77,13,0,32,1,65,0,32,0,107,65,3,113,34,1,107,33,2,32,0,32,1,106,34,0,65,0,54,2,0,32,0,32,2,65,124,113,34,1,106,65,4,107,65,0,54,2,0,32,1,65,8,77,13,0,32,0,65,4,106,65,0,54,2,0,32,0,65,8,106,65,0,54,2,0,32,0,32,1,106,34,2,65,12,107,65,0,54,2,0,32,2,65,8,107,65,0,54,2,0,32,1,65,24,77,13,0,32,0,65,12,106,65,0,54,2,0,32,0,65,16,106,65,0,54,2,0,32,0,65,20,106,65,0,54,2,0,32,0,65,24,106,65,0,54,2,0,32,0,32,1,106,34,2,65,28,107,65,0,54,2,0,32,2,65,24,107,65,0,54,2,0,32,2,65,20,107,65,0,54,2,0,32,2,65,16,107,65,0,54,2,0,32,0,32,0,65,4,113,65,24,106,34,2,106,33,0,32,1,32,2,107,33,1,3,64,32,1,65,32,79,4,64,32,0,66,0,55,3,0,32,0,65,8,106,66,0,55,3,0,32,0,65,16,106,66,0,55,3,0,32,0,65,24,106,66,0,55,3,0,32,1,65,32,107,33,1,32,0,65,32,106,33,0,12,1,11,11,11,11,178,1,1,3,127,32,1,65,240,255,255,255,3,32,2,118,75,4,64,65,144,1,65,192,1,65,23,65,56,16,0,0,11,32,1,32,2,116,34,3,65,0,16,10,34,2,32,3,16,13,32,0,69,4,64,65,12,65,2,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,2,34,1,32,0,40,2,0,34,4,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,32,4,16,12,11,32,0,32,1,54,2,0,32,0,32,2,54,2,4,32,0,32,3,54,2,8,32,0,11,46,1,2,127,65,12,65,5,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,65,128,2,65,3,16,14,11,9,0,65,63,32,0,121,167,107,11,49,1,2,127,65,63,32,1,121,167,107,33,2,3,64,65,63,32,0,121,167,107,32,2,107,34,3,65,0,78,4,64,32,0,32,1,32,3,172,134,133,33,0,12,1,11,11,32,0,11,40,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,163,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,65,0,58,0,0,11,38,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,152,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,45,0,0,11,254,5,2,1,127,4,126,32,0,69,4,64,65,232,0,65,6,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,24,32,0,66,0,55,3,32,32,0,66,0,55,3,40,32,0,66,0,55,3,48,32,0,66,0,55,3,56,32,0,66,0,55,3,64,32,0,66,0,55,3,72,32,0,66,0,55,3,80,32,0,66,0,55,3,88,32,0,66,0,55,3,96,32,0,32,2,173,55,3,80,32,0,32,3,173,55,3,88,65,12,65,4,16,10,34,2,65,172,3,75,4,64,32,2,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,32,4,65,0,16,14,33,2,32,0,40,2,0,16,12,32,0,32,2,54,2,0,32,0,32,4,54,2,4,32,0,66,1,32,1,173,134,66,1,125,55,3,96,32,0,66,243,130,183,218,216,230,232,30,55,3,72,35,4,69,4,64,65,0,33,2,3,64,32,2,65,128,2,72,4,64,32,2,65,255,1,113,173,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,65,0,33,4,3,64,32,4,32,0,40,2,4,65,1,107,72,4,64,32,6,66,8,134,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,32,4,65,1,106,33,4,12,1,11,11,35,6,40,2,4,32,2,65,3,116,106,32,6,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,63,32,0,41,3,72,121,167,107,172,33,7,65,0,33,2,3,64,32,2,65,128,2,72,4,64,35,5,33,1,32,2,172,32,7,134,34,8,33,6,65,63,32,0,41,3,72,34,9,121,167,107,33,3,3,64,65,63,32,6,121,167,107,32,3,107,34,4,65,0,78,4,64,32,6,32,9,32,4,172,134,133,33,6,12,1,11,11,32,1,40,2,4,32,2,65,3,116,106,32,6,32,8,132,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,1,36,4,11,32,0,66,0,55,3,24,32,0,66,0,55,3,32,65,0,33,2,3,64,32,2,32,0,40,2,4,72,4,64,32,0,40,2,0,32,2,16,18,32,2,65,1,106,33,2,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,6,66,45,136,167,65,3,116,106,41,3,0,32,6,66,8,134,66,1,132,133,55,3,40,32,0,11,38,1,1,127,32,0,40,2,0,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,55,1,2,127,32,1,32,0,40,2,0,34,2,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,16,12,11,32,0,32,1,54,2,0,11,7,0,32,0,40,2,4,11,9,0,32,0,32,1,54,2,4,11,7,0,32,0,40,2,8,11,9,0,32,0,32,1,54,2,8,11,7,0,32,0,41,3,16,11,9,0,32,0,32,1,55,3,16,11,7,0,32,0,41,3,24,11,9,0,32,0,32,1,55,3,24,11,7,0,32,0,41,3,32,11,9,0,32,0,32,1,55,3,32,11,7,0,32,0,41,3,40,11,9,0,32,0,32,1,55,3,40,11,7,0,32,0,41,3,48,11,9,0,32,0,32,1,55,3,48,11,7,0,32,0,41,3,56,11,9,0,32,0,32,1,55,3,56,11,7,0,32,0,41,3,64,11,9,0,32,0,32,1,55,3,64,11,7,0,32,0,41,3,72,11,9,0,32,0,32,1,55,3,72,11,7,0,32,0,41,3,80,11,9,0,32,0,32,1,55,3,80,11,7,0,32,0,41,3,88,11,9,0,32,0,32,1,55,3,88,11,7,0,32,0,41,3,96,11,9,0,32,0,32,1,55,3,96,11,172,4,2,5,127,1,126,32,2,65,172,3,75,4,64,32,2,65,16,107,34,4,32,4,40,2,4,65,1,106,54,2,4,11,32,2,33,4,65,0,33,2,32,1,40,2,8,33,5,32,1,40,2,4,33,6,3,64,2,127,65,0,33,3,3,64,32,3,32,5,72,4,64,32,3,32,6,106,45,0,0,33,1,32,0,40,2,0,32,0,40,2,8,16,19,33,7,32,0,40,2,8,32,0,40,2,0,40,2,4,106,32,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,7,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,1,173,32,8,66,8,134,132,133,55,3,40,32,0,32,0,41,3,16,66,1,124,55,3,16,32,0,32,0,41,3,24,66,1,124,55,3,24,32,0,41,3,16,32,0,41,3,80,90,4,127,32,0,41,3,40,32,0,41,3,96,131,80,5,65,0,11,4,127,65,1,5,32,0,41,3,16,32,0,41,3,88,90,11,4,64,32,0,32,0,41,3,32,55,3,48,32,0,32,0,41,3,16,55,3,56,32,0,32,0,41,3,40,55,3,64,65,0,33,1,3,64,32,1,32,0,40,2,4,72,4,64,32,0,40,2,0,32,1,16,18,32,1,65,1,106,33,1,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,8,66,8,134,66,1,132,133,55,3,40,32,3,65,1,106,12,3,11,32,3,65,1,106,33,3,12,1,11,11,65,127,11,34,1,65,0,78,4,64,32,5,32,1,107,33,5,32,1,32,6,106,33,6,32,2,34,1,65,1,106,33,2,32,4,40,2,4,32,1,65,2,116,106,32,0,41,3,56,62,2,0,12,1,11,11,32,4,11,10,0,16,15,36,5,16,15,36,6,11,3,0,1,11,73,1,2,127,32,0,40,2,4,34,1,65,255,255,255,255,0,113,34,2,65,1,70,4,64,32,0,65,16,106,16,53,32,0,32,0,40,2,0,65,1,114,54,2,0,35,0,32,0,16,2,5,32,0,32,2,65,1,107,32,1,65,128,128,128,128,127,113,114,54,2,4,11,11,58,0,2,64,2,64,2,64,32,0,65,8,107,40,2,0,14,7,0,0,1,1,1,1,1,2,11,15,11,32,0,40,2,0,34,0,4,64,32,0,65,172,3,79,4,64,32,0,65,16,107,16,52,11,11,15,11,0,11,11,137,3,7,0,65,16,11,55,40,0,0,0,1,0,0,0,1,0,0,0,40,0,0,0,97,0,108,0,108,0,111,0,99,0,97,0,116,0,105,0,111,0,110,0,32,0,116,0,111,0,111,0,32,0,108,0,97,0,114,0,103,0,101,0,65,208,0,11,45,30,0,0,0,1,0,0,0,1,0,0,0,30,0,0,0,126,0,108,0,105,0,98,0,47,0,114,0,116,0,47,0,116,0,108,0,115,0,102,0,46,0,116,0,115,0,65,128,1,11,43,28,0,0,0,1,0,0,0,1,0,0,0,28,0,0,0,73,0,110,0,118,0,97,0,108,0,105,0,100,0,32,0,108,0,101,0,110,0,103,0,116,0,104,0,65,176,1,11,53,38,0,0,0,1,0,0,0,1,0,0,0,38,0,0,0,126,0,108,0,105,0,98,0,47,0,97,0,114,0,114,0,97,0,121,0,98,0,117,0,102,0,102,0,101,0,114,0,46,0,116,0,115,0,65,240,1,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,73,0,110,0,100,0,101,0,120,0,32,0,111,0,117,0,116,0,32,0,111,0,102,0,32,0,114,0,97,0,110,0,103,0,101,0,65,176,2,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,126,0,108,0,105,0,98,0,47,0,116,0,121,0,112,0,101,0,100,0,97,0,114,0,114,0,97,0,121,0,46,0,116,0,115,0,65,240,2,11,53,7,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,145,4,0,0,2,0,0,0,49,0,0,0,2,0,0,0,17,1,0,0,2,0,0,0,16,0,34,16,115,111,117,114,99,101,77,97,112,112,105,110,103,85,82,76,16,46,47,114,97,98,105,110,46,119,97,115,109,46,109,97,112]);return $D(new Response(new Blob([e],{type:"application/wasm"})),r)}O6.exports=tx});var M6=re((cte,V6)=>{var z6=C6(),HD=F6(),qD=async(r,e,t,n,i)=>{let o=await HD();return new z6(o,r,e,t,n,i)};V6.exports={Rabin:z6,create:qD}});var f4=re((Rre,d4)=>{"use strict";d4.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var w4=re((x4,y4)=>{"use strict";var Wp=f4(),{hasOwnProperty:m4}=Object.prototype,{propertyIsEnumerable:xL}=Object,ea=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),yL=x4,h4={concatArrays:!1,ignoreUndefined:!1},Yp=r=>{let e=[];for(let t in r)m4.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)xL.call(r,n)&&e.push(n)}return e};function ta(r){return Array.isArray(r)?wL(r):Wp(r)?bL(r):r}function wL(r){let e=r.slice(0,0);return Yp(r).forEach(t=>{ea(e,t,ta(r[t]))}),e}function bL(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Yp(r).forEach(t=>{ea(e,t,ta(r[t]))}),e}var g4=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?ea(r,i,ix(r[i],e[i],n)):ea(r,i,ta(e[i])))}),r),vL=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)m4.call(o,a)&&(s.push(String(a)),o===r?ea(n,i++,o[a]):ea(n,i++,ta(o[a])));n=g4(n,o,Yp(o).filter(a=>!s.includes(a)),t)}),n};function ix(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?vL(r,e,t):!Wp(e)||!Wp(r)?ta(e):g4(r,e,Yp(e),t)}y4.exports=function(...r){let e=ix(ta(h4),this!==yL&&this||{},h4),t={_:{}};for(let n of r)if(n!==void 0){if(!Wp(n))throw new TypeError("`"+n+"` is not an Option Object");t=ix(t,{_:n},e)}return t._}});var F4=re((xoe,rP)=>{rP.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var V4=re((yoe,z4)=>{z4.exports=F4()});var j4=re((woe,M4)=>{M4.exports=function(e){return e&&typeof e=="object"&&typeof e.copy=="function"&&typeof e.fill=="function"&&typeof e.readUInt8=="function"}});var $4=re((boe,px)=>{typeof Object.create=="function"?px.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:px.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}});var G4=re(ye=>{var nP=/%[sdj%]/g;ye.format=function(r){if(!hd(r)){for(var e=[],t=0;t<arguments.length;t++)e.push(Vi(arguments[t]));return e.join(" ")}for(var t=1,n=arguments,i=n.length,o=String(r).replace(nP,function(a){if(a==="%%")return"%";if(t>=i)return a;switch(a){case"%s":return String(n[t++]);case"%d":return Number(n[t++]);case"%j":try{return JSON.stringify(n[t++])}catch{return"[Circular]"}default:return a}}),s=n[t];t<i;s=n[++t])fd(s)||!aa(s)?o+=" "+s:o+=" "+Vi(s);return o};ye.deprecate=function(r,e){if(Xn(globalThis.process))return function(){return ye.deprecate(r,e).apply(this,arguments)};if(process.noDeprecation===!0)return r;var t=!1;function n(){if(!t){if(process.throwDeprecation)throw new Error(e);process.traceDeprecation?console.trace(e):console.error(e),t=!0}return r.apply(this,arguments)}return n};var cd={},dx;ye.debuglog=function(r){if(Xn(dx)&&(dx=process.env.NODE_DEBUG||""),r=r.toUpperCase(),!cd[r])if(new RegExp("\\b"+r+"\\b","i").test(dx)){var e=process.pid;cd[r]=function(){var t=ye.format.apply(ye,arguments);console.error("%s %d: %s",r,e,t)}}else cd[r]=function(){};return cd[r]};function Vi(r,e){var t={seen:[],stylize:oP};return arguments.length>=3&&(t.depth=arguments[2]),arguments.length>=4&&(t.colors=arguments[3]),xx(e)?t.showHidden=e:e&&ye._extend(t,e),Xn(t.showHidden)&&(t.showHidden=!1),Xn(t.depth)&&(t.depth=2),Xn(t.colors)&&(t.colors=!1),Xn(t.customInspect)&&(t.customInspect=!0),t.colors&&(t.stylize=iP),dd(t,r,t.depth)}ye.inspect=Vi;Vi.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};Vi.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function iP(r,e){var t=Vi.styles[e];return t?"\x1B["+Vi.colors[t][0]+"m"+r+"\x1B["+Vi.colors[t][1]+"m":r}function oP(r,e){return r}function sP(r){var e={};return r.forEach(function(t,n){e[t]=!0}),e}function dd(r,e,t){if(r.customInspect&&e&&pd(e.inspect)&&e.inspect!==ye.inspect&&!(e.constructor&&e.constructor.prototype===e)){var n=e.inspect(t,r);return hd(n)||(n=dd(r,n,t)),n}var i=aP(r,e);if(i)return i;var o=Object.keys(e),s=sP(o);if(r.showHidden&&(o=Object.getOwnPropertyNames(e)),ud(e)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return fx(e);if(o.length===0){if(pd(e)){var a=e.name?": "+e.name:"";return r.stylize("[Function"+a+"]","special")}if(ld(e))return r.stylize(RegExp.prototype.toString.call(e),"regexp");if(gx(e))return r.stylize(Date.prototype.toString.call(e),"date");if(ud(e))return fx(e)}var c="",u=!1,l=["{","}"];if(H4(e)&&(u=!0,l=["[","]"]),pd(e)){var p=e.name?": "+e.name:"";c=" [Function"+p+"]"}if(ld(e)&&(c=" "+RegExp.prototype.toString.call(e)),gx(e)&&(c=" "+Date.prototype.toUTCString.call(e)),ud(e)&&(c=" "+fx(e)),o.length===0&&(!u||e.length==0))return l[0]+c+l[1];if(t<0)return ld(e)?r.stylize(RegExp.prototype.toString.call(e),"regexp"):r.stylize("[Object]","special");r.seen.push(e);var m;return u?m=cP(r,e,t,s,o):m=o.map(function(d){return mx(r,e,t,s,d,u)}),r.seen.pop(),lP(m,c,l)}function aP(r,e){if(Xn(e))return r.stylize("undefined","undefined");if(hd(e)){var t="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return r.stylize(t,"string")}if(q4(e))return r.stylize(""+e,"number");if(xx(e))return r.stylize(""+e,"boolean");if(fd(e))return r.stylize("null","null")}function fx(r){return"["+Error.prototype.toString.call(r)+"]"}function cP(r,e,t,n,i){for(var o=[],s=0,a=e.length;s<a;++s)K4(e,String(s))?o.push(mx(r,e,t,n,String(s),!0)):o.push("");return i.forEach(function(c){c.match(/^\d+$/)||o.push(mx(r,e,t,n,c,!0))}),o}function mx(r,e,t,n,i,o){var s,a,c;if(c=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]},c.get?c.set?a=r.stylize("[Getter/Setter]","special"):a=r.stylize("[Getter]","special"):c.set&&(a=r.stylize("[Setter]","special")),K4(n,i)||(s="["+i+"]"),a||(r.seen.indexOf(c.value)<0?(fd(t)?a=dd(r,c.value,null):a=dd(r,c.value,t-1),a.indexOf(`
|
|
4
|
-
`)>-1&&(o?a=a.split(`
|
|
5
|
-
`).map(function(u){return" "+u}).join(`
|
|
6
|
-
`).substr(2):a=`
|
|
7
|
-
`+a.split(`
|
|
8
|
-
`).map(function(u){return" "+u}).join(`
|
|
9
|
-
`))):a=r.stylize("[Circular]","special")),Xn(s)){if(o&&i.match(/^\d+$/))return a;s=JSON.stringify(""+i),s.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=r.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=r.stylize(s,"string"))}return s+": "+a}function lP(r,e,t){var n=0,i=r.reduce(function(o,s){return n++,s.indexOf(`
|
|
10
|
-
`)>=0&&n++,o+s.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?t[0]+(e===""?"":e+`
|
|
11
|
-
`)+" "+r.join(`,
|
|
12
|
-
`)+" "+t[1]:t[0]+e+" "+r.join(", ")+" "+t[1]}function H4(r){return Array.isArray(r)}ye.isArray=H4;function xx(r){return typeof r=="boolean"}ye.isBoolean=xx;function fd(r){return r===null}ye.isNull=fd;function uP(r){return r==null}ye.isNullOrUndefined=uP;function q4(r){return typeof r=="number"}ye.isNumber=q4;function hd(r){return typeof r=="string"}ye.isString=hd;function pP(r){return typeof r=="symbol"}ye.isSymbol=pP;function Xn(r){return r===void 0}ye.isUndefined=Xn;function ld(r){return aa(r)&&yx(r)==="[object RegExp]"}ye.isRegExp=ld;function aa(r){return typeof r=="object"&&r!==null}ye.isObject=aa;function gx(r){return aa(r)&&yx(r)==="[object Date]"}ye.isDate=gx;function ud(r){return aa(r)&&(yx(r)==="[object Error]"||r instanceof Error)}ye.isError=ud;function pd(r){return typeof r=="function"}ye.isFunction=pd;function dP(r){return r===null||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||typeof r=="symbol"||typeof r>"u"}ye.isPrimitive=dP;ye.isBuffer=j4();function yx(r){return Object.prototype.toString.call(r)}function hx(r){return r<10?"0"+r.toString(10):r.toString(10)}var fP=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function hP(){var r=new Date,e=[hx(r.getHours()),hx(r.getMinutes()),hx(r.getSeconds())].join(":");return[r.getDate(),fP[r.getMonth()],e].join(" ")}ye.log=function(){console.log("%s - %s",hP(),ye.format.apply(ye,arguments))};ye.inherits=$4();ye._extend=function(r,e){if(!e||!aa(e))return r;for(var t=Object.keys(e),n=t.length;n--;)r[t[n]]=e[t[n]];return r};function K4(r,e){return Object.prototype.hasOwnProperty.call(r,e)}});var X4=re((Eoe,Jc)=>{"use strict";var mP=process.platform==="win32",Ur=G4();function md(r,e){for(var t=[],n=0;n<r.length;n++){var i=r[n];!i||i==="."||(i===".."?t.length&&t[t.length-1]!==".."?t.pop():e&&t.push(".."):t.push(i))}return t}function Xc(r){for(var e=r.length-1,t=0;t<=e&&!r[t];t++);for(var n=e;n>=0&&!r[n];n--);return t===0&&n===e?r:t>n?[]:r.slice(t,n+1)}var W4=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,gP=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/,Me={};function gd(r){var e=W4.exec(r),t=(e[1]||"")+(e[2]||""),n=e[3]||"",i=gP.exec(n),o=i[1],s=i[2],a=i[3];return[t,o,s,a]}function wx(r){var e=W4.exec(r),t=e[1]||"",n=!!t&&t[1]!==":";return{device:t,isUnc:n,isAbsolute:n||!!e[2],tail:e[3]}}function Y4(r){return"\\\\"+r.replace(/^[\\\/]+/,"").replace(/[\\\/]+/g,"\\")}Me.resolve=function(){for(var r="",e="",t=!1,n=arguments.length-1;n>=-1;n--){var i;if(n>=0?i=arguments[n]:r?(i=process.env["="+r],(!i||i.substr(0,3).toLowerCase()!==r.toLowerCase()+"\\")&&(i=r+"\\")):i=process.cwd(),Ur.isString(i)){if(!i)continue}else throw new TypeError("Arguments to path.resolve must be strings");var o=wx(i),s=o.device,a=o.isUnc,c=o.isAbsolute,u=o.tail;if(!(s&&r&&s.toLowerCase()!==r.toLowerCase())&&(r||(r=s),t||(e=u+"\\"+e,t=c),r&&t))break}return a&&(r=Y4(r)),e=md(e.split(/[\\\/]+/),!t).join("\\"),r+(t?"\\":"")+e||"."};Me.normalize=function(r){var e=wx(r),t=e.device,n=e.isUnc,i=e.isAbsolute,o=e.tail,s=/[\\\/]$/.test(o);return o=md(o.split(/[\\\/]+/),!i).join("\\"),!o&&!i&&(o="."),o&&s&&(o+="\\"),n&&(t=Y4(t)),t+(i?"\\":"")+o};Me.isAbsolute=function(r){return wx(r).isAbsolute};Me.join=function(){for(var r=[],e=0;e<arguments.length;e++){var t=arguments[e];if(!Ur.isString(t))throw new TypeError("Arguments to path.join must be strings");t&&r.push(t)}var n=r.join("\\");return/^[\\\/]{2}[^\\\/]/.test(r[0])||(n=n.replace(/^[\\\/]{2,}/,"\\")),Me.normalize(n)};Me.relative=function(r,e){r=Me.resolve(r),e=Me.resolve(e);for(var t=r.toLowerCase(),n=e.toLowerCase(),i=Xc(e.split("\\")),o=Xc(t.split("\\")),s=Xc(n.split("\\")),a=Math.min(o.length,s.length),c=a,u=0;u<a;u++)if(o[u]!==s[u]){c=u;break}if(c==0)return e;for(var l=[],u=c;u<o.length;u++)l.push("..");return l=l.concat(i.slice(c)),l.join("\\")};Me._makeLong=function(r){if(!Ur.isString(r))return r;if(!r)return"";var e=Me.resolve(r);return/^[a-zA-Z]\:\\/.test(e)?"\\\\?\\"+e:/^\\\\[^?.]/.test(e)?"\\\\?\\UNC\\"+e.substring(2):r};Me.dirname=function(r){var e=gd(r),t=e[0],n=e[1];return!t&&!n?".":(n&&(n=n.substr(0,n.length-1)),t+n)};Me.basename=function(r,e){var t=gd(r)[2];return e&&t.substr(-1*e.length)===e&&(t=t.substr(0,t.length-e.length)),t};Me.extname=function(r){return gd(r)[3]};Me.format=function(r){if(!Ur.isObject(r))throw new TypeError("Parameter 'pathObject' must be an object, not "+typeof r);var e=r.root||"";if(!Ur.isString(e))throw new TypeError("'pathObject.root' must be a string or undefined, not "+typeof r.root);var t=r.dir,n=r.base||"";return t?t[t.length-1]===Me.sep?t+n:t+Me.sep+n:n};Me.parse=function(r){if(!Ur.isString(r))throw new TypeError("Parameter 'pathString' must be a string, not "+typeof r);var e=gd(r);if(!e||e.length!==4)throw new TypeError("Invalid path '"+r+"'");return{root:e[0],dir:e[0]+e[1].slice(0,-1),base:e[2],ext:e[3],name:e[2].slice(0,e[2].length-e[3].length)}};Me.sep="\\";Me.delimiter=";";var xP=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,Ge={};function xd(r){return xP.exec(r).slice(1)}Ge.resolve=function(){for(var r="",e=!1,t=arguments.length-1;t>=-1&&!e;t--){var n=t>=0?arguments[t]:process.cwd();if(Ur.isString(n)){if(!n)continue}else throw new TypeError("Arguments to path.resolve must be strings");r=n+"/"+r,e=n[0]==="/"}return r=md(r.split("/"),!e).join("/"),(e?"/":"")+r||"."};Ge.normalize=function(r){var e=Ge.isAbsolute(r),t=r&&r[r.length-1]==="/";return r=md(r.split("/"),!e).join("/"),!r&&!e&&(r="."),r&&t&&(r+="/"),(e?"/":"")+r};Ge.isAbsolute=function(r){return r.charAt(0)==="/"};Ge.join=function(){for(var r="",e=0;e<arguments.length;e++){var t=arguments[e];if(!Ur.isString(t))throw new TypeError("Arguments to path.join must be strings");t&&(r?r+="/"+t:r+=t)}return Ge.normalize(r)};Ge.relative=function(r,e){r=Ge.resolve(r).substr(1),e=Ge.resolve(e).substr(1);for(var t=Xc(r.split("/")),n=Xc(e.split("/")),i=Math.min(t.length,n.length),o=i,s=0;s<i;s++)if(t[s]!==n[s]){o=s;break}for(var a=[],s=o;s<t.length;s++)a.push("..");return a=a.concat(n.slice(o)),a.join("/")};Ge._makeLong=function(r){return r};Ge.dirname=function(r){var e=xd(r),t=e[0],n=e[1];return!t&&!n?".":(n&&(n=n.substr(0,n.length-1)),t+n)};Ge.basename=function(r,e){var t=xd(r)[2];return e&&t.substr(-1*e.length)===e&&(t=t.substr(0,t.length-e.length)),t};Ge.extname=function(r){return xd(r)[3]};Ge.format=function(r){if(!Ur.isObject(r))throw new TypeError("Parameter 'pathObject' must be an object, not "+typeof r);var e=r.root||"";if(!Ur.isString(e))throw new TypeError("'pathObject.root' must be a string or undefined, not "+typeof r.root);var t=r.dir?r.dir+Ge.sep:"",n=r.base||"";return t+n};Ge.parse=function(r){if(!Ur.isString(r))throw new TypeError("Parameter 'pathString' must be a string, not "+typeof r);var e=xd(r);if(!e||e.length!==4)throw new TypeError("Invalid path '"+r+"'");return e[1]=e[1]||"",e[2]=e[2]||"",e[3]=e[3]||"",{root:e[0],dir:e[0]+e[1].slice(0,-1),base:e[2],ext:e[3],name:e[2].slice(0,e[2].length-e[3].length)}};Ge.sep="/";Ge.delimiter=":";mP?Jc.exports=Me:Jc.exports=Ge;Jc.exports.posix=Ge;Jc.exports.win32=Me});var Q4=re(Pt=>{"use strict";var yd=V4(),yP=X4().extname,J4=/^\s*([^;\s]*)(?:;|\s|$)/,wP=/^text\//i;Pt.charset=Z4;Pt.charsets={lookup:Z4};Pt.contentType=bP;Pt.extension=vP;Pt.extensions=Object.create(null);Pt.lookup=EP;Pt.types=Object.create(null);AP(Pt.extensions,Pt.types);function Z4(r){if(!r||typeof r!="string")return!1;var e=J4.exec(r),t=e&&yd[e[1].toLowerCase()];return t&&t.charset?t.charset:e&&wP.test(e[1])?"UTF-8":!1}function bP(r){if(!r||typeof r!="string")return!1;var e=r.indexOf("/")===-1?Pt.lookup(r):r;if(!e)return!1;if(e.indexOf("charset")===-1){var t=Pt.charset(e);t&&(e+="; charset="+t.toLowerCase())}return e}function vP(r){if(!r||typeof r!="string")return!1;var e=J4.exec(r),t=e&&Pt.extensions[e[1].toLowerCase()];return!t||!t.length?!1:t[0]}function EP(r){if(!r||typeof r!="string")return!1;var e=yP("x."+r).toLowerCase().substr(1);return e&&Pt.types[e]||!1}function AP(r,e){var t=["nginx","apache",void 0,"iana"];Object.keys(yd).forEach(function(i){var o=yd[i],s=o.extensions;if(!(!s||!s.length)){r[i]=s;for(var a=0;a<s.length;a++){var c=s[a];if(e[c]){var u=t.indexOf(yd[e[c]].source),l=t.indexOf(o.source);if(e[c]!=="application/octet-stream"&&(u>l||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var UP={};j(UP,{createVerifiedFetch:()=>vx,verifiedFetch:()=>vd});function ji(r){let e=new globalThis.AbortController;function t(){e.abort();for(let o of r)o?.removeEventListener!=null&&o.removeEventListener("abort",t)}for(let o of r){if(o?.aborted===!0){t();break}o?.addEventListener!=null&&o.addEventListener("abort",t)}function n(){for(let o of r)o?.removeEventListener!=null&&o.removeEventListener("abort",t)}let i=e.signal;return i.clear=n,i}function v8(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 Io=v8;function E8(r){return r[Symbol.asyncIterator]!=null}function Rx(r){return r?.then!=null}function A8(r,e){if(E8(r))return async function*(){for await(let a of r){let c=e(a);Rx(c)&&await c,yield a}}();let t=Io(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();if(typeof e(n)?.then=="function")return async function*(){yield n;for await(let a of t){let c=e(a);Rx(c)&&await c,yield a}}();let s=e;return function*(){yield n;for(let a of t)s(a),yield a}()}var Ad=A8;var Rd={};j(Rd,{base32:()=>nt,base32hex:()=>D8,base32hexpad:()=>P8,base32hexpadupper:()=>O8,base32hexupper:()=>L8,base32pad:()=>U8,base32padupper:()=>N8,base32upper:()=>Lx,base32z:()=>F8});var _o={};j(_o,{coerce:()=>Zt,empty:()=>Ux,equals:()=>Sd,fromHex:()=>B8,fromString:()=>Bd,isBinary:()=>k8,toHex:()=>S8,toString:()=>kd});var Ux=new Uint8Array(0);function S8(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function B8(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):Ux}function Sd(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 Zt(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 k8(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function Bd(r){return new TextEncoder().encode(r)}function kd(r){return new TextDecoder().decode(r)}function I8(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function p(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var h=0,x=0,g=0,y=f.length;g!==y&&f[g]===0;)g++,h++;for(var w=(y-g)*l+1>>>0,E=new Uint8Array(w);g!==y;){for(var B=f[g],S=0,b=w-1;(B!==0||S<x)&&b!==-1;b--,S++)B+=256*E[b]>>>0,E[b]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=S,g++}for(var v=w-x;v!==w&&E[v]===0;)v++;for(var k=c.repeat(h);v<w;++v)k+=r.charAt(E[v]);return k}function m(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var h=0;if(f[h]!==" "){for(var x=0,g=0;f[h]===c;)x++,h++;for(var y=(f.length-h)*u+1>>>0,w=new Uint8Array(y);f[h];){var E=t[f.charCodeAt(h)];if(E===255)return;for(var B=0,S=y-1;(E!==0||B<g)&&S!==-1;S--,B++)E+=a*w[S]>>>0,w[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=B,h++}if(f[h]!==" "){for(var b=y-g;b!==y&&w[b]===0;)b++;for(var v=new Uint8Array(x+(y-b)),k=x;b!==y;)v[k++]=w[b++];return v}}}function d(f){var h=m(f);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:m,decode:d}}var _8=I8,T8=_8,Nx=T8;var Id=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")}},_d=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 Dx(this,e)}},Td=class{decoders;constructor(e){this.decoders=e}or(e){return Dx(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 Dx(r,e){return new Td({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var Cd=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 Id(e,t,n),this.decoder=new _d(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function To({name:r,prefix:e,encode:t,decode:n}){return new Cd(r,e,t,n)}function Jn({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=Nx(t,r);return To({prefix:e,name:r,encode:n,decode:o=>Zt(i(o))})}function C8(r,e,t,n){let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let p=i[r[l]];if(p===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|p,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function R8(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function Te({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return To({prefix:e,name:r,encode(i){return R8(i,n,t)},decode(i){return C8(i,n,t,r)}})}var nt=Te({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Lx=Te({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),U8=Te({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),N8=Te({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),D8=Te({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),L8=Te({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),P8=Te({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),O8=Te({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),F8=Te({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ud={};j(Ud,{base58btc:()=>Oe,base58flickr:()=>z8});var Oe=Jn({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),z8=Jn({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var V8=Fx,Px=128,M8=127,j8=~M8,$8=Math.pow(2,31);function Fx(r,e,t){e=e||[],t=t||0;for(var n=t;r>=$8;)e[t++]=r&255|Px,r/=128;for(;r&j8;)e[t++]=r&255|Px,r>>>=7;return e[t]=r|0,Fx.bytes=t-n+1,e}var H8=Nd,q8=128,Ox=127;function Nd(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Nd.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Ox)<<i:(s&Ox)*Math.pow(2,i),i+=7}while(s>=q8);return Nd.bytes=o-n,t}var K8=Math.pow(2,7),G8=Math.pow(2,14),W8=Math.pow(2,21),Y8=Math.pow(2,28),X8=Math.pow(2,35),J8=Math.pow(2,42),Z8=Math.pow(2,49),Q8=Math.pow(2,56),eA=Math.pow(2,63),tA=function(r){return r<K8?1:r<G8?2:r<W8?3:r<Y8?4:r<X8?5:r<J8?6:r<Z8?7:r<Q8?8:r<eA?9:10},rA={encode:V8,decode:H8,encodingLength:tA},nA=rA,la=nA;function ua(r,e=0){return[la.decode(r,e),la.decode.bytes]}function Co(r,e,t=0){return la.encode(r,e,t),e}function Ro(r){return la.encodingLength(r)}function Nr(r,e){let t=e.byteLength,n=Ro(r),i=n+Ro(t),o=new Uint8Array(i+t);return Co(r,o,0),Co(t,o,n),o.set(e,i),new Uo(r,t,e,o)}function Ot(r){let e=Zt(r),[t,n]=ua(e),[i,o]=ua(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Uo(t,i,s,e)}function zx(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Sd(r.bytes,t.bytes)}}var Uo=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function Vx(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return oA(t,Dd(r),e??Oe.encoder);default:return sA(t,Dd(r),e??nt.encoder)}}var Mx=new WeakMap;function Dd(r){let e=Mx.get(r);if(e==null){let t=new Map;return Mx.set(r,t),t}return e}var V=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!==pa)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==aA)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=Nr(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&&zx(e.multihash,n.multihash)}toString(e){return Vx(this,e)}toJSON(){return{"/":Vx(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??jx(n,i,o.bytes))}else if(t[cA]===!0){let{version:n,multihash:i,code:o}=t,s=Ot(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==pa)throw new Error(`Version 0 CID must use dag-pb (code: ${pa}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=jx(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,pa,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=Zt(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Uo(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[p,m]=ua(e.subarray(t));return t+=m,p},i=n(),o=pa;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=iA(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Dd(o).set(n,e),o}};function iA(r,e){switch(r[0]){case"Q":{let t=e??Oe;return[Oe.prefix,t.decode(`${Oe.prefix}${r}`)]}case Oe.prefix:{let t=e??Oe;return[Oe.prefix,t.decode(r)]}case nt.prefix:{let t=e??nt;return[nt.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 oA(r,e,t){let{prefix:n}=t;if(n!==Oe.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function sA(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var pa=112,aA=18;function jx(r,e,t){let n=Ro(r),i=n+Ro(e),o=new Uint8Array(i+t.byteLength);return Co(r,o,0),Co(e,o,n),o.set(t,i),o}var cA=Symbol.for("@ipld/js-cid/CID");var da=Symbol.for("@libp2p/content-routing");var Ld=Symbol.for("@libp2p/peer-id");function $x(r){return r!=null&&!!r[Ld]}var fa=Symbol.for("@libp2p/peer-routing");var Zn=class r extends Error{code;type;constructor(e="The operation was aborted"){super(e),this.code=r.code,this.type=r.type}static code="ABORT_ERR";static type="aborted"},O=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var tl=class extends EventTarget{#e=new Map;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:o})=>o!==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 lA(e,t))}},Pd=class extends Event{detail;constructor(e,t){super(e,t),this.detail=t?.detail}},lA=globalThis.CustomEvent??Pd;var rl=(r,...e)=>{try{[...e]}catch{}};function Hx(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function Qn(...r){let e=[];for(let t of r)Hx(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 ei(...r){let e=[];for(let t of r)Hx(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 zd={};j(zd,{sha256:()=>ae,sha512:()=>Fd});function $i({name:r,code:e,encode:t}){return new Od(r,e,t)}var Od=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?Nr(this.code,t):t.then(n=>Nr(this.code,n))}else throw Error("Unknown type, must be binary type")}};function Kx(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ae=$i({name:"sha2-256",code:18,encode:Kx("SHA-256")}),Fd=$i({name:"sha2-512",code:19,encode:Kx("SHA-512")});var zt=ee(Md(),1);var jd={};j(jd,{base64:()=>Lr,base64pad:()=>EA,base64url:()=>Xx,base64urlpad:()=>AA});var Lr=Te({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),EA=Te({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Xx=Te({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),AA=Te({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});zt.default.formatters.b=r=>r==null?"undefined":Oe.baseEncode(r);zt.default.formatters.t=r=>r==null?"undefined":nt.baseEncode(r);zt.default.formatters.m=r=>r==null?"undefined":Lr.baseEncode(r);zt.default.formatters.p=r=>r==null?"undefined":r.toString();zt.default.formatters.c=r=>r==null?"undefined":r.toString();zt.default.formatters.k=r=>r==null?"undefined":r.toString();zt.default.formatters.a=r=>r==null?"undefined":r.toString();function SA(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function Jx(){return{forComponent(r){return ue(r)}}}function ue(r){let e=SA(`${r}:trace`);return zt.default.enabled(`${r}:trace`)&&zt.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,zt.default)(`${r}:trace`)),Object.assign((0,zt.default)(r),{error:(0,zt.default)(`${r}:error`),trace:e})}function ge(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 ti(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function ln(r=0){return globalThis.Buffer?.alloc!=null?ti(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function Bt(r=0){return globalThis.Buffer?.allocUnsafe!=null?ti(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}var FA=Math.pow(2,7),zA=Math.pow(2,14),VA=Math.pow(2,21),qd=Math.pow(2,28),Kd=Math.pow(2,35),Gd=Math.pow(2,42),Wd=Math.pow(2,49),xe=128,pt=127;function Fe(r){if(r<FA)return 1;if(r<zA)return 2;if(r<VA)return 3;if(r<qd)return 4;if(r<Kd)return 5;if(r<Gd)return 6;if(r<Wd)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function Yd(r,e,t=0){switch(Fe(r)){case 8:e[t++]=r&255|xe,r/=128;case 7:e[t++]=r&255|xe,r/=128;case 6:e[t++]=r&255|xe,r/=128;case 5:e[t++]=r&255|xe,r/=128;case 4:e[t++]=r&255|xe,r>>>=7;case 3:e[t++]=r&255|xe,r>>>=7;case 2:e[t++]=r&255|xe,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function MA(r,e,t=0){switch(Fe(r)){case 8:e.set(t++,r&255|xe),r/=128;case 7:e.set(t++,r&255|xe),r/=128;case 6:e.set(t++,r&255|xe),r/=128;case 5:e.set(t++,r&255|xe),r/=128;case 4:e.set(t++,r&255|xe),r>>>=7;case 3:e.set(t++,r&255|xe),r>>>=7;case 2:e.set(t++,r&255|xe),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function Xd(r,e){let t=r[e],n=0;if(n+=t&pt,t<xe||(t=r[e+1],n+=(t&pt)<<7,t<xe)||(t=r[e+2],n+=(t&pt)<<14,t<xe)||(t=r[e+3],n+=(t&pt)<<21,t<xe)||(t=r[e+4],n+=(t&pt)*qd,t<xe)||(t=r[e+5],n+=(t&pt)*Kd,t<xe)||(t=r[e+6],n+=(t&pt)*Gd,t<xe)||(t=r[e+7],n+=(t&pt)*Wd,t<xe))return n;throw new RangeError("Could not decode varint")}function jA(r,e){let t=r.get(e),n=0;if(n+=t&pt,t<xe||(t=r.get(e+1),n+=(t&pt)<<7,t<xe)||(t=r.get(e+2),n+=(t&pt)<<14,t<xe)||(t=r.get(e+3),n+=(t&pt)<<21,t<xe)||(t=r.get(e+4),n+=(t&pt)*qd,t<xe)||(t=r.get(e+5),n+=(t&pt)*Kd,t<xe)||(t=r.get(e+6),n+=(t&pt)*Gd,t<xe)||(t=r.get(e+7),n+=(t&pt)*Wd,t<xe))return n;throw new RangeError("Could not decode varint")}function Qt(r,e,t=0){return e==null&&(e=Bt(Fe(r))),e instanceof Uint8Array?Yd(r,e,t):MA(r,e,t)}function kt(r,e=0){return r instanceof Uint8Array?Xd(r,e):jA(r,e)}var Jd=new Float32Array([-0]),ri=new Uint8Array(Jd.buffer);function a1(r,e,t){Jd[0]=r,e[t]=ri[0],e[t+1]=ri[1],e[t+2]=ri[2],e[t+3]=ri[3]}function c1(r,e){return ri[0]=r[e],ri[1]=r[e+1],ri[2]=r[e+2],ri[3]=r[e+3],Jd[0]}var Zd=new Float64Array([-0]),dt=new Uint8Array(Zd.buffer);function l1(r,e,t){Zd[0]=r,e[t]=dt[0],e[t+1]=dt[1],e[t+2]=dt[2],e[t+3]=dt[3],e[t+4]=dt[4],e[t+5]=dt[5],e[t+6]=dt[6],e[t+7]=dt[7]}function u1(r,e){return dt[0]=r[e],dt[1]=r[e+1],dt[2]=r[e+2],dt[3]=r[e+3],dt[4]=r[e+4],dt[5]=r[e+5],dt[6]=r[e+6],dt[7]=r[e+7],Zd[0]}var $A=BigInt(Number.MAX_SAFE_INTEGER),HA=BigInt(Number.MIN_SAFE_INTEGER),Vt=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 qi;if(e<$A&&e>HA)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>p1&&(i=0n,++n>p1&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return qi;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):qi}},qi=new Vt(0,0);qi.toBigInt=function(){return 0n};qi.zzEncode=qi.zzDecode=function(){return this};qi.length=function(){return 1};var p1=4294967296n;function d1(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 f1(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Qd(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function dr(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function al(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var ef=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,dr(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 dr(this,4);return al(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw dr(this,4);return al(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw dr(this,4);let e=c1(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw dr(this,4);let e=u1(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 dr(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return f1(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw dr(this,e);this.pos+=e}else do if(this.pos>=this.len)throw dr(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 Vt(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 dr(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 dr(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 dr(this,8);let e=al(this.buf,this.pos+=4),t=al(this.buf,this.pos+=4);return new Vt(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=Xd(this.buf,this.pos);return this.pos+=Fe(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 tf(r){return new ef(r instanceof Uint8Array?r:r.subarray())}function er(r,e,t){let n=tf(r);return e.decode(n,void 0,t)}var rf={};j(rf,{base10:()=>qA});var qA=Jn({prefix:"9",name:"base10",alphabet:"0123456789"});var nf={};j(nf,{base16:()=>KA,base16upper:()=>GA});var KA=Te({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),GA=Te({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var of={};j(of,{base2:()=>WA});var WA=Te({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var sf={};j(sf,{base256emoji:()=>QA});var m1=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}"),YA=m1.reduce((r,e,t)=>(r[t]=e,r),[]),XA=m1.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function JA(r){return r.reduce((e,t)=>(e+=YA[t],e),"")}function ZA(r){let e=[];for(let t of r){let n=XA[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var QA=To({prefix:"\u{1F680}",name:"base256emoji",encode:JA,decode:ZA});var af={};j(af,{base36:()=>ni,base36upper:()=>e5});var ni=Jn({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),e5=Jn({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var cf={};j(cf,{base8:()=>t5});var t5=Te({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var lf={};j(lf,{identity:()=>r5});var r5=To({prefix:"\0",name:"identity",encode:r=>kd(r),decode:r=>Bd(r)});var n5=new TextEncoder,i5=new TextDecoder;var ii=512;function g1(r){return n5.encode(JSON.stringify(r))}function cl(r){return JSON.parse(i5.decode(r))}var tr={};j(tr,{code:()=>$e,decode:()=>uf,encode:()=>s5,name:()=>o5});var o5="raw",$e=85;function s5(r){return Zt(r)}function uf(r){return Zt(r)}var pf={};j(pf,{identity:()=>It});var x1=0,a5="identity",y1=Zt;function c5(r){return Nr(x1,y1(r))}var It={code:x1,name:a5,encode:y1,digest:c5};var oi={...lf,...of,...cf,...rf,...nf,...Rd,...af,...Ud,...jd,...sf},Y7={...zd,...pf};function b1(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var w1=b1("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),df=b1("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=Bt(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),l5={utf8:w1,"utf-8":w1,hex:oi.base16,latin1:df,ascii:df,binary:df,...oi},ll=l5;function Z(r,e="utf8"){let t=ll[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?ti(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function ff(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return Bt(s);i+s>e&&(n=Bt(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var Ki=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function hf(){}var gf=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},u5=ff();function p5(r){return globalThis.Buffer!=null?Bt(r):u5(r)}var ga=class{len;head;tail;states;constructor(){this.len=0,this.head=new Ki(hf,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new Ki(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new xf((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(ul,10,Vt.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=Vt.fromBigInt(e);return this._push(ul,t.length(),t)}uint64Number(e){return this._push(Yd,Fe(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=Vt.fromBigInt(e).zzEncode();return this._push(ul,t.length(),t)}sint64Number(e){let t=Vt.fromNumber(e).zzEncode();return this._push(ul,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(mf,1,e?1:0)}fixed32(e){return this._push(ma,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=Vt.fromBigInt(e);return this._push(ma,4,t.lo)._push(ma,4,t.hi)}fixed64Number(e){let t=Vt.fromNumber(e);return this._push(ma,4,t.lo)._push(ma,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(a1,4,e)}double(e){return this._push(l1,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(mf,1,0):this.uint32(t)._push(f5,t,e)}string(e){let t=d1(e);return t!==0?this.uint32(t)._push(Qd,t,e):this._push(mf,1,0)}fork(){return this.states=new gf(this),this.head=this.tail=new Ki(hf,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 Ki(hf,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=p5(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function mf(r,e,t){e[t]=r&255}function d5(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var xf=class extends Ki{next;constructor(e,t){super(d5,e,t),this.next=void 0}};function ul(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 ma(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 f5(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(ga.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(h5,e,r),this},ga.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(m5,e,r),this});function h5(r,e,t){e.set(r,t)}function m5(r,e,t){r.length<40?Qd(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(Z(r),t)}function yf(){return new ga}function rr(r,e){let t=yf();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var Po;(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"})(Po||(Po={}));function pl(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function Gi(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return pl("enum",Po.VARINT,t,n)}function nr(r,e){return pl("message",Po.LENGTH_DELIMITED,r,e)}function g5(r){return r[Symbol.asyncIterator]!=null}function x5(r){if(g5(r))return(async()=>{for await(let e of r);})();for(let e of r);}var Wi=x5;function ze(r,e){if(globalThis.Buffer!=null)return ti(globalThis.Buffer.concat(r,e));e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=Bt(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return ti(t)}var E1=Symbol.for("@achingbrain/uint8arraylist");function v1(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function dl(r){return!!r?.[E1]}var Yi=class r{bufs;length;[E1]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(dl(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(dl(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=v1(this.bufs,e);return t.buf[t.index]}set(e,t){let n=v1(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(dl(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return ze(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:ze(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let u=e>=a&&e<c,l=t>a&&t<=c;if(u&&l){if(e===a&&t===c){n.push(s);break}let p=e-a;n.push(s.subarray(p,p+(t-e)));break}if(u){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(l){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!dl(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let p=0;p<o;p++)s[p]=-1;for(let p=0;p<i;p++)s[n[p]]=p;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,l;for(let p=t;p<=c;p+=l){l=0;for(let m=u;m>=0;m--){let d=this.get(p+m);if(n[m]!==d){l=Math.max(1,m-a[d]);break}}if(l===0)return p}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=Bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=ln(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=ln(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=ln(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=Bt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=ln(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=ln(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=ln(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=ln(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=ln(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!ge(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};function w5(r){return r[Symbol.asyncIterator]!=null}function b5(r,e){if(w5(r))return async function*(){for await(let a of r)yield e(a)}();let t=Io(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){yield await o;for await(let a of t)yield e(a)}();let s=e;return function*(){yield o;for(let a of t)yield s(a)}()}var fr=b5;function He(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var fl=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}},Oo=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new fl(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 fl(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 wf=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function Pr(r={}){return v5(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 v5(r,e){e=e??{};let t=e.onEnd,n=new Oo,i,o,s,a=He(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((x,g)=>{o=y=>{o=null,n.push(y);try{x(r(n))}catch(w){g(w)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=He()})}},u=x=>o!=null?o(x):(n.push(x),i),l=x=>(n=new Oo,o!=null?o({error:x}):(n.push({error:x}),i)),p=x=>{if(s)return i;if(e?.objectMode!==!0&&x?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return u({done:!1,value:x})},m=x=>s?i:(s=!0,x!=null?l(x):u({done:!0})),d=()=>(n=new Oo,m(),{done:!0}),f=x=>(m(x),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:d,throw:f,push:p,end:m,get readableLength(){return n.size},onEmpty:async x=>{let g=x?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let y,w;g!=null&&(y=new Promise((E,B)=>{w=()=>{B(new wf)},g.addEventListener("abort",w)}));try{await Promise.race([a.promise,y])}finally{w!=null&&g!=null&&g?.removeEventListener("abort",w)}}},t==null)return i;let h=i;return i={[Symbol.asyncIterator](){return this},next(){return h.next()},throw(x){return h.throw(x),t!=null&&(t(x),t=void 0),{done:!0}},return(){return h.return(),t!=null&&(t(),t=void 0),{done:!0}},push:p,end(x){return h.end(x),t!=null&&(t(x),t=void 0),i},get readableLength(){return h.readableLength},onEmpty:x=>h.onEmpty(x)},i}function E5(r){return r[Symbol.asyncIterator]!=null}function A5(...r){let e=[];for(let t of r)E5(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=Pr({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 si=A5;function hr(r,...e){if(r==null)throw new Error("Empty pipeline");if(bf(r)){let n=r;r=()=>n.source}else if(k1(r)||B1(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&bf(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++)bf(t[n])&&(t[n]=B5(t[n]));return S5(...t)}var S5=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},B1=r=>r?.[Symbol.asyncIterator]!=null,k1=r=>r?.[Symbol.iterator]!=null,bf=r=>r==null?!1:r.sink!=null&&r.source!=null,B5=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=Pr({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(B1(o))i=async function*(){yield*o,n.end()};else if(k1(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return si(n,i())}return r.source};function k5(r){return r[Symbol.asyncIterator]!=null}function I5(r,e){return k5(r)?async function*(){let t=0;if(!(e<1)){for await(let n of r)if(yield n,t++,t===e)return}}():function*(){let t=0;if(!(e<1)){for(let n of r)if(yield n,t++,t===e)return}}()}var hl=I5;var P=class extends Event{constructor(e,t){super(e),this.detail=t}};function ie(r,e="utf8"){let t=ll[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var ml=class{url;#e=0;#t=0;#r=0;#n=0;constructor(e){this.url=e instanceof URL?e:new URL(e)}async getRawBlock(e,t){let n=this.url;if(n.pathname=`/ipfs/${e.toString()}`,n.search="?format=raw",t?.aborted===!0)throw new Error(`Signal to fetch raw block for CID ${e} from gateway ${this.url} was aborted prior to fetch`);try{this.#e++;let i=await fetch(n.toString(),{signal:t,headers:{Accept:"application/vnd.ipld.raw"},cache:"force-cache"});if(!i.ok)throw this.#t++,new Error(`unable to fetch raw block for CID ${e} from gateway ${this.url}`);return this.#n++,new Uint8Array(await i.arrayBuffer())}catch{throw t?.aborted===!0?new Error(`fetching raw block for CID ${e} from gateway ${this.url} was aborted`):(this.#t++,new Error(`unable to fetch raw block for CID ${e}`))}}reliability(){return this.#e===0?1:this.#r>0?-1/0:this.#n/(this.#e+this.#t*3)}incrementInvalidBlocks(){this.#r++}};var gl=class{gateways;log;constructor(e,t={}){this.log=e.logger.forComponent("helia:trustless-gateway-block-broker"),this.gateways=(t.gateways??I1).map(n=>new ml(n))}async retrieve(e,t={}){let n=this.gateways.sort((o,s)=>s.reliability()-o.reliability()),i=[];for(let o of n){this.log("getting block for %c from %s",e,o.url);try{let s=await o.getRawBlock(e,t.signal);this.log.trace("got block for %c from %s",e,o.url);try{await t.validateFn?.(s)}catch(a){throw this.log.error("failed to validate block for %c from %s",e,o.url,a),o.incrementInvalidBlocks(),new Error(`unable to validate block for CID ${e} from gateway ${o.url}`)}return s}catch(s){if(this.log.error("failed to get block for %c from %s",e,o.url,s),s instanceof Error?i.push(s):i.push(new Error(`unable to fetch raw block for CID ${e} from gateway ${o.url}`)),t.signal?.aborted===!0){this.log.trace("request aborted while fetching raw block for CID %c from gateway %s",e,o.url);break}}}throw new AggregateError(i,`unable to fetch raw block for CID ${e} from any gateway`)}};var I1=["https://trustless-gateway.link","https://cloudflare-ipfs.com","https://4everland.io"];function xa(r={}){return e=>new gl(e,r)}var _5=Symbol.for("nodejs.util.inspect.custom"),_1=Object.values(oi).map(r=>r.decoder).reduce((r,e)=>r.or(e),oi.identity.decoder),T1=114,vf=36,Ef=37,ya=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()})`}[Ld]=!0;toString(){return this.string==null&&(this.string=Oe.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return V.createV1(T1,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return ge(this.multihash.bytes,e);if(typeof e=="string")return mr(e).equals(this);if(e?.multihash?.bytes!=null)return ge(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[_5](){return`PeerId(${this.toString()})`}},Fo=class extends ya{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},zo=class extends ya{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},Vo=class extends ya{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function mr(r,e){if(e=e??_1,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=Ot(Oe.decode(`z${r}`));return r.startsWith("12D")?new zo({multihash:t}):r.startsWith("16U")?new Vo({multihash:t}):new Fo({multihash:t})}return wa(_1.decode(r))}function wa(r){try{let e=Ot(r);if(e.code===It.code){if(e.digest.length===vf)return new zo({multihash:e});if(e.digest.length===Ef)return new Vo({multihash:e})}if(e.code===ae.code)return new Fo({multihash:e})}catch{return T5(V.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function T5(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==T1)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===ae.code)return new Fo({multihash:r.multihash});if(e.code===It.code){if(e.digest.length===vf)return new zo({multihash:r.multihash});if(e.digest.length===Ef)return new Vo({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function C1(r,e){return r.length===vf?new zo({multihash:Nr(It.code,r),privateKey:e}):r.length===Ef?new Vo({multihash:Nr(It.code,r),privateKey:e}):new Fo({multihash:await ae.digest(r),publicKey:r,privateKey:e})}var xl=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 o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let l=this.readAtomically(()=>{let p=this.readChar();if(p===void 0)return;let m=Number.parseInt(p,e);if(!Number.isNaN(m))return m});if(l===void 0)break;if(o*=e,o+=l,o>u||(s+=1,t!==void 0&&s>t))return}if(s!==0)return!n&&c&&s>1?void 0:o})}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 s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return t[i]=s[0],t[i+1]=s[1],t[i+2]=s[2],t[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];t[i]=o>>8,t[i+1]=o&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 o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return t.set(o.subarray(0,a),16-a),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var R1=45,C5=15,Mo=new xl;function Af(r){if(!(r.length>C5))return Mo.new(r).parseWith(()=>Mo.readIPv4Addr())}function Sf(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>R1))return Mo.new(r).parseWith(()=>Mo.readIPv6Addr())}function yl(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>R1))return Mo.new(r).parseWith(()=>Mo.readIPAddr())}var BF=parseInt("0xFFFF",16),kF=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function jo(r){return!!Af(r)}function $o(r){return!!Sf(r)}function ir(r){return!!yl(r)}var N1=jo,L5=$o,kf=function(r){let e=0;if(r=r.toString().trim(),N1(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(L5(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let o=N1(t[n]),s;o&&(s=kf(t[n]),t[n]=ie(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,ie(s.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let o=[n,1];for(n=9-t.length;n>0;n--)o.push("0");t.splice.apply(t,o)}let i=new Uint8Array(e+16);for(n=0;n<t.length;n++){let o=parseInt(t[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},D1=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let i=[];for(let o=0;o<t;o++)i.push(r[e+o]);return i.join(".")}if(t===16){let i=[];for(let o=0;o<t;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Ho={},If={},O5=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];O5.forEach(r=>{let e=F5(...r);If[e.code]=e,Ho[e.name]=e});function F5(r,e,t,n,i){return{code:r,size:e,name:t,resolvable:!!n,path:!!i}}function ve(r){if(typeof r=="number"){if(If[r]!=null)return If[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Ho[r]!=null)return Ho[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var l9=ve("ip4"),u9=ve("ip6"),p9=ve("ipcidr");function Tf(r,e){switch(ve(r).code){case 4:case 41:return V5(e);case 42:return O1(e);case 6:case 273:case 33:case 132:return z1(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return O1(e);case 421:return H5(e);case 444:return F1(e);case 445:return F1(e);case 466:return $5(e);default:return ie(e,"base16")}}function Cf(r,e){switch(ve(r).code){case 4:return L1(e);case 41:return L1(e);case 42:return P1(e);case 6:case 273:case 33:case 132:return Rf(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return P1(e);case 421:return M5(e);case 444:return q5(e);case 445:return K5(e);case 466:return j5(e);default:return Z(e,"base16")}}var _f=Object.values(oi).map(r=>r.decoder),z5=function(){let r=_f[0].or(_f[1]);return _f.slice(2).forEach(e=>r=r.or(e)),r}();function L1(r){if(!ir(r))throw new Error("invalid ip address");return kf(r)}function V5(r){let e=D1(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!ir(e))throw new Error("invalid ip address");return e}function Rf(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function z1(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function P1(r){let e=Z(r),t=Uint8Array.from(Qt(e.length));return ze([t,e],t.length+e.length)}function O1(r){let e=kt(r);if(r=r.slice(Fe(e)),r.length!==e)throw new Error("inconsistent lengths");return ie(r)}function M5(r){let e;r[0]==="Q"||r[0]==="1"?e=Ot(Oe.decode(`z${r}`)).bytes:e=V.parse(r).multihash.bytes;let t=Uint8Array.from(Qt(e.length));return ze([t,e],t.length+e.length)}function j5(r){let e=z5.decode(r),t=Uint8Array.from(Qt(e.length));return ze([t,e],t.length+e.length)}function $5(r){let e=kt(r),t=r.slice(Fe(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+ie(t,"base64url")}function H5(r){let e=kt(r),t=r.slice(Fe(e));if(t.length!==e)throw new Error("inconsistent lengths");return ie(t,"base58btc")}function q5(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=nt.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Rf(n);return ze([t,i],t.length+i.length)}function K5(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=nt.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=Rf(n);return ze([t,i],t.length+i.length)}function F1(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=ie(e,"base32"),i=z1(t);return`${n}:${i}`}function V1(r){r=Uf(r);let e=[],t=[],n=null,i=r.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ve(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(o++,o>=i.length)throw j1("invalid address: "+r);if(a.path===!0){n=Uf(i.slice(o).join("/")),e.push([a.code,Cf(a.code,n)]),t.push([a.code,n]);break}let c=Cf(a.code,i[o]);e.push([a.code,c]),t.push([a.code,Tf(a.code,c)])}return{string:M1(t),bytes:Df(e),tuples:e,stringTuples:t,path:n}}function Nf(r){let e=[],t=[],n=null,i=0;for(;i<r.length;){let o=kt(r,i),s=Fe(o),a=ve(o),c=G5(a,r.slice(i+s));if(c===0){e.push([o]),t.push([o]),i+=s;continue}let u=r.slice(i+s,i+s+c);if(i+=c+s,i>r.length)throw j1("Invalid address Uint8Array: "+ie(r,"base16"));e.push([o,u]);let l=Tf(o,u);if(t.push([o,l]),a.path===!0){n=l;break}}return{bytes:Uint8Array.from(r),string:M1(t),tuples:e,stringTuples:t,path:n}}function M1(r){let e=[];return r.map(t=>{let n=ve(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),Uf(e.join("/"))}function Df(r){return ze(r.map(e=>{let t=ve(e[0]),n=Uint8Array.from(Qt(t.code));return e.length>1&&e[1]!=null&&(n=ze([n,e[1]])),n}))}function G5(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=kt(e instanceof Uint8Array?e:Uint8Array.from(e));return t+Fe(t)}}function Uf(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function j1(r){return new Error("Error parsing address: "+r)}var W5=Symbol.for("nodejs.util.inspect.custom"),Lf=Symbol.for("@multiformats/js-multiaddr/multiaddr"),Y5=[ve("dns").code,ve("dns4").code,ve("dns6").code,ve("dnsaddr").code],wl=class r{bytes;#e;#t;#r;#n;[Lf]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=Nf(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=V1(e)}else if(H1(e))t=Nf(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=t.bytes,this.#e=t.string,this.#t=t.tuples,this.#r=t.stringTuples,this.#n=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,i,o="",s=ve("tcp"),a=ve("udp"),c=ve("ip4"),u=ve("ip6"),l=ve("dns6"),p=ve("ip6zone");for(let[d,f]of this.stringTuples())d===p.code&&(o=`%${f??""}`),Y5.includes(d)&&(t=s.name,i=443,n=`${f??""}${o}`,e=d===l.code?6:4),(d===s.code||d===a.code)&&(t=ve(d).name,i=parseInt(f??"")),(d===c.code||d===u.code)&&(t=ve(d).name,n=`${f??""}${o}`,e=d===u.code?6:4);if(e==null||t==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},ve(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ve(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new r(e),new r(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),i=n.lastIndexOf(t);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new r(n.slice(0,i))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new r(Df(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Ho.p2p.code&&e.push([n,i]),n===Ho["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?ie(Oe.decode(`z${n}`),"base58btc"):ie(V.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return ge(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(o=>o.resolvable);if(t==null)return[this];let n=$1.get(t.name);if(n==null)throw new O(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new r(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[W5](){return`Multiaddr(${this.#e})`}};var $1=new Map;function H1(r){return!!r?.[Lf]}function Pf(r){return new wl(r)}async function*bl(r,e={}){let t=r.getReader();try{for(;;){let n=await t.read();if(n.done)return;yield n.value}}finally{e.preventCancel!==!0&&await t.cancel(),t.releaseLock()}}var eh={};j(eh,{Ed25519PrivateKey:()=>Qi,Ed25519PublicKey:()=>Ea,generateKeyPair:()=>sB,generateKeyPairFromSeed:()=>gy,unmarshalEd25519PrivateKey:()=>iB,unmarshalEd25519PublicKey:()=>oB});function or(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function qo(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function X5(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function Of(r,...e){if(!X5(r))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function vl(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");qo(r.outputLen),qo(r.blockLen)}function Ko(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 q1(r,e){Of(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var El=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function K1(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}var Wo=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),gr=(r,e)=>r<<32-e|r>>>e,J5=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!J5)throw new Error("Non little-endian hardware is not supported");var Z5=async()=>{};async function G1(r,e,t){let n=Date.now();for(let i=0;i<r;i++){t(i);let o=Date.now()-n;o>=0&&o<e||(await Z5(),n+=o)}}function Ff(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function ai(r){if(typeof r=="string"&&(r=Ff(r)),!K1(r))throw new Error(`expected Uint8Array, got ${typeof r}`);return r}function Al(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];if(!K1(i))throw new Error("Uint8Array expected");e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let o=r[n];t.set(o,i),i+=o.length}return t}var Go=class{clone(){return this._cloneInto()}},Q5={}.toString;function W1(r,e){if(e!==void 0&&Q5.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function Sl(r){let e=n=>r().update(ai(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function Yo(r=32){if(El&&typeof El.getRandomValues=="function")return El.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function eS(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(t>>i&o),a=Number(t&o),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var Xo=class extends Go{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=Wo(this.buffer)}update(e){Ko(this);let{view:t,buffer:n,blockLen:i}=this;e=ai(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Wo(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ko(this),q1(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let p=s;p<i;p++)t[p]=0;eS(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Wo(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let p=0;p<u;p++)a.setUint32(4*p,l[p],o)}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:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%t&&e.buffer.set(n),e}};var Bl=BigInt(4294967295),zf=BigInt(32);function Y1(r,e=!1){return e?{h:Number(r&Bl),l:Number(r>>zf&Bl)}:{h:Number(r>>zf&Bl)|0,l:Number(r&Bl)|0}}function tS(r,e=!1){let t=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let i=0;i<r.length;i++){let{h:o,l:s}=Y1(r[i],e);[t[i],n[i]]=[o,s]}return[t,n]}var rS=(r,e)=>BigInt(r>>>0)<<zf|BigInt(e>>>0),nS=(r,e,t)=>r>>>t,iS=(r,e,t)=>r<<32-t|e>>>t,oS=(r,e,t)=>r>>>t|e<<32-t,sS=(r,e,t)=>r<<32-t|e>>>t,aS=(r,e,t)=>r<<64-t|e>>>t-32,cS=(r,e,t)=>r>>>t-32|e<<64-t,lS=(r,e)=>e,uS=(r,e)=>r,pS=(r,e,t)=>r<<t|e>>>32-t,dS=(r,e,t)=>e<<t|r>>>32-t,fS=(r,e,t)=>e<<t-32|r>>>64-t,hS=(r,e,t)=>r<<t-32|e>>>64-t;function mS(r,e,t,n){let i=(e>>>0)+(n>>>0);return{h:r+t+(i/2**32|0)|0,l:i|0}}var gS=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),xS=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,yS=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),wS=(r,e,t,n,i)=>e+t+n+i+(r/2**32|0)|0,bS=(r,e,t,n,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(i>>>0),vS=(r,e,t,n,i,o)=>e+t+n+i+o+(r/2**32|0)|0;var ES={fromBig:Y1,split:tS,toBig:rS,shrSH:nS,shrSL:iS,rotrSH:oS,rotrSL:sS,rotrBH:aS,rotrBL:cS,rotr32H:lS,rotr32L:uS,rotlSH:pS,rotlSL:dS,rotlBH:fS,rotlBL:hS,add:mS,add3L:gS,add3H:xS,add4L:yS,add4H:wS,add5H:vS,add5L:bS},ne=ES;var[AS,SS]=ne.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))),ci=new Uint32Array(80),li=new Uint32Array(80),Vf=class extends Xo{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:o,Cl:s,Dh:a,Dl:c,Eh:u,El:l,Fh:p,Fl:m,Gh:d,Gl:f,Hh:h,Hl:x}=this;return[e,t,n,i,o,s,a,c,u,l,p,m,d,f,h,x]}set(e,t,n,i,o,s,a,c,u,l,p,m,d,f,h,x){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=l|0,this.Fh=p|0,this.Fl=m|0,this.Gh=d|0,this.Gl=f|0,this.Hh=h|0,this.Hl=x|0}process(e,t){for(let w=0;w<16;w++,t+=4)ci[w]=e.getUint32(t),li[w]=e.getUint32(t+=4);for(let w=16;w<80;w++){let E=ci[w-15]|0,B=li[w-15]|0,S=ne.rotrSH(E,B,1)^ne.rotrSH(E,B,8)^ne.shrSH(E,B,7),b=ne.rotrSL(E,B,1)^ne.rotrSL(E,B,8)^ne.shrSL(E,B,7),v=ci[w-2]|0,k=li[w-2]|0,U=ne.rotrSH(v,k,19)^ne.rotrBH(v,k,61)^ne.shrSH(v,k,6),R=ne.rotrSL(v,k,19)^ne.rotrBL(v,k,61)^ne.shrSL(v,k,6),M=ne.add4L(b,R,li[w-7],li[w-16]),L=ne.add4H(M,S,U,ci[w-7],ci[w-16]);ci[w]=L|0,li[w]=M|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:u,Dl:l,Eh:p,El:m,Fh:d,Fl:f,Gh:h,Gl:x,Hh:g,Hl:y}=this;for(let w=0;w<80;w++){let E=ne.rotrSH(p,m,14)^ne.rotrSH(p,m,18)^ne.rotrBH(p,m,41),B=ne.rotrSL(p,m,14)^ne.rotrSL(p,m,18)^ne.rotrBL(p,m,41),S=p&d^~p&h,b=m&f^~m&x,v=ne.add5L(y,B,b,SS[w],li[w]),k=ne.add5H(v,g,E,S,AS[w],ci[w]),U=v|0,R=ne.rotrSH(n,i,28)^ne.rotrBH(n,i,34)^ne.rotrBH(n,i,39),M=ne.rotrSL(n,i,28)^ne.rotrBL(n,i,34)^ne.rotrBL(n,i,39),L=n&o^n&a^o&a,ce=i&s^i&c^s&c;g=h|0,y=x|0,h=d|0,x=f|0,d=p|0,f=m|0,{h:p,l:m}=ne.add(u|0,l|0,k|0,U|0),u=a|0,l=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let _=ne.add3L(U,M,ce);n=ne.add3H(_,k,R,L),i=_|0}({h:n,l:i}=ne.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=ne.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=ne.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l}=ne.add(this.Dh|0,this.Dl|0,u|0,l|0),{h:p,l:m}=ne.add(this.Eh|0,this.El|0,p|0,m|0),{h:d,l:f}=ne.add(this.Fh|0,this.Fl|0,d|0,f|0),{h,l:x}=ne.add(this.Gh|0,this.Gl|0,h|0,x|0),{h:g,l:y}=ne.add(this.Hh|0,this.Hl|0,g|0,y|0),this.set(n,i,o,s,a,c,u,l,p,m,d,f,h,x,g,y)}roundClean(){ci.fill(0),li.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 Jo=Sl(()=>new Vf);var Il={};j(Il,{bitGet:()=>RS,bitLen:()=>CS,bitMask:()=>ba,bitSet:()=>US,bytesToHex:()=>pn,bytesToNumberBE:()=>dn,bytesToNumberLE:()=>ui,concatBytes:()=>fn,createHmacDrbg:()=>$f,ensureBytes:()=>Re,equalBytes:()=>_S,hexToBytes:()=>Xi,hexToNumber:()=>jf,isBytes:()=>xr,numberToBytesBE:()=>pi,numberToBytesLE:()=>Ji,numberToHexUnpadded:()=>Q1,numberToVarBytesBE:()=>IS,utf8ToBytes:()=>TS,validateObject:()=>Or});var Z1=BigInt(0),kl=BigInt(1),BS=BigInt(2);function xr(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}var kS=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function pn(r){if(!xr(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=kS[r[t]];return e}function Q1(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function jf(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var un={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function X1(r){if(r>=un._0&&r<=un._9)return r-un._0;if(r>=un._A&&r<=un._F)return r-(un._A-10);if(r>=un._a&&r<=un._f)return r-(un._a-10)}function Xi(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,o=0;i<t;i++,o+=2){let s=X1(r.charCodeAt(o)),a=X1(r.charCodeAt(o+1));if(s===void 0||a===void 0){let c=r[o]+r[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function dn(r){return jf(pn(r))}function ui(r){if(!xr(r))throw new Error("Uint8Array expected");return jf(pn(Uint8Array.from(r).reverse()))}function pi(r,e){return Xi(r.toString(16).padStart(e*2,"0"))}function Ji(r,e){return pi(r,e).reverse()}function IS(r){return Xi(Q1(r))}function Re(r,e,t){let n;if(typeof e=="string")try{n=Xi(e)}catch(o){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${o}`)}else if(xr(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 fn(...r){let e=0;for(let i=0;i<r.length;i++){let o=r[i];if(!xr(o))throw new Error("Uint8Array expected");e+=o.length}let t=new Uint8Array(e),n=0;for(let i=0;i<r.length;i++){let o=r[i];t.set(o,n),n+=o.length}return t}function _S(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 TS(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function CS(r){let e;for(e=0;r>Z1;r>>=kl,e+=1);return e}function RS(r,e){return r>>BigInt(e)&kl}var US=(r,e,t)=>r|(t?kl:Z1)<<BigInt(e),ba=r=>(BS<<BigInt(r-1))-kl,Mf=r=>new Uint8Array(r),J1=r=>Uint8Array.from(r);function $f(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=Mf(r),i=Mf(r),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...p)=>t(i,n,...p),c=(p=Mf())=>{i=a(J1([0]),p),n=a(),p.length!==0&&(i=a(J1([1]),p),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let p=0,m=[];for(;p<e;){n=a();let d=n.slice();m.push(d),p+=n.length}return fn(...m)};return(p,m)=>{s(),c(p);let d;for(;!(d=m(u()));)c();return s(),d}}var NS={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"||xr(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 Or(r,e,t={}){let n=(i,o,s)=>{let a=NS[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=r[i];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(t))n(i,o,!0);return r}var Ye=BigInt(0),Ae=BigInt(1),Zi=BigInt(2),DS=BigInt(3),Hf=BigInt(4),ey=BigInt(5),ty=BigInt(8),LS=BigInt(9),PS=BigInt(16);function be(r,e){let t=r%e;return t>=Ye?t:e+t}function OS(r,e,t){if(t<=Ye||e<Ye)throw new Error("Expected power/modulo > 0");if(t===Ae)return Ye;let n=Ae;for(;e>Ye;)e&Ae&&(n=n*r%t),r=r*r%t,e>>=Ae;return n}function Se(r,e,t){let n=r;for(;e-- >Ye;)n*=n,n%=t;return n}function _l(r,e){if(r===Ye||e<=Ye)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=be(r,e),n=e,i=Ye,o=Ae,s=Ae,a=Ye;for(;t!==Ye;){let u=n/t,l=n%t,p=i-s*u,m=o-a*u;n=t,t=l,i=s,o=a,s=p,a=m}if(n!==Ae)throw new Error("invert: does not exist");return be(i,e)}function FS(r){let e=(r-Ae)/Zi,t,n,i;for(t=r-Ae,n=0;t%Zi===Ye;t/=Zi,n++);for(i=Zi;i<r&&OS(i,e,r)!==r-Ae;i++);if(n===1){let s=(r+Ae)/Hf;return function(c,u){let l=c.pow(u,s);if(!c.eql(c.sqr(l),u))throw new Error("Cannot find square root");return l}}let o=(t+Ae)/Zi;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,l=a.pow(a.mul(a.ONE,i),t),p=a.pow(c,o),m=a.pow(c,t);for(;!a.eql(m,a.ONE);){if(a.eql(m,a.ZERO))return a.ZERO;let d=1;for(let h=a.sqr(m);d<u&&!a.eql(h,a.ONE);d++)h=a.sqr(h);let f=a.pow(l,Ae<<BigInt(u-d-1));l=a.sqr(f),p=a.mul(p,f),m=a.mul(m,l),u=d}return p}}function zS(r){if(r%Hf===DS){let e=(r+Ae)/Hf;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(r%ty===ey){let e=(r-ey)/ty;return function(n,i){let o=n.mul(i,Zi),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,Zi),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return r%PS,FS(r)}var ry=(r,e)=>(be(r,e)&Ae)===Ae,VS=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function qf(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=VS.reduce((n,i)=>(n[i]="function",n),e);return Or(r,t)}function MS(r,e,t){if(t<Ye)throw new Error("Expected power > 0");if(t===Ye)return r.ONE;if(t===Ae)return e;let n=r.ONE,i=e;for(;t>Ye;)t&Ae&&(n=r.mul(n,i)),i=r.sqr(i),t>>=Ae;return n}function jS(r,e){let t=new Array(e.length),n=e.reduce((o,s,a)=>r.is0(s)?o:(t[a]=o,r.mul(o,s)),r.ONE),i=r.inv(n);return e.reduceRight((o,s,a)=>r.is0(s)?o:(t[a]=r.mul(o,t[a]),r.mul(o,s)),i),t}function Kf(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function Tl(r,e,t=!1,n={}){if(r<=Ye)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:i,nByteLength:o}=Kf(r,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=zS(r),a=Object.freeze({ORDER:r,BITS:i,BYTES:o,MASK:ba(i),ZERO:Ye,ONE:Ae,create:c=>be(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&Ae)===Ae,neg:c=>be(-c,r),eql:(c,u)=>c===u,sqr:c=>be(c*c,r),add:(c,u)=>be(c+u,r),sub:(c,u)=>be(c-u,r),mul:(c,u)=>be(c*u,r),pow:(c,u)=>MS(a,c,u),div:(c,u)=>be(c*_l(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>_l(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>jS(a,c),cmov:(c,u,l)=>l?u:c,toBytes:c=>t?Ji(c,o):pi(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return t?ui(c):dn(c)}});return Object.freeze(a)}function ny(r,e){if(!r.isOdd)throw new Error("Field doesn't have isOdd");let t=r.sqrt(e);return r.isOdd(t)?r.neg(t):t}function iy(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 Gf(r){let e=iy(r);return e+Math.ceil(e/2)}function oy(r,e,t=!1){let n=r.length,i=iy(e),o=Gf(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=t?dn(r):ui(r),a=be(s,e-Ae)+Ae;return t?Ji(a,i):pi(a,i)}var HS=BigInt(0),Wf=BigInt(1);function Cl(r,e){let t=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:t,unsafeLadder(i,o){let s=r.ZERO,a=i;for(;o>HS;)o&Wf&&(s=s.add(a)),a=a.double(),o>>=Wf;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],u=i,l=u;for(let p=0;p<s;p++){l=u,c.push(l);for(let m=1;m<a;m++)l=l.add(u),c.push(l);u=l.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),u=r.ZERO,l=r.BASE,p=BigInt(2**i-1),m=2**i,d=BigInt(i);for(let f=0;f<a;f++){let h=f*c,x=Number(s&p);s>>=d,x>c&&(x-=m,s+=Wf);let g=h,y=h+Math.abs(x)-1,w=f%2!==0,E=x<0;x===0?l=l.add(t(w,o[g])):u=u.add(t(E,o[y]))}return{p:u,f:l}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,c),c!==1&&o.set(i,a(u))),this.wNAF(c,u,s)}}}function va(r){return qf(r.Fp),Or(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Kf(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var yr=BigInt(0),Mt=BigInt(1),Rl=BigInt(2),qS=BigInt(8),KS={zip215:!0};function GS(r){let e=va(r);return Or(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Ul(r){let e=GS(r),{Fp:t,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=Rl<<BigInt(a*8)-Mt,l=t.create,p=e.uvRatio||((N,T)=>{try{return{isValid:!0,value:t.sqrt(N*t.inv(T))}}catch{return{isValid:!1,value:yr}}}),m=e.adjustScalarBytes||(N=>N),d=e.domain||((N,T,H)=>{if(T.length||H)throw new Error("Contexts/pre-hash are not supported");return N}),f=N=>typeof N=="bigint"&&yr<N,h=(N,T)=>f(N)&&f(T)&&N<T,x=N=>N===yr||h(N,u);function g(N,T){if(h(N,T))return N;throw new Error(`Expected valid scalar < ${T}, got ${typeof N} ${N}`)}function y(N){return N===yr?N:g(N,n)}let w=new Map;function E(N){if(!(N instanceof B))throw new Error("ExtendedPoint expected")}class B{constructor(T,H,Y,Q){if(this.ex=T,this.ey=H,this.ez=Y,this.et=Q,!x(T))throw new Error("x required");if(!x(H))throw new Error("y required");if(!x(Y))throw new Error("z required");if(!x(Q))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(T){if(T instanceof B)throw new Error("extended point not allowed");let{x:H,y:Y}=T||{};if(!x(H)||!x(Y))throw new Error("invalid affine point");return new B(H,Y,Mt,l(H*Y))}static normalizeZ(T){let H=t.invertBatch(T.map(Y=>Y.ez));return T.map((Y,Q)=>Y.toAffine(H[Q])).map(B.fromAffine)}_setWindowSize(T){this._WINDOW_SIZE=T,w.delete(this)}assertValidity(){let{a:T,d:H}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:Y,ey:Q,ez:se,et:le}=this,we=l(Y*Y),de=l(Q*Q),he=l(se*se),je=l(he*he),_e=l(we*T),tt=l(he*l(_e+de)),rt=l(je+l(H*l(we*de)));if(tt!==rt)throw new Error("bad point: equation left != right (1)");let We=l(Y*Q),ut=l(se*le);if(We!==ut)throw new Error("bad point: equation left != right (2)")}equals(T){E(T);let{ex:H,ey:Y,ez:Q}=this,{ex:se,ey:le,ez:we}=T,de=l(H*we),he=l(se*Q),je=l(Y*we),_e=l(le*Q);return de===he&&je===_e}is0(){return this.equals(B.ZERO)}negate(){return new B(l(-this.ex),this.ey,this.ez,l(-this.et))}double(){let{a:T}=e,{ex:H,ey:Y,ez:Q}=this,se=l(H*H),le=l(Y*Y),we=l(Rl*l(Q*Q)),de=l(T*se),he=H+Y,je=l(l(he*he)-se-le),_e=de+le,tt=_e-we,rt=de-le,We=l(je*tt),ut=l(_e*rt),cn=l(je*rt),Mi=l(tt*_e);return new B(We,ut,Mi,cn)}add(T){E(T);let{a:H,d:Y}=e,{ex:Q,ey:se,ez:le,et:we}=this,{ex:de,ey:he,ez:je,et:_e}=T;if(H===BigInt(-1)){let Ax=l((se-Q)*(he+de)),Sx=l((se+Q)*(he-de)),Ed=l(Sx-Ax);if(Ed===yr)return this.double();let Bx=l(le*Rl*_e),kx=l(we*Rl*je),Ix=kx+Bx,_x=Sx+Ax,Tx=kx-Bx,p8=l(Ix*Ed),d8=l(_x*Tx),f8=l(Ix*Tx),h8=l(Ed*_x);return new B(p8,d8,h8,f8)}let tt=l(Q*de),rt=l(se*he),We=l(we*Y*_e),ut=l(le*je),cn=l((Q+se)*(de+he)-tt-rt),Mi=ut-We,ca=ut+We,Ex=l(rt-H*tt),a8=l(cn*Mi),c8=l(ca*Ex),l8=l(cn*Ex),u8=l(Mi*ca);return new B(a8,c8,u8,l8)}subtract(T){return this.add(T.negate())}wNAF(T){return v.wNAFCached(this,w,T,B.normalizeZ)}multiply(T){let{p:H,f:Y}=this.wNAF(g(T,n));return B.normalizeZ([H,Y])[0]}multiplyUnsafe(T){let H=y(T);return H===yr?b:this.equals(b)||H===Mt?this:this.equals(S)?this.wNAF(H).p:v.unsafeLadder(this,H)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return v.unsafeLadder(this,n).is0()}toAffine(T){let{ex:H,ey:Y,ez:Q}=this,se=this.is0();T==null&&(T=se?qS:t.inv(Q));let le=l(H*T),we=l(Y*T),de=l(Q*T);if(se)return{x:yr,y:Mt};if(de!==Mt)throw new Error("invZ was invalid");return{x:le,y:we}}clearCofactor(){let{h:T}=e;return T===Mt?this:this.multiplyUnsafe(T)}static fromHex(T,H=!1){let{d:Y,a:Q}=e,se=t.BYTES;T=Re("pointHex",T,se);let le=T.slice(),we=T[se-1];le[se-1]=we&-129;let de=ui(le);de===yr||(H?g(de,u):g(de,t.ORDER));let he=l(de*de),je=l(he-Mt),_e=l(Y*he-Q),{isValid:tt,value:rt}=p(je,_e);if(!tt)throw new Error("Point.fromHex: invalid y coordinate");let We=(rt&Mt)===Mt,ut=(we&128)!==0;if(!H&&rt===yr&&ut)throw new Error("Point.fromHex: x=0 and x_0=1");return ut!==We&&(rt=l(-rt)),B.fromAffine({x:rt,y:de})}static fromPrivateKey(T){return R(T).point}toRawBytes(){let{x:T,y:H}=this.toAffine(),Y=Ji(H,t.BYTES);return Y[Y.length-1]|=T&Mt?128:0,Y}toHex(){return pn(this.toRawBytes())}}B.BASE=new B(e.Gx,e.Gy,Mt,l(e.Gx*e.Gy)),B.ZERO=new B(yr,Mt,Mt,yr);let{BASE:S,ZERO:b}=B,v=Cl(B,a*8);function k(N){return be(N,n)}function U(N){return k(ui(N))}function R(N){let T=a;N=Re("private key",N,T);let H=Re("hashed private key",o(N),2*T),Y=m(H.slice(0,T)),Q=H.slice(T,2*T),se=U(Y),le=S.multiply(se),we=le.toRawBytes();return{head:Y,prefix:Q,scalar:se,point:le,pointBytes:we}}function M(N){return R(N).pointBytes}function L(N=new Uint8Array,...T){let H=fn(...T);return U(o(d(H,Re("context",N),!!i)))}function ce(N,T,H={}){N=Re("message",N),i&&(N=i(N));let{prefix:Y,scalar:Q,pointBytes:se}=R(T),le=L(H.context,Y,N),we=S.multiply(le).toRawBytes(),de=L(H.context,we,se,N),he=k(le+de*Q);y(he);let je=fn(we,Ji(he,t.BYTES));return Re("result",je,a*2)}let _=KS;function D(N,T,H,Y=_){let{context:Q,zip215:se}=Y,le=t.BYTES;N=Re("signature",N,2*le),T=Re("message",T),i&&(T=i(T));let we=ui(N.slice(le,2*le)),de,he,je;try{de=B.fromHex(H,se),he=B.fromHex(N.slice(0,le),se),je=S.multiplyUnsafe(we)}catch{return!1}if(!se&&de.isSmallOrder())return!1;let _e=L(Q,he.toRawBytes(),de.toRawBytes(),T);return he.add(de.multiplyUnsafe(_e)).subtract(je).clearCofactor().equals(B.ZERO)}return S._setWindowSize(8),{CURVE:e,getPublicKey:M,sign:ce,verify:D,ExtendedPoint:B,utils:{getExtendedPublicKey:R,randomPrivateKey:()=>s(t.BYTES),precompute(N=8,T=B.BASE){return T._setWindowSize(N),T.multiply(BigInt(3)),T}}}}var Xf=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),sy=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),uz=BigInt(0),WS=BigInt(1),Yf=BigInt(2),YS=BigInt(5),ay=BigInt(10),XS=BigInt(20),JS=BigInt(40),cy=BigInt(80);function ZS(r){let e=Xf,n=r*r%e*r%e,i=Se(n,Yf,e)*n%e,o=Se(i,WS,e)*r%e,s=Se(o,YS,e)*o%e,a=Se(s,ay,e)*s%e,c=Se(a,XS,e)*a%e,u=Se(c,JS,e)*c%e,l=Se(u,cy,e)*u%e,p=Se(l,cy,e)*u%e,m=Se(p,ay,e)*s%e;return{pow_p_5_8:Se(m,Yf,e)*r%e,b2:n}}function QS(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function eB(r,e){let t=Xf,n=be(e*e*e,t),i=be(n*n*e,t),o=ZS(r*i).pow_p_5_8,s=be(r*n*o,t),a=be(e*s*s,t),c=s,u=be(s*sy,t),l=a===r,p=a===be(-r,t),m=a===be(-r*sy,t);return l&&(s=c),(p||m)&&(s=u),ry(s,t)&&(s=be(-s,t)),{isValid:l||p,value:s}}var hn=Tl(Xf,void 0,!0),Jf={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:hn,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Jo,randomBytes:Yo,adjustScalarBytes:QS,uvRatio:eB},Zo=Ul(Jf);function ly(r,e,t){if(e.length>255)throw new Error("Context is too big");return Al(Ff("SigEd25519 no Ed25519 collisions"),new Uint8Array([t?1:0,e.length]),e,r)}var pz=Ul({...Jf,domain:ly}),dz=Ul({...Jf,domain:ly,prehash:Jo});var tB=(hn.ORDER+BigInt(3))/BigInt(8),fz=hn.pow(Yf,tB),hz=hn.sqrt(hn.neg(hn.ONE)),mz=(hn.ORDER-BigInt(5))/BigInt(8),gz=BigInt(486662);var xz=ny(hn,hn.neg(BigInt(486664)));var yz=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),wz=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),bz=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),vz=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var Ez=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var Qo=32,mn=64,Nl=32;function uy(){let r=Zo.utils.randomPrivateKey(),e=Zo.getPublicKey(r);return{privateKey:hy(r,e),publicKey:e}}function py(r){if(r.length!==Nl)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=Zo.getPublicKey(e);return{privateKey:hy(e,t),publicKey:t}}function dy(r,e){let t=r.subarray(0,Nl);return Zo.sign(e instanceof Uint8Array?e:e.subarray(),t)}function fy(r,e,t){return Zo.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function hy(r,e){let t=new Uint8Array(mn);for(let n=0;n<Nl;n++)t[n]=r[n],t[Nl+n]=e[n];return t}var xt={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 Zf={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function my(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,i=r?.digest??"SHA-256",o=r?.saltLength??16,s=r?.iterations??32767,a=xt.get();t*=8;async function c(p,m){let d=a.getRandomValues(new Uint8Array(o)),f=a.getRandomValues(new Uint8Array(n)),h={name:e,iv:f};typeof m=="string"&&(m=Z(m));let x;if(m.length===0){x=await a.subtle.importKey("jwk",Zf,{name:"AES-GCM"},!0,["encrypt"]);try{let y={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},w=await a.subtle.importKey("raw",m,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(y,w,{name:e,length:t},!0,["encrypt"])}catch{x=await a.subtle.importKey("jwk",Zf,{name:"AES-GCM"},!0,["encrypt"])}}else{let y={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},w=await a.subtle.importKey("raw",m,{name:"PBKDF2"},!1,["deriveKey"]);x=await a.subtle.deriveKey(y,w,{name:e,length:t},!0,["encrypt"])}let g=await a.subtle.encrypt(h,x,p);return ze([d,h.iv,new Uint8Array(g)])}async function u(p,m){let d=p.subarray(0,o),f=p.subarray(o,o+n),h=p.subarray(o+n),x={name:e,iv:f};typeof m=="string"&&(m=Z(m));let g;if(m.length===0)try{let w={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},E=await a.subtle.importKey("raw",m,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,E,{name:e,length:t},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",Zf,{name:"AES-GCM"},!0,["decrypt"])}else{let w={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},E=await a.subtle.importKey("raw",m,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(w,E,{name:e,length:t},!0,["decrypt"])}let y=await a.subtle.decrypt(x,g,h);return new Uint8Array(y)}return{encrypt:c,decrypt:u}}async function es(r,e){let n=await my().encrypt(r,e);return Lr.encode(n)}var Be;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(Be||(Be={}));var Qf;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(Qf||(Qf={}));(function(r){r.codec=()=>Gi(Qf)})(Be||(Be={}));var Fr;(function(r){let e;r.codec=()=>(e==null&&(e=nr((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),Be.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Type=Be.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>rr(t,r.codec()),r.decode=t=>er(t,r.codec())})(Fr||(Fr={}));var zr;(function(r){let e;r.codec=()=>(e==null&&(e=nr((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),Be.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Type=Be.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>rr(t,r.codec()),r.decode=t=>er(t,r.codec())})(zr||(zr={}));var Ea=class{_key;constructor(e){this._key=ts(e,Qo)}verify(e,t){return fy(this._key,t,e)}marshal(){return this._key}get bytes(){return Fr.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}hash(){let e=ae.digest(this.bytes);return or(e)?e.then(({bytes:t})=>t):e.bytes}},Qi=class{_key;_publicKey;constructor(e,t){this._key=ts(e,mn),this._publicKey=ts(t,Qo)}sign(e){return dy(this._key,e)}get public(){return new Ea(this._publicKey)}marshal(){return this._key}get bytes(){return zr.encode({Type:Be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}async hash(){let e=ae.digest(this.bytes),t;return or(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=It.digest(this.public.bytes);return Oe.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return es(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function iB(r){if(r.length>mn){r=ts(r,mn+Qo);let n=r.subarray(0,mn),i=r.subarray(mn,r.length);return new Qi(n,i)}r=ts(r,mn);let e=r.subarray(0,mn),t=r.subarray(Qo);return new Qi(e,t)}function oB(r){return r=ts(r,Qo),new Ea(r)}async function sB(){let{privateKey:r,publicKey:e}=uy();return new Qi(r,e)}async function gy(r){let{privateKey:e,publicKey:t}=py(r);return new Qi(e,t)}function ts(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new O(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var uh={};j(uh,{MAX_RSA_KEY_SIZE:()=>Da,RsaPrivateKey:()=>ss,RsaPublicKey:()=>Na,fromJwk:()=>NB,generateKeyPair:()=>DB,unmarshalRsaPrivateKey:()=>ch,unmarshalRsaPublicKey:()=>UB});function eo(r){if(isNaN(r)||r<=0)throw new O("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return Yo(r)}var mi={};j(mi,{exportToPem:()=>IB,importFromPem:()=>_B,jwkToPkcs1:()=>AB,jwkToPkix:()=>BB,pkcs1ToJwk:()=>EB,pkixToJwk:()=>SB});var Ll=class extends Go{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,vl(e);let n=ai(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,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Ko(this),this.iHash.update(e),this}digestInto(e){Ko(this),Of(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:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,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()}},Aa=(r,e,t)=>new Ll(r,e).update(t).digest();Aa.create=(r,e)=>new Ll(r,e);function aB(r,e,t,n){vl(r);let i=W1({dkLen:32,asyncTick:10},n),{c:o,dkLen:s,asyncTick:a}=i;if(qo(o),qo(s),qo(a),o<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=ai(e),u=ai(t),l=new Uint8Array(s),p=Aa.create(r,c),m=p._cloneInto().update(u);return{c:o,dkLen:s,asyncTick:a,DK:l,PRF:p,PRFSalt:m}}function cB(r,e,t,n,i){return r.destroy(),e.destroy(),n&&n.destroy(),i.fill(0),t}async function th(r,e,t,n){let{c:i,dkLen:o,asyncTick:s,DK:a,PRF:c,PRFSalt:u}=aB(r,e,t,n),l,p=new Uint8Array(4),m=Wo(p),d=new Uint8Array(c.outputLen);for(let f=1,h=0;h<o;f++,h+=c.outputLen){let x=a.subarray(h,h+c.outputLen);m.setInt32(0,f,!1),(l=u._cloneInto(l)).update(p).digestInto(d),x.set(d.subarray(0,x.length)),await G1(i-1,s,()=>{c._cloneInto(l).update(d).digestInto(d);for(let g=0;g<x.length;g++)x[g]^=d[g]})}return cB(c,u,a,l,d)}var pe=ee(xy());function to(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 di(r,e,t=-1){let n=t,i=r,o=0,s=Math.pow(2,e);for(let a=1;a<8;a++){if(r<s){let c;if(n<0)c=new ArrayBuffer(a),o=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),o=n}let u=new Uint8Array(c);for(let l=a-1;l>=0;l--){let p=Math.pow(2,l*e);u[o-l-1]=Math.floor(i/p),i-=u[o-l-1]*p}return c}s*=Math.pow(2,e)}return new ArrayBuffer(0)}function Fl(...r){let e=0,t=0;for(let o of r)e+=o.length;let n=new ArrayBuffer(e),i=new Uint8Array(n);for(let o of r)i.set(o,t),t+=o.length;return i}function nh(){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=to(t,8),i=new ArrayBuffer(this.valueHex.byteLength),o=new Uint8Array(i);for(let a=0;a<this.valueHex.byteLength;a++)o[a]=r[a];return o[0]&=127,to(o,8)-n}function yy(r){let e=r<0?r*-1:r,t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){let s=t-e,a=di(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let i=di(e,8,n),o=new Uint8Array(i);if(o[0]&128){let s=i.slice(0),a=new Uint8Array(s);i=new ArrayBuffer(i.byteLength+1),o=new Uint8Array(i);for(let c=0;c<s.byteLength;c++)o[c+1]=a[c];o[0]=0}return i}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function wy(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 _t(r,e){let t=r.toString(10);if(e<t.length)return"";let n=e-t.length,i=new Array(n);for(let s=0;s<n;s++)i[s]="0";return i.join("").concat(t)}var Xz=Math.log(2);function zl(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function ih(r){let e=0,t=0;for(let i=0;i<r.length;i++){let o=r[i];e+=o.byteLength}let n=new Uint8Array(e);for(let i=0;i<r.length;i++){let o=r[i];n.set(new Uint8Array(o),t),t+=o.byteLength}return n.buffer}function bn(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 Ba=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return ih(this.items)}},Sa=[new Uint8Array([1])],by="0123456789";var is="",br=new ArrayBuffer(0),oh=new Uint8Array(0),ka="EndOfContent",Ey="OCTET STRING",Ay="BIT STRING";function vn(r){var e;return e=class extends r{constructor(...n){var i;super(...n);let o=n[0]||{};this.isHexOnly=(i=o.isHexOnly)!==null&&i!==void 0?i:!1,this.valueHexView=o.valueHex?pe.BufferSourceConverter.toUint8Array(o.valueHex):oh}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,i,o){let s=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!bn(this,s,i,o))return-1;let a=i+o;return this.valueHexView=s.subarray(i,a),this.valueHexView.length?(this.blockLength=o,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",br)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:pe.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var xn=class{constructor({blockLength:e=0,error:t=is,warnings:n=[],valueBeforeDecode:i=oh}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=pe.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:pe.Convert.ToHex(this.valueBeforeDecodeView)}}};xn.NAME="baseBlock";var ft=class extends xn{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'")}};ft.NAME="valueBlock";var Vl=class extends vn(xn){constructor({idBlock:e={}}={}){var t,n,i,o;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?pe.BufferSourceConverter.toUint8Array(e.valueHex):oh,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(i=e.tagNumber)!==null&&i!==void 0?i:-1,this.isConstructed=(o=e.isConstructed)!==null&&o!==void 0?o:!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",br}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let i=new Uint8Array(1);if(!e){let o=this.tagNumber;o&=31,t|=o,i[0]=t}return i.buffer}if(!this.isHexOnly){let i=di(this.tagNumber,7),o=new Uint8Array(i),s=i.byteLength,a=new Uint8Array(s+1);if(a[0]=t|31,!e){for(let c=0;c<s-1;c++)a[c+1]=o[c]|128;a[s]=o[s-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){let i=this.valueHexView;for(let o=0;o<i.length-1;o++)n[o+1]=i[o]|128;n[this.valueHexView.byteLength]=i[i.length-1]}return n.buffer}fromBER(e,t,n){let i=pe.BufferSourceConverter.toUint8Array(e);if(!bn(this,i,t,n))return-1;let o=i.subarray(t,t+n);if(o.length===0)return this.error="Zero buffer length",-1;switch(o[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=(o[0]&32)===32,this.isHexOnly=!1;let a=o[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,u=this.valueHexView=new Uint8Array(255),l=255;for(;o[c]&128;){if(u[c-1]=o[c]&127,c++,c>=o.length)return this.error="End of input reached before message was fully decoded",-1;if(c===l){l+=255;let m=new Uint8Array(l);for(let d=0;d<u.length;d++)m[d]=u[d];u=this.valueHexView=new Uint8Array(l)}}this.blockLength=c+1,u[c-1]=o[c]&127;let p=new Uint8Array(c);for(let m=0;m<c;m++)p[m]=u[m];u=this.valueHexView=new Uint8Array(c),u.set(p),this.blockLength<=9?this.tagNumber=to(u,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}}};Vl.NAME="identificationBlock";var Ml=class extends xn{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=pe.BufferSourceConverter.toUint8Array(e);if(!bn(this,i,t,n))return-1;let o=i.subarray(t,t+n);if(o.length===0)return this.error="Zero buffer length",-1;if(o[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=o[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(o[0]&128),this.longFormUsed===!1)return this.length=o[0],this.blockLength=1,t+this.blockLength;let s=o[0]&127;if(s>8)return this.error="Too big integer",-1;if(s+1>o.length)return this.error="End of input reached before message was fully decoded",-1;let a=t+1,c=i.subarray(a,a+s);return c[s-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=to(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+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=di(this.length,8);if(i.byteLength>127)return this.error="Too big length",br;if(t=new ArrayBuffer(i.byteLength+1),e)return t;let o=new Uint8Array(i);n=new Uint8Array(t),n[0]=i.byteLength|128;for(let s=0;s<i.byteLength;s++)n[s+1]=o[s];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}}};Ml.NAME="lengthBlock";var $={},it=class extends xn{constructor({name:e=is,optional:t=!1,primitiveSchema:n,...i}={},o){super(i),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new Vl(i),this.lenBlock=new Ml(i),this.valueBlock=o?new o(i):new ft(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 Ba;t||Sy(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 o=this.valueBlock.toBER(e);this.lenBlock.length=o.byteLength;let s=this.lenBlock.toBER(e);n.write(s),n.write(o)}return t?br: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():pe.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${pe.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 wy(t,n)}};it.NAME="BaseBlock";function Sy(r){if(r instanceof $.Constructed)for(let e of r.valueBlock.value)Sy(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var jl=class extends it{constructor({value:e=is,...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}'`}};jl.NAME="BaseStringBlock";var $l=class extends vn(ft){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};$l.NAME="PrimitiveValueBlock";var By,Hl=class extends it{constructor(e={}){super(e,$l),this.idBlock.isConstructed=!1}};By=Hl;$.Primitive=By;Hl.NAME="PRIMITIVE";function xB(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 Au(r,e=0,t=r.length){let n=e,i=new it({},ft),o=new xn;if(!bn(o,r,e,t))return i.error=o.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=it;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=$.EndOfContent;break;case 1:c=$.Boolean;break;case 2:c=$.Integer;break;case 3:c=$.BitString;break;case 4:c=$.OctetString;break;case 5:c=$.Null;break;case 6:c=$.ObjectIdentifier;break;case 10:c=$.Enumerated;break;case 12:c=$.Utf8String;break;case 13:c=$.RelativeObjectIdentifier;break;case 14:c=$.TIME;break;case 15:return i.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:i};case 16:c=$.Sequence;break;case 17:c=$.Set;break;case 18:c=$.NumericString;break;case 19:c=$.PrintableString;break;case 20:c=$.TeletexString;break;case 21:c=$.VideotexString;break;case 22:c=$.IA5String;break;case 23:c=$.UTCTime;break;case 24:c=$.GeneralizedTime;break;case 25:c=$.GraphicString;break;case 26:c=$.VisibleString;break;case 27:c=$.GeneralString;break;case 28:c=$.UniversalString;break;case 29:c=$.CharacterString;break;case 30:c=$.BmpString;break;case 31:c=$.DATE;break;case 32:c=$.TimeOfDay;break;case 33:c=$.DateTime;break;case 34:c=$.Duration;break;default:{let u=i.idBlock.isConstructed?new $.Constructed:new $.Primitive;u.idBlock=i.idBlock,u.lenBlock=i.lenBlock,u.warnings=i.warnings,i=u}}break;case 2:case 3:case 4:default:c=i.idBlock.isConstructed?$.Constructed:$.Primitive}return i=xB(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 os(r){if(!r.byteLength){let e=new it({},ft);return e.error="Input buffer has zero length",{offset:-1,result:e}}return Au(pe.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function yB(r,e){return r?1:e}var Vr=class extends ft{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let i=pe.BufferSourceConverter.toUint8Array(e);if(!bn(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 o=t;for(;yB(this.isIndefiniteForm,n)>0;){let s=Au(i,o,n);if(s.offset===-1)return this.error=s.result.error,this.warnings.concat(s.result.warnings),-1;if(o=s.offset,this.blockLength+=s.result.blockLength,n-=s.result.blockLength,this.value.push(s.result),this.isIndefiniteForm&&s.result.constructor.NAME===ka)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===ka?this.value.pop():this.warnings.push("No EndOfContent block encoded")),o}toBER(e,t){let n=t||new Ba;for(let i=0;i<this.value.length;i++)this.value[i].toBER(e,n);return t?br:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};Vr.NAME="ConstructedValueBlock";var ky,fi=class extends it{constructor(e={}){super(e,Vr),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 HeliaVerifiedFetch=(()=>{var D2=Object.create;var sa=Object.defineProperty;var P2=Object.getOwnPropertyDescriptor;var O2=Object.getOwnPropertyNames;var F2=Object.getPrototypeOf,V2=Object.prototype.hasOwnProperty;var me=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),Ae=(r,e)=>{for(var t in e)sa(r,t,{get:e[t],enumerable:!0})},Mf=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of O2(e))!V2.call(r,i)&&i!==t&&sa(r,i,{get:()=>e[i],enumerable:!(n=P2(e,i))||n.enumerable});return r};var re=(r,e,t)=>(t=r!=null?D2(F2(r)):{},Mf(e||!r||!r.__esModule?sa(t,"default",{value:r,enumerable:!0}):t,r)),M2=r=>Mf(sa({},"__esModule",{value:!0}),r);var mu=me((c8,n0)=>{var Fi=1e3,Vi=Fi*60,Mi=Vi*60,ri=Mi*24,Tx=ri*7,Cx=ri*365.25;n0.exports=function(r,e){e=e||{};var t=typeof r;if(t==="string"&&r.length>0)return Nx(r);if(t==="number"&&isFinite(r))return e.long?Lx(r):Ux(r);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(r))};function Nx(r){if(r=String(r),!(r.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(r);if(e){var t=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return t*Cx;case"weeks":case"week":case"w":return t*Tx;case"days":case"day":case"d":return t*ri;case"hours":case"hour":case"hrs":case"hr":case"h":return t*Mi;case"minutes":case"minute":case"mins":case"min":case"m":return t*Vi;case"seconds":case"second":case"secs":case"sec":case"s":return t*Fi;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Ux(r){var e=Math.abs(r);return e>=ri?Math.round(r/ri)+"d":e>=Mi?Math.round(r/Mi)+"h":e>=Vi?Math.round(r/Vi)+"m":e>=Fi?Math.round(r/Fi)+"s":r+"ms"}function Lx(r){var e=Math.abs(r);return e>=ri?ua(r,e,ri,"day"):e>=Mi?ua(r,e,Mi,"hour"):e>=Vi?ua(r,e,Vi,"minute"):e>=Fi?ua(r,e,Fi,"second"):r+" ms"}function ua(r,e,t,n){var i=e>=t*1.5;return Math.round(r/t)+" "+n+(i?"s":"")}});var o0=me((l8,i0)=>{function Dx(r){t.debug=t,t.default=t,t.coerce=c,t.disable=o,t.enable=i,t.enabled=s,t.humanize=mu(),t.destroy=u,Object.keys(r).forEach(l=>{t[l]=r[l]}),t.names=[],t.skips=[],t.formatters={};function e(l){let h=0;for(let p=0;p<l.length;p++)h=(h<<5)-h+l.charCodeAt(p),h|=0;return t.colors[Math.abs(h)%t.colors.length]}t.selectColor=e;function t(l){let h,p=null,d,f;function m(...y){if(!m.enabled)return;let g=m,w=Number(new Date),x=w-(h||w);g.diff=x,g.prev=h,g.curr=w,h=w,y[0]=t.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let A=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(B,v)=>{if(B==="%%")return"%";A++;let E=t.formatters[v];if(typeof E=="function"){let R=y[A];B=E.call(g,R),y.splice(A,1),A--}return B}),t.formatArgs.call(g,y),(g.log||t.log).apply(g,y)}return m.namespace=l,m.useColors=t.useColors(),m.color=t.selectColor(l),m.extend=n,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(d!==t.namespaces&&(d=t.namespaces,f=t.enabled(l)),f),set:y=>{p=y}}),typeof t.init=="function"&&t.init(m),m}function n(l,h){let p=t(this.namespace+(typeof h>"u"?":":h)+l);return p.log=this.log,p}function i(l){t.save(l),t.namespaces=l,t.names=[],t.skips=[];let h,p=(typeof l=="string"?l:"").split(/[\s,]+/),d=p.length;for(h=0;h<d;h++)p[h]&&(l=p[h].replace(/\*/g,".*?"),l[0]==="-"?t.skips.push(new RegExp("^"+l.slice(1)+"$")):t.names.push(new RegExp("^"+l+"$")))}function o(){let l=[...t.names.map(a),...t.skips.map(a).map(h=>"-"+h)].join(",");return t.enable(""),l}function s(l){if(l[l.length-1]==="*")return!0;let h,p;for(h=0,p=t.skips.length;h<p;h++)if(t.skips[h].test(l))return!1;for(h=0,p=t.names.length;h<p;h++)if(t.names[h].test(l))return!0;return!1}function a(l){return l.toString().substring(2,l.toString().length-2).replace(/\.\*\?$/,"*")}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}i0.exports=Dx});var yu=me((vt,ha)=>{vt.formatArgs=Ox;vt.save=Fx;vt.load=Vx;vt.useColors=Px;vt.storage=Mx();vt.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();vt.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Px(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Ox(r){if(r[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+r[0]+(this.useColors?"%c ":" ")+"+"+ha.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;r.splice(1,0,e,"color: inherit");let t=0,n=0;r[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(t++,i==="%c"&&(n=t))}),r.splice(n,0,e)}vt.log=console.debug||console.log||(()=>{});function Fx(r){try{r?vt.storage.setItem("debug",r):vt.storage.removeItem("debug")}catch{}}function Vx(){let r;try{r=vt.storage.getItem("debug")}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}function Mx(){try{return localStorage}catch{}}ha.exports=o0()(vt);var{formatters:Hx}=ha.exports;Hx.j=function(r){try{return JSON.stringify(r)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var Re=me((UI,S0)=>{"use strict";function I0(r,e){for(let t in e)Object.defineProperty(r,t,{value:e[t],enumerable:!0,configurable:!0});return r}function Ib(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 I0(r,t)}catch{t.message=r.message,t.stack=r.stack;let i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(r)),I0(new i,t)}}S0.exports=Ib});var vp=me(ao=>{"use strict";var y3="[object ArrayBuffer]",Gr=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===y3}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 o=0;o<n.length;o++)if(n[o]!==i[o])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 s of t)n+=s.byteLength;let i=new Uint8Array(n),o=0;for(let s of t){let a=this.toUint8Array(s);i.set(a,o),o+=a.length}return e[e.length-1]instanceof Function?this.toView(i,e[e.length-1]):i.buffer}},Sh="string",g3=/^[0-9a-f]+$/i,w3=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,x3=/^[a-zA-Z0-9-_]+$/,$a=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=Gr.toUint8Array(e),n="";for(let o=0;o<t.length;o++)n+=String.fromCharCode(t[o]);return decodeURIComponent(escape(n))}},Ht=class{static toString(e,t=!1){let n=Gr.toArrayBuffer(e),i=new DataView(n),o="";for(let s=0;s<n.byteLength;s+=2){let a=i.getUint16(s,t);o+=String.fromCharCode(a)}return o}static fromString(e,t=!1){let n=new ArrayBuffer(e.length*2),i=new DataView(n);for(let o=0;o<e.length;o++)i.setUint16(o*2,e.charCodeAt(o),t);return n}},za=class r{static isHex(e){return typeof e===Sh&&g3.test(e)}static isBase64(e){return typeof e===Sh&&w3.test(e)}static isBase64Url(e){return typeof e===Sh&&x3.test(e)}static ToString(e,t="utf8"){let n=Gr.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 Ht.toString(n,!0);case"utf16":case"utf16be":return Ht.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 Ht.fromString(e,!0);case"utf16":case"utf16be":return Ht.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=Gr.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 $a.fromString(e);case"utf16":case"utf16be":return Ht.fromString(e);case"utf16le":case"usc2":return Ht.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 $a.toString(e);case"utf16":case"utf16be":return Ht.toString(e);case"utf16le":case"usc2":return Ht.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=Gr.toUint8Array(e),n="";for(let i=0;i<t.length;i++)n+=String.fromCharCode(t[i]);return n}static ToHex(e){let t=Gr.toUint8Array(e),n="",i=t.length;for(let o=0;o<i;o++){let s=t[o];s<16&&(n+="0"),n+=s.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 o=t.slice(i,i+2);n[i/2]=parseInt(o,16)}return n.buffer}static ToUtf16String(e,t=!1){return Ht.toString(e,t)}static FromUtf16String(e,t=!1){return Ht.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,"")||""}};za.DEFAULT_UTF8_ENCODING="utf8";function b3(r,...e){let t=arguments[0];for(let n=1;n<arguments.length;n++){let i=arguments[n];for(let o in i)t[o]=i[o]}return t}function E3(...r){let e=r.map(i=>i.byteLength).reduce((i,o)=>i+o),t=new Uint8Array(e),n=0;return r.map(i=>new Uint8Array(i)).forEach(i=>{for(let o of i)t[n++]=o}),t.buffer}function v3(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}ao.BufferSourceConverter=Gr;ao.Convert=za;ao.assign=b3;ao.combine=E3;ao.isEqual=v3});var Nc=me((Xk,Hh)=>{var Yk=function(){typeof Hh<"u"&&(Hh.exports=m);var r=86400,e=3200,t=146097*e/400,n=r*t,i=1e3*n,o=864e13,s=4294967296,a=1e6,c="000000000",u=Math.trunc||function(E){var R=E-E%1;return R==0&&(E<0||E===0&&1/E!=1/0)?-0:R},l=m.prototype,h=(m.fromDate=function(E){return new m(+E)},m.fromInt64BE=A(0,1,2,3,0,4),m.fromInt64LE=A(3,2,1,0,4,0),m.fromString=function(T){var R,N=new m,T=(T+="").replace(/^\s*[+\-]?\d+/,function(D){var D=+D,ne=1970+(D-1970)%400;return N.year=D-ne,ne}).replace(/(?:Z|([+\-]\d{2}):?(\d{2}))$/,function(M,D,ne){return D<0&&(ne*=-1),R=6e4*(60*+D+ +ne),""}).replace(/\.\d+$/,function(M){return N.nano=+(M+c).substr(1,9),""}).split(/\D+/);if(1<T.length?T[1]--:T[1]=0,N.time=R=Date.UTC.apply(Date,T)-(R||0),isNaN(R))throw new TypeError("Invalid Date");return y(N)},m.fromTimeT=function(E){return w(E,0)},l.year=0,l.time=0,l.nano=0,l.addNano=function(E){return this.nano+=+E||0,this},l.getNano=function(){var E=y(this);return(E.time%1e3*a+ +E.nano+1e9)%1e9},l.getTimeT=function(){var R=y(this),E=Math.floor(R.time/1e3),R=R.year;return R&&(E+=R*t*r/e),E},l.getYear=function(){return this.toDate().getUTCFullYear()+this.year},l.toDate=function(){return g(y(this).time)},l.toJSON=function(){return this.toString().replace(/0{1,6}Z$/,"Z")},l.toString=function(E){var R=this,N=R.toDate(),T={H:function(){return B(N.getUTCHours())},L:function(){return v(N.getUTCMilliseconds(),3)},M:function(){return B(N.getUTCMinutes())},N:function(){return v(R.getNano(),9)},S:function(){return B(N.getUTCSeconds())},Y:function(){var M=R.getYear();return 999999<M?"+"+M:9999<M?"+"+v(M,6):0<=M?v(M,4):-999999<=M?"-"+v(-M,6):M},a:function(){return d[N.getUTCDay()]},b:function(){return p[N.getUTCMonth()]},d:function(){return B(N.getUTCDate())},e:function(){return function(M){return(9<M?"":" ")+(0|M)}(N.getUTCDate())},m:function(){return B(N.getUTCMonth()+1)}};return function M(D){return D.replace(/%./g,function(ne){var L=ne[1],_=f[L],L=T[L];return _?M(_):L?L():ne})}(E||h)},l.writeInt64BE=x(0,1,2,3,0,4),l.writeInt64LE=x(3,2,1,0,4,0),"%Y-%m-%dT%H:%M:%S.%NZ"),p=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],d=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],f={"%":"%",F:"%Y-%m-%d",n:`
|
|
3
|
+
`,R:"%H:%M",T:"%H:%M:%S",t:" ",X:"%T",Z:"GMT",z:"+0000"};return m;function m(E,R,N){var T=this;if(!(T instanceof m))return new m(E,R,N);T.time=+E||0,T.nano=+R||0,T.year=+N||0,y(T)}function y(E){var R,N,T,M=E.year,D=E.time,ne=E.nano,_=((ne<0||a<=ne)&&(ne-=(N=Math.floor(ne/a))*a,D+=N,N=1),M%e);return(D<-o||o<D||_)&&((R=u(D/i))&&(M+=R*e,D-=R*i),(T=g(D)).setUTCFullYear(_+T.getUTCFullYear()),T=(D=+T)+(R=u((M-=_)/e))*i,R&&-o<=T&&T<=o&&(M-=R*e,D=T),N=1),N&&(E.year=M,E.time=D,E.nano=ne),E}function g(E){var R=new Date(0);return R.setTime(E),R}function w(M,T){M=+M||0;var N=u((T=(T|0)*s)/n)+u(M/n),T=T%n+M%n,M=u(T/n);return M&&(N+=M,T-=M*n),new m(1e3*T,0,N*e)}function x(E,R,N,T,M,D){return function(_,L){var U=y(this);_=_||new Array(8),I(_,L|=0);var k=Math.floor(U.time/1e3),U=U.year*(t*r/e),X=u(U/s)+u(k/s),U=U%s+k%s,k=Math.floor(U/s);return k&&(X+=k,U-=k*s),ne(_,L+M,X),ne(_,L+D,U),_};function ne(_,L,X){_[L+E]=X>>24&255,_[L+R]=X>>16&255,_[L+N]=X>>8&255,_[L+T]=255&X}}function A(E,R,N,T,M,D){return function(_,L){I(_,L|=0);var X=ne(_,L+M);return w(ne(_,L+D),X)};function ne(_,L){return 16777216*_[L+E]+(_[L+R]<<16|_[L+N]<<8|_[L+T])}}function I(E,R){if(E=E&&E.length,E==null)throw new TypeError("Invalid Buffer");if(E<R+8)throw new RangeError("Out of range")}function B(E){return(9<E?"":"0")+(0|E)}function v(E,R){return(c+(0|E)).substr(-R)}}()});var Zm=me((UT,td)=>{"use strict";var $6=Object.prototype.hasOwnProperty,lt="~";function _s(){}Object.create&&(_s.prototype=Object.create(null),new _s().__proto__||(lt=!1));function z6(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Xm(r,e,t,n,i){if(typeof t!="function")throw new TypeError("The listener must be a function");var o=new z6(t,n||r,i),s=lt?lt+e:e;return r._events[s]?r._events[s].fn?r._events[s]=[r._events[s],o]:r._events[s].push(o):(r._events[s]=o,r._eventsCount++),r}function Yc(r,e){--r._eventsCount===0?r._events=new _s:delete r._events[e]}function rt(){this._events=new _s,this._eventsCount=0}rt.prototype.eventNames=function(){var e=[],t,n;if(this._eventsCount===0)return e;for(n in t=this._events)$6.call(t,n)&&e.push(lt?n.slice(1):n);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};rt.prototype.listeners=function(e){var t=lt?lt+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,o=n.length,s=new Array(o);i<o;i++)s[i]=n[i].fn;return s};rt.prototype.listenerCount=function(e){var t=lt?lt+e:e,n=this._events[t];return n?n.fn?1:n.length:0};rt.prototype.emit=function(e,t,n,i,o,s){var a=lt?lt+e:e;if(!this._events[a])return!1;var c=this._events[a],u=arguments.length,l,h;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,o),!0;case 6:return c.fn.call(c.context,t,n,i,o,s),!0}for(h=1,l=new Array(u-1);h<u;h++)l[h-1]=arguments[h];c.fn.apply(c.context,l)}else{var p=c.length,d;for(h=0;h<p;h++)switch(c[h].once&&this.removeListener(e,c[h].fn,void 0,!0),u){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,t);break;case 3:c[h].fn.call(c[h].context,t,n);break;case 4:c[h].fn.call(c[h].context,t,n,i);break;default:if(!l)for(d=1,l=new Array(u-1);d<u;d++)l[d-1]=arguments[d];c[h].fn.apply(c[h].context,l)}}return!0};rt.prototype.on=function(e,t,n){return Xm(this,e,t,n,!1)};rt.prototype.once=function(e,t,n){return Xm(this,e,t,n,!0)};rt.prototype.removeListener=function(e,t,n,i){var o=lt?lt+e:e;if(!this._events[o])return this;if(!t)return Yc(this,o),this;var s=this._events[o];if(s.fn)s.fn===t&&(!i||s.once)&&(!n||s.context===n)&&Yc(this,o);else{for(var a=0,c=[],u=s.length;a<u;a++)(s[a].fn!==t||i&&!s[a].once||n&&s[a].context!==n)&&c.push(s[a]);c.length?this._events[o]=c.length===1?c[0]:c:Yc(this,o)}return this};rt.prototype.removeAllListeners=function(e){var t;return e?(t=lt?lt+e:e,this._events[t]&&Yc(this,t)):(this._events=new _s,this._eventsCount=0),this};rt.prototype.off=rt.prototype.removeListener;rt.prototype.addListener=rt.prototype.on;rt.prefixed=lt;rt.EventEmitter=rt;typeof td<"u"&&(td.exports=rt)});var Gy=me((cD,qy)=>{"use strict";qy.exports=Ky;var $v=mu(),qn=Ky.prototype,zv=new Date%1e9;function Kv(){return(Math.random()*1e9>>>0)+zv++}function Ky(r){r=r||{},this.id=r.id||Kv(),this.max=r.max||1/0,this.items=r.items||[],this._lookup={},this.size=this.items.length,this.lastModified=new Date(r.lastModified||new Date);for(var e,t,n=this.items.length;n--;)e=this.items[n],t=new Date(e.expires)-new Date,this._lookup[e.key]=e,t>0?this.expire(e.key,t):t<=0&&this.delete(e.key)}qn.has=function(r){return r in this._lookup};qn.get=function(r){if(!this.has(r))return null;var e=this._lookup[r];return e.refresh&&this.expire(r,e.refresh),this.items.splice(this.items.indexOf(e),1),this.items.push(e),e.value};qn.meta=function(r){if(!this.has(r))return null;var e=this._lookup[r];return"meta"in e?e.meta:null};qn.set=function(r,e,t){var n=this._lookup[r],i=this._lookup[r]={key:r,value:e};return this.lastModified=new Date,n?(clearTimeout(n.timeout),this.items.splice(this.items.indexOf(n),1,i)):(this.size>=this.max&&this.delete(this.items[0].key),this.items.push(i),this.size++),t&&("ttl"in t&&this.expire(r,t.ttl),"meta"in t&&(i.meta=t.meta),t.refresh&&(i.refresh=t.ttl)),this};qn.delete=function(r){var e=this._lookup[r];return e?(this.lastModified=new Date,this.items.splice(this.items.indexOf(e),1),clearTimeout(e.timeout),delete this._lookup[r],this.size--,this):!1};qn.expire=function(r,e){var t=e||0,n=this._lookup[r];if(!n)return this;if(typeof t=="string"&&(t=$v(e)),typeof t!="number")throw new TypeError("Expiration time must be a string or number.");return clearTimeout(n.timeout),n.timeout=setTimeout(this.delete.bind(this,n.key),t),n.expires=Number(new Date)+t,this};qn.clear=function(){for(var r=this.items.length;r--;)this.delete(this.items[r].key);return this};qn.toJSON=function(){for(var r=new Array(this.items.length),e,t=r.length;t--;)e=this.items[t],r[t]={key:e.key,meta:e.meta,value:e.value,expires:e.expires,refresh:e.refresh};return{id:this.id,max:isFinite(this.max)?this.max:void 0,lastModified:this.lastModified,items:r}}});var Od=me((uD,Yy)=>{Yy.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(o,s){t[o]=s,e++,e>=r&&(e=0,n=t,t=Object.create(null))}return{has:function(o){return t[o]!==void 0||n[o]!==void 0},remove:function(o){t[o]!==void 0&&(t[o]=void 0),n[o]!==void 0&&(n[o]=void 0)},get:function(o){var s=t[o];if(s!==void 0)return s;if((s=n[o])!==void 0)return i(o,s),s},set:function(o,s){t[o]!==void 0?t[o]=s:i(o,s)},clear:function(){t=Object.create(null),n=Object.create(null)}}}});var lg=me(gl=>{"use strict";gl.byteLength=Qv;gl.toByteArray=t4;gl.fromByteArray=i4;var Er=[],qt=[],Jv=typeof Uint8Array<"u"?Uint8Array:Array,zd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(Ai=0,ag=zd.length;Ai<ag;++Ai)Er[Ai]=zd[Ai],qt[zd.charCodeAt(Ai)]=Ai;var Ai,ag;qt[45]=62;qt[95]=63;function cg(r){var e=r.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var t=r.indexOf("=");t===-1&&(t=e);var n=t===e?0:4-t%4;return[t,n]}function Qv(r){var e=cg(r),t=e[0],n=e[1];return(t+n)*3/4-n}function e4(r,e,t){return(e+t)*3/4-t}function t4(r){var e,t=cg(r),n=t[0],i=t[1],o=new Jv(e4(r,n,i)),s=0,a=i>0?n-4:n,c;for(c=0;c<a;c+=4)e=qt[r.charCodeAt(c)]<<18|qt[r.charCodeAt(c+1)]<<12|qt[r.charCodeAt(c+2)]<<6|qt[r.charCodeAt(c+3)],o[s++]=e>>16&255,o[s++]=e>>8&255,o[s++]=e&255;return i===2&&(e=qt[r.charCodeAt(c)]<<2|qt[r.charCodeAt(c+1)]>>4,o[s++]=e&255),i===1&&(e=qt[r.charCodeAt(c)]<<10|qt[r.charCodeAt(c+1)]<<4|qt[r.charCodeAt(c+2)]>>2,o[s++]=e>>8&255,o[s++]=e&255),o}function r4(r){return Er[r>>18&63]+Er[r>>12&63]+Er[r>>6&63]+Er[r&63]}function n4(r,e,t){for(var n,i=[],o=e;o<t;o+=3)n=(r[o]<<16&16711680)+(r[o+1]<<8&65280)+(r[o+2]&255),i.push(r4(n));return i.join("")}function i4(r){for(var e,t=r.length,n=t%3,i=[],o=16383,s=0,a=t-n;s<a;s+=o)i.push(n4(r,s,s+o>a?a:s+o));return n===1?(e=r[t-1],i.push(Er[e>>2]+Er[e<<4&63]+"==")):n===2&&(e=(r[t-2]<<8)+r[t-1],i.push(Er[e>>10]+Er[e>>4&63]+Er[e<<2&63]+"=")),i.join("")}});var ug=me(Kd=>{Kd.read=function(r,e,t,n,i){var o,s,a=i*8-n-1,c=(1<<a)-1,u=c>>1,l=-7,h=t?i-1:0,p=t?-1:1,d=r[e+h];for(h+=p,o=d&(1<<-l)-1,d>>=-l,l+=a;l>0;o=o*256+r[e+h],h+=p,l-=8);for(s=o&(1<<-l)-1,o>>=-l,l+=n;l>0;s=s*256+r[e+h],h+=p,l-=8);if(o===0)o=1-u;else{if(o===c)return s?NaN:(d?-1:1)*(1/0);s=s+Math.pow(2,n),o=o-u}return(d?-1:1)*s*Math.pow(2,o-n)};Kd.write=function(r,e,t,n,i,o){var s,a,c,u=o*8-i-1,l=(1<<u)-1,h=l>>1,p=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,f=n?1:-1,m=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=l):(s=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-s))<1&&(s--,c*=2),s+h>=1?e+=p/c:e+=p*Math.pow(2,1-h),e*c>=2&&(s++,c/=2),s+h>=l?(a=0,s=l):s+h>=1?(a=(e*c-1)*Math.pow(2,i),s=s+h):(a=e*Math.pow(2,h-1)*Math.pow(2,i),s=0));i>=8;r[t+d]=a&255,d+=f,a/=256,i-=8);for(s=s<<i|a,u+=i;u>0;r[t+d]=s&255,d+=f,s/=256,u-=8);r[t+d-f]|=m*128}});var Qd=me(Co=>{"use strict";var qd=lg(),Ro=ug(),hg=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;Co.Buffer=S;Co.SlowBuffer=u4;Co.INSPECT_MAX_BYTES=50;var wl=2147483647;Co.kMaxLength=wl;S.TYPED_ARRAY_SUPPORT=o4();!S.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function o4(){try{let r=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(r,e),r.foo()===42}catch{return!1}}Object.defineProperty(S.prototype,"parent",{enumerable:!0,get:function(){if(S.isBuffer(this))return this.buffer}});Object.defineProperty(S.prototype,"offset",{enumerable:!0,get:function(){if(S.isBuffer(this))return this.byteOffset}});function an(r){if(r>wl)throw new RangeError('The value "'+r+'" is invalid for option "size"');let e=new Uint8Array(r);return Object.setPrototypeOf(e,S.prototype),e}function S(r,e,t){if(typeof r=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return Yd(r)}return mg(r,e,t)}S.poolSize=8192;function mg(r,e,t){if(typeof r=="string")return a4(r,e);if(ArrayBuffer.isView(r))return c4(r);if(r==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r);if(vr(r,ArrayBuffer)||r&&vr(r.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(vr(r,SharedArrayBuffer)||r&&vr(r.buffer,SharedArrayBuffer)))return jd(r,e,t);if(typeof r=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=r.valueOf&&r.valueOf();if(n!=null&&n!==r)return S.from(n,e,t);let i=l4(r);if(i)return i;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof r[Symbol.toPrimitive]=="function")return S.from(r[Symbol.toPrimitive]("string"),e,t);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof r)}S.from=function(r,e,t){return mg(r,e,t)};Object.setPrototypeOf(S.prototype,Uint8Array.prototype);Object.setPrototypeOf(S,Uint8Array);function yg(r){if(typeof r!="number")throw new TypeError('"size" argument must be of type number');if(r<0)throw new RangeError('The value "'+r+'" is invalid for option "size"')}function s4(r,e,t){return yg(r),r<=0?an(r):e!==void 0?typeof t=="string"?an(r).fill(e,t):an(r).fill(e):an(r)}S.alloc=function(r,e,t){return s4(r,e,t)};function Yd(r){return yg(r),an(r<0?0:Xd(r)|0)}S.allocUnsafe=function(r){return Yd(r)};S.allocUnsafeSlow=function(r){return Yd(r)};function a4(r,e){if((typeof e!="string"||e==="")&&(e="utf8"),!S.isEncoding(e))throw new TypeError("Unknown encoding: "+e);let t=gg(r,e)|0,n=an(t),i=n.write(r,e);return i!==t&&(n=n.slice(0,i)),n}function Gd(r){let e=r.length<0?0:Xd(r.length)|0,t=an(e);for(let n=0;n<e;n+=1)t[n]=r[n]&255;return t}function c4(r){if(vr(r,Uint8Array)){let e=new Uint8Array(r);return jd(e.buffer,e.byteOffset,e.byteLength)}return Gd(r)}function jd(r,e,t){if(e<0||r.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(r.byteLength<e+(t||0))throw new RangeError('"length" is outside of buffer bounds');let n;return e===void 0&&t===void 0?n=new Uint8Array(r):t===void 0?n=new Uint8Array(r,e):n=new Uint8Array(r,e,t),Object.setPrototypeOf(n,S.prototype),n}function l4(r){if(S.isBuffer(r)){let e=Xd(r.length)|0,t=an(e);return t.length===0||r.copy(t,0,0,e),t}if(r.length!==void 0)return typeof r.length!="number"||Jd(r.length)?an(0):Gd(r);if(r.type==="Buffer"&&Array.isArray(r.data))return Gd(r.data)}function Xd(r){if(r>=wl)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+wl.toString(16)+" bytes");return r|0}function u4(r){return+r!=r&&(r=0),S.alloc(+r)}S.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==S.prototype};S.compare=function(e,t){if(vr(e,Uint8Array)&&(e=S.from(e,e.offset,e.byteLength)),vr(t,Uint8Array)&&(t=S.from(t,t.offset,t.byteLength)),!S.isBuffer(e)||!S.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let n=e.length,i=t.length;for(let o=0,s=Math.min(n,i);o<s;++o)if(e[o]!==t[o]){n=e[o],i=t[o];break}return n<i?-1:i<n?1:0};S.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};S.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(e.length===0)return S.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let i=S.allocUnsafe(t),o=0;for(n=0;n<e.length;++n){let s=e[n];if(vr(s,Uint8Array))o+s.length>i.length?(S.isBuffer(s)||(s=S.from(s)),s.copy(i,o)):Uint8Array.prototype.set.call(i,s,o);else if(S.isBuffer(s))s.copy(i,o);else throw new TypeError('"list" argument must be an Array of Buffers');o+=s.length}return i};function gg(r,e){if(S.isBuffer(r))return r.length;if(ArrayBuffer.isView(r)||vr(r,ArrayBuffer))return r.byteLength;if(typeof r!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof r);let t=r.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&t===0)return 0;let i=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return t;case"utf8":case"utf-8":return Wd(r).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return t*2;case"hex":return t>>>1;case"base64":return Sg(r).length;default:if(i)return n?-1:Wd(r).length;e=(""+e).toLowerCase(),i=!0}}S.byteLength=gg;function h4(r,e,t){let n=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((t===void 0||t>this.length)&&(t=this.length),t<=0)||(t>>>=0,e>>>=0,t<=e))return"";for(r||(r="utf8");;)switch(r){case"hex":return E4(this,e,t);case"utf8":case"utf-8":return xg(this,e,t);case"ascii":return x4(this,e,t);case"latin1":case"binary":return b4(this,e,t);case"base64":return g4(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return v4(this,e,t);default:if(n)throw new TypeError("Unknown encoding: "+r);r=(r+"").toLowerCase(),n=!0}}S.prototype._isBuffer=!0;function Ii(r,e,t){let n=r[e];r[e]=r[t],r[t]=n}S.prototype.swap16=function(){let e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;t<e;t+=2)Ii(this,t,t+1);return this};S.prototype.swap32=function(){let e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let t=0;t<e;t+=4)Ii(this,t,t+3),Ii(this,t+1,t+2);return this};S.prototype.swap64=function(){let e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let t=0;t<e;t+=8)Ii(this,t,t+7),Ii(this,t+1,t+6),Ii(this,t+2,t+5),Ii(this,t+3,t+4);return this};S.prototype.toString=function(){let e=this.length;return e===0?"":arguments.length===0?xg(this,0,e):h4.apply(this,arguments)};S.prototype.toLocaleString=S.prototype.toString;S.prototype.equals=function(e){if(!S.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e?!0:S.compare(this,e)===0};S.prototype.inspect=function(){let e="",t=Co.INSPECT_MAX_BYTES;return e=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(e+=" ... "),"<Buffer "+e+">"};hg&&(S.prototype[hg]=S.prototype.inspect);S.prototype.compare=function(e,t,n,i,o){if(vr(e,Uint8Array)&&(e=S.from(e,e.offset,e.byteLength)),!S.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),i===void 0&&(i=0),o===void 0&&(o=this.length),t<0||n>e.length||i<0||o>this.length)throw new RangeError("out of range index");if(i>=o&&t>=n)return 0;if(i>=o)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,i>>>=0,o>>>=0,this===e)return 0;let s=o-i,a=n-t,c=Math.min(s,a),u=this.slice(i,o),l=e.slice(t,n);for(let h=0;h<c;++h)if(u[h]!==l[h]){s=u[h],a=l[h];break}return s<a?-1:a<s?1:0};function wg(r,e,t,n,i){if(r.length===0)return-1;if(typeof t=="string"?(n=t,t=0):t>2147483647?t=2147483647:t<-2147483648&&(t=-2147483648),t=+t,Jd(t)&&(t=i?0:r.length-1),t<0&&(t=r.length+t),t>=r.length){if(i)return-1;t=r.length-1}else if(t<0)if(i)t=0;else return-1;if(typeof e=="string"&&(e=S.from(e,n)),S.isBuffer(e))return e.length===0?-1:dg(r,e,t,n,i);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(r,e,t):Uint8Array.prototype.lastIndexOf.call(r,e,t):dg(r,[e],t,n,i);throw new TypeError("val must be string, number or Buffer")}function dg(r,e,t,n,i){let o=1,s=r.length,a=e.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(r.length<2||e.length<2)return-1;o=2,s/=2,a/=2,t/=2}function c(l,h){return o===1?l[h]:l.readUInt16BE(h*o)}let u;if(i){let l=-1;for(u=t;u<s;u++)if(c(r,u)===c(e,l===-1?0:u-l)){if(l===-1&&(l=u),u-l+1===a)return l*o}else l!==-1&&(u-=u-l),l=-1}else for(t+a>s&&(t=s-a),u=t;u>=0;u--){let l=!0;for(let h=0;h<a;h++)if(c(r,u+h)!==c(e,h)){l=!1;break}if(l)return u}return-1}S.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1};S.prototype.indexOf=function(e,t,n){return wg(this,e,t,n,!0)};S.prototype.lastIndexOf=function(e,t,n){return wg(this,e,t,n,!1)};function d4(r,e,t,n){t=Number(t)||0;let i=r.length-t;n?(n=Number(n),n>i&&(n=i)):n=i;let o=e.length;n>o/2&&(n=o/2);let s;for(s=0;s<n;++s){let a=parseInt(e.substr(s*2,2),16);if(Jd(a))return s;r[t+s]=a}return s}function f4(r,e,t,n){return xl(Wd(e,r.length-t),r,t,n)}function p4(r,e,t,n){return xl(S4(e),r,t,n)}function m4(r,e,t,n){return xl(Sg(e),r,t,n)}function y4(r,e,t,n){return xl(_4(e,r.length-t),r,t,n)}S.prototype.write=function(e,t,n,i){if(t===void 0)i="utf8",n=this.length,t=0;else if(n===void 0&&typeof t=="string")i=t,n=this.length,t=0;else if(isFinite(t))t=t>>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let o=this.length-t;if((n===void 0||n>o)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let s=!1;for(;;)switch(i){case"hex":return d4(this,e,t,n);case"utf8":case"utf-8":return f4(this,e,t,n);case"ascii":case"latin1":case"binary":return p4(this,e,t,n);case"base64":return m4(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y4(this,e,t,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}};S.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function g4(r,e,t){return e===0&&t===r.length?qd.fromByteArray(r):qd.fromByteArray(r.slice(e,t))}function xg(r,e,t){t=Math.min(r.length,t);let n=[],i=e;for(;i<t;){let o=r[i],s=null,a=o>239?4:o>223?3:o>191?2:1;if(i+a<=t){let c,u,l,h;switch(a){case 1:o<128&&(s=o);break;case 2:c=r[i+1],(c&192)===128&&(h=(o&31)<<6|c&63,h>127&&(s=h));break;case 3:c=r[i+1],u=r[i+2],(c&192)===128&&(u&192)===128&&(h=(o&15)<<12|(c&63)<<6|u&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:c=r[i+1],u=r[i+2],l=r[i+3],(c&192)===128&&(u&192)===128&&(l&192)===128&&(h=(o&15)<<18|(c&63)<<12|(u&63)<<6|l&63,h>65535&&h<1114112&&(s=h))}}s===null?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|s&1023),n.push(s),i+=a}return w4(n)}var fg=4096;function w4(r){let e=r.length;if(e<=fg)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=fg));return t}function x4(r,e,t){let n="";t=Math.min(r.length,t);for(let i=e;i<t;++i)n+=String.fromCharCode(r[i]&127);return n}function b4(r,e,t){let n="";t=Math.min(r.length,t);for(let i=e;i<t;++i)n+=String.fromCharCode(r[i]);return n}function E4(r,e,t){let n=r.length;(!e||e<0)&&(e=0),(!t||t<0||t>n)&&(t=n);let i="";for(let o=e;o<t;++o)i+=k4[r[o]];return i}function v4(r,e,t){let n=r.slice(e,t),i="";for(let o=0;o<n.length-1;o+=2)i+=String.fromCharCode(n[o]+n[o+1]*256);return i}S.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let i=this.subarray(e,t);return Object.setPrototypeOf(i,S.prototype),i};function He(r,e,t){if(r%1!==0||r<0)throw new RangeError("offset is not uint");if(r+e>t)throw new RangeError("Trying to access beyond buffer length")}S.prototype.readUintLE=S.prototype.readUIntLE=function(e,t,n){e=e>>>0,t=t>>>0,n||He(e,t,this.length);let i=this[e],o=1,s=0;for(;++s<t&&(o*=256);)i+=this[e+s]*o;return i};S.prototype.readUintBE=S.prototype.readUIntBE=function(e,t,n){e=e>>>0,t=t>>>0,n||He(e,t,this.length);let i=this[e+--t],o=1;for(;t>0&&(o*=256);)i+=this[e+--t]*o;return i};S.prototype.readUint8=S.prototype.readUInt8=function(e,t){return e=e>>>0,t||He(e,1,this.length),this[e]};S.prototype.readUint16LE=S.prototype.readUInt16LE=function(e,t){return e=e>>>0,t||He(e,2,this.length),this[e]|this[e+1]<<8};S.prototype.readUint16BE=S.prototype.readUInt16BE=function(e,t){return e=e>>>0,t||He(e,2,this.length),this[e]<<8|this[e+1]};S.prototype.readUint32LE=S.prototype.readUInt32LE=function(e,t){return e=e>>>0,t||He(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216};S.prototype.readUint32BE=S.prototype.readUInt32BE=function(e,t){return e=e>>>0,t||He(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])};S.prototype.readBigUInt64LE=jn(function(e){e=e>>>0,To(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Hs(e,this.length-8);let i=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,o=this[++e]+this[++e]*2**8+this[++e]*2**16+n*2**24;return BigInt(i)+(BigInt(o)<<BigInt(32))});S.prototype.readBigUInt64BE=jn(function(e){e=e>>>0,To(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Hs(e,this.length-8);let i=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],o=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n;return(BigInt(i)<<BigInt(32))+BigInt(o)});S.prototype.readIntLE=function(e,t,n){e=e>>>0,t=t>>>0,n||He(e,t,this.length);let i=this[e],o=1,s=0;for(;++s<t&&(o*=256);)i+=this[e+s]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*t)),i};S.prototype.readIntBE=function(e,t,n){e=e>>>0,t=t>>>0,n||He(e,t,this.length);let i=t,o=1,s=this[e+--i];for(;i>0&&(o*=256);)s+=this[e+--i]*o;return o*=128,s>=o&&(s-=Math.pow(2,8*t)),s};S.prototype.readInt8=function(e,t){return e=e>>>0,t||He(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]};S.prototype.readInt16LE=function(e,t){e=e>>>0,t||He(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n};S.prototype.readInt16BE=function(e,t){e=e>>>0,t||He(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n};S.prototype.readInt32LE=function(e,t){return e=e>>>0,t||He(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24};S.prototype.readInt32BE=function(e,t){return e=e>>>0,t||He(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]};S.prototype.readBigInt64LE=jn(function(e){e=e>>>0,To(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Hs(e,this.length-8);let i=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24)});S.prototype.readBigInt64BE=jn(function(e){e=e>>>0,To(e,"offset");let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&Hs(e,this.length-8);let i=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(i)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n)});S.prototype.readFloatLE=function(e,t){return e=e>>>0,t||He(e,4,this.length),Ro.read(this,e,!0,23,4)};S.prototype.readFloatBE=function(e,t){return e=e>>>0,t||He(e,4,this.length),Ro.read(this,e,!1,23,4)};S.prototype.readDoubleLE=function(e,t){return e=e>>>0,t||He(e,8,this.length),Ro.read(this,e,!0,52,8)};S.prototype.readDoubleBE=function(e,t){return e=e>>>0,t||He(e,8,this.length),Ro.read(this,e,!1,52,8)};function xt(r,e,t,n,i,o){if(!S.isBuffer(r))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||e<o)throw new RangeError('"value" argument is out of bounds');if(t+n>r.length)throw new RangeError("Index out of range")}S.prototype.writeUintLE=S.prototype.writeUIntLE=function(e,t,n,i){if(e=+e,t=t>>>0,n=n>>>0,!i){let a=Math.pow(2,8*n)-1;xt(this,e,t,n,a,0)}let o=1,s=0;for(this[t]=e&255;++s<n&&(o*=256);)this[t+s]=e/o&255;return t+n};S.prototype.writeUintBE=S.prototype.writeUIntBE=function(e,t,n,i){if(e=+e,t=t>>>0,n=n>>>0,!i){let a=Math.pow(2,8*n)-1;xt(this,e,t,n,a,0)}let o=n-1,s=1;for(this[t+o]=e&255;--o>=0&&(s*=256);)this[t+o]=e/s&255;return t+n};S.prototype.writeUint8=S.prototype.writeUInt8=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,1,255,0),this[t]=e&255,t+1};S.prototype.writeUint16LE=S.prototype.writeUInt16LE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2};S.prototype.writeUint16BE=S.prototype.writeUInt16BE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2};S.prototype.writeUint32LE=S.prototype.writeUInt32LE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4};S.prototype.writeUint32BE=S.prototype.writeUInt32BE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function bg(r,e,t,n,i){Ig(e,n,i,r,t,7);let o=Number(e&BigInt(4294967295));r[t++]=o,o=o>>8,r[t++]=o,o=o>>8,r[t++]=o,o=o>>8,r[t++]=o;let s=Number(e>>BigInt(32)&BigInt(4294967295));return r[t++]=s,s=s>>8,r[t++]=s,s=s>>8,r[t++]=s,s=s>>8,r[t++]=s,t}function Eg(r,e,t,n,i){Ig(e,n,i,r,t,7);let o=Number(e&BigInt(4294967295));r[t+7]=o,o=o>>8,r[t+6]=o,o=o>>8,r[t+5]=o,o=o>>8,r[t+4]=o;let s=Number(e>>BigInt(32)&BigInt(4294967295));return r[t+3]=s,s=s>>8,r[t+2]=s,s=s>>8,r[t+1]=s,s=s>>8,r[t]=s,t+8}S.prototype.writeBigUInt64LE=jn(function(e,t=0){return bg(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});S.prototype.writeBigUInt64BE=jn(function(e,t=0){return Eg(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))});S.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t=t>>>0,!i){let c=Math.pow(2,8*n-1);xt(this,e,t,n,c-1,-c)}let o=0,s=1,a=0;for(this[t]=e&255;++o<n&&(s*=256);)e<0&&a===0&&this[t+o-1]!==0&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n};S.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t=t>>>0,!i){let c=Math.pow(2,8*n-1);xt(this,e,t,n,c-1,-c)}let o=n-1,s=1,a=0;for(this[t+o]=e&255;--o>=0&&(s*=256);)e<0&&a===0&&this[t+o+1]!==0&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n};S.prototype.writeInt8=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1};S.prototype.writeInt16LE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2};S.prototype.writeInt16BE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2};S.prototype.writeInt32LE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4};S.prototype.writeInt32BE=function(e,t,n){return e=+e,t=t>>>0,n||xt(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};S.prototype.writeBigInt64LE=jn(function(e,t=0){return bg(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});S.prototype.writeBigInt64BE=jn(function(e,t=0){return Eg(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function vg(r,e,t,n,i,o){if(t+n>r.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function Bg(r,e,t,n,i){return e=+e,t=t>>>0,i||vg(r,e,t,4,34028234663852886e22,-34028234663852886e22),Ro.write(r,e,t,n,23,4),t+4}S.prototype.writeFloatLE=function(e,t,n){return Bg(this,e,t,!0,n)};S.prototype.writeFloatBE=function(e,t,n){return Bg(this,e,t,!1,n)};function Ag(r,e,t,n,i){return e=+e,t=t>>>0,i||vg(r,e,t,8,17976931348623157e292,-17976931348623157e292),Ro.write(r,e,t,n,52,8),t+8}S.prototype.writeDoubleLE=function(e,t,n){return Ag(this,e,t,!0,n)};S.prototype.writeDoubleBE=function(e,t,n){return Ag(this,e,t,!1,n)};S.prototype.copy=function(e,t,n,i){if(!S.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i<n&&(i=n),i===n||e.length===0||this.length===0)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t<i-n&&(i=e.length-t+n);let o=i-n;return this===e&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(t,n,i):Uint8Array.prototype.set.call(e,this.subarray(n,i),t),o};S.prototype.fill=function(e,t,n,i){if(typeof e=="string"){if(typeof t=="string"?(i=t,t=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!S.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(e.length===1){let s=e.charCodeAt(0);(i==="utf8"&&s<128||i==="latin1")&&(e=s)}}else typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;t=t>>>0,n=n===void 0?this.length:n>>>0,e||(e=0);let o;if(typeof e=="number")for(o=t;o<n;++o)this[o]=e;else{let s=S.isBuffer(e)?e:S.from(e,i),a=s.length;if(a===0)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(o=0;o<n-t;++o)this[o+t]=s[o%a]}return this};var ko={};function Zd(r,e,t){ko[r]=class extends t{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${r}]`,this.stack,delete this.name}get code(){return r}set code(i){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:i,writable:!0})}toString(){return`${this.name} [${r}]: ${this.message}`}}}Zd("ERR_BUFFER_OUT_OF_BOUNDS",function(r){return r?`${r} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError);Zd("ERR_INVALID_ARG_TYPE",function(r,e){return`The "${r}" argument must be of type number. Received type ${typeof e}`},TypeError);Zd("ERR_OUT_OF_RANGE",function(r,e,t){let n=`The value of "${r}" is out of range.`,i=t;return Number.isInteger(t)&&Math.abs(t)>2**32?i=pg(String(t)):typeof t=="bigint"&&(i=String(t),(t>BigInt(2)**BigInt(32)||t<-(BigInt(2)**BigInt(32)))&&(i=pg(i)),i+="n"),n+=` It must be ${e}. Received ${i}`,n},RangeError);function pg(r){let e="",t=r.length,n=r[0]==="-"?1:0;for(;t>=n+4;t-=3)e=`_${r.slice(t-3,t)}${e}`;return`${r.slice(0,t)}${e}`}function B4(r,e,t){To(e,"offset"),(r[e]===void 0||r[e+t]===void 0)&&Hs(e,r.length-(t+1))}function Ig(r,e,t,n,i,o){if(r>t||r<e){let s=typeof e=="bigint"?"n":"",a;throw o>3?e===0||e===BigInt(0)?a=`>= 0${s} and < 2${s} ** ${(o+1)*8}${s}`:a=`>= -(2${s} ** ${(o+1)*8-1}${s}) and < 2 ** ${(o+1)*8-1}${s}`:a=`>= ${e}${s} and <= ${t}${s}`,new ko.ERR_OUT_OF_RANGE("value",a,r)}B4(n,i,o)}function To(r,e){if(typeof r!="number")throw new ko.ERR_INVALID_ARG_TYPE(e,"number",r)}function Hs(r,e,t){throw Math.floor(r)!==r?(To(r,t),new ko.ERR_OUT_OF_RANGE(t||"offset","an integer",r)):e<0?new ko.ERR_BUFFER_OUT_OF_BOUNDS:new ko.ERR_OUT_OF_RANGE(t||"offset",`>= ${t?1:0} and <= ${e}`,r)}var A4=/[^+/0-9A-Za-z-_]/g;function I4(r){if(r=r.split("=")[0],r=r.trim().replace(A4,""),r.length<2)return"";for(;r.length%4!==0;)r=r+"=";return r}function Wd(r,e){e=e||1/0;let t,n=r.length,i=null,o=[];for(let s=0;s<n;++s){if(t=r.charCodeAt(s),t>55295&&t<57344){if(!i){if(t>56319){(e-=3)>-1&&o.push(239,191,189);continue}else if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=t;continue}if(t<56320){(e-=3)>-1&&o.push(239,191,189),i=t;continue}t=(i-55296<<10|t-56320)+65536}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,t<128){if((e-=1)<0)break;o.push(t)}else if(t<2048){if((e-=2)<0)break;o.push(t>>6|192,t&63|128)}else if(t<65536){if((e-=3)<0)break;o.push(t>>12|224,t>>6&63|128,t&63|128)}else if(t<1114112){if((e-=4)<0)break;o.push(t>>18|240,t>>12&63|128,t>>6&63|128,t&63|128)}else throw new Error("Invalid code point")}return o}function S4(r){let e=[];for(let t=0;t<r.length;++t)e.push(r.charCodeAt(t)&255);return e}function _4(r,e){let t,n,i,o=[];for(let s=0;s<r.length&&!((e-=2)<0);++s)t=r.charCodeAt(s),n=t>>8,i=t%256,o.push(i),o.push(n);return o}function Sg(r){return qd.toByteArray(I4(r))}function xl(r,e,t,n){let i;for(i=0;i<n&&!(i+t>=e.length||i>=r.length);++i)e[i+t]=r[i];return i}function vr(r,e){return r instanceof e||r!=null&&r.constructor!=null&&r.constructor.name!=null&&r.constructor.name===e.name}function Jd(r){return r!==r}var k4=function(){let r="0123456789abcdef",e=new Array(256);for(let t=0;t<16;++t){let n=t*16;for(let i=0;i<16;++i)e[n+i]=r[t]+r[i]}return e}();function jn(r){return typeof BigInt>"u"?R4:r}function R4(){throw new Error("BigInt not supported")}});var _g=me(ef=>{"use strict";ef.toString=function(r){switch(r){case 1:return"A";case 10:return"NULL";case 28:return"AAAA";case 18:return"AFSDB";case 42:return"APL";case 257:return"CAA";case 60:return"CDNSKEY";case 59:return"CDS";case 37:return"CERT";case 5:return"CNAME";case 49:return"DHCID";case 32769:return"DLV";case 39:return"DNAME";case 48:return"DNSKEY";case 43:return"DS";case 55:return"HIP";case 13:return"HINFO";case 45:return"IPSECKEY";case 25:return"KEY";case 36:return"KX";case 29:return"LOC";case 15:return"MX";case 35:return"NAPTR";case 2:return"NS";case 47:return"NSEC";case 50:return"NSEC3";case 51:return"NSEC3PARAM";case 12:return"PTR";case 46:return"RRSIG";case 17:return"RP";case 24:return"SIG";case 6:return"SOA";case 99:return"SPF";case 33:return"SRV";case 44:return"SSHFP";case 32768:return"TA";case 249:return"TKEY";case 52:return"TLSA";case 250:return"TSIG";case 16:return"TXT";case 252:return"AXFR";case 251:return"IXFR";case 41:return"OPT";case 255:return"ANY"}return"UNKNOWN_"+r};ef.toType=function(r){switch(r.toUpperCase()){case"A":return 1;case"NULL":return 10;case"AAAA":return 28;case"AFSDB":return 18;case"APL":return 42;case"CAA":return 257;case"CDNSKEY":return 60;case"CDS":return 59;case"CERT":return 37;case"CNAME":return 5;case"DHCID":return 49;case"DLV":return 32769;case"DNAME":return 39;case"DNSKEY":return 48;case"DS":return 43;case"HIP":return 55;case"HINFO":return 13;case"IPSECKEY":return 45;case"KEY":return 25;case"KX":return 36;case"LOC":return 29;case"MX":return 15;case"NAPTR":return 35;case"NS":return 2;case"NSEC":return 47;case"NSEC3":return 50;case"NSEC3PARAM":return 51;case"PTR":return 12;case"RRSIG":return 46;case"RP":return 17;case"SIG":return 24;case"SOA":return 6;case"SPF":return 99;case"SRV":return 33;case"SSHFP":return 44;case"TA":return 32768;case"TKEY":return 249;case"TLSA":return 52;case"TSIG":return 250;case"TXT":return 16;case"AXFR":return 252;case"IXFR":return 251;case"OPT":return 41;case"ANY":return 255;case"*":return 255}return r.toUpperCase().startsWith("UNKNOWN_")?parseInt(r.slice(8)):0}});var kg=me(tf=>{"use strict";tf.toString=function(r){switch(r){case 0:return"NOERROR";case 1:return"FORMERR";case 2:return"SERVFAIL";case 3:return"NXDOMAIN";case 4:return"NOTIMP";case 5:return"REFUSED";case 6:return"YXDOMAIN";case 7:return"YXRRSET";case 8:return"NXRRSET";case 9:return"NOTAUTH";case 10:return"NOTZONE";case 11:return"RCODE_11";case 12:return"RCODE_12";case 13:return"RCODE_13";case 14:return"RCODE_14";case 15:return"RCODE_15"}return"RCODE_"+r};tf.toRcode=function(r){switch(r.toUpperCase()){case"NOERROR":return 0;case"FORMERR":return 1;case"SERVFAIL":return 2;case"NXDOMAIN":return 3;case"NOTIMP":return 4;case"REFUSED":return 5;case"YXDOMAIN":return 6;case"YXRRSET":return 7;case"NXRRSET":return 8;case"NOTAUTH":return 9;case"NOTZONE":return 10;case"RCODE_11":return 11;case"RCODE_12":return 12;case"RCODE_13":return 13;case"RCODE_14":return 14;case"RCODE_15":return 15}return 0}});var Rg=me(rf=>{"use strict";rf.toString=function(r){switch(r){case 0:return"QUERY";case 1:return"IQUERY";case 2:return"STATUS";case 3:return"OPCODE_3";case 4:return"NOTIFY";case 5:return"UPDATE";case 6:return"OPCODE_6";case 7:return"OPCODE_7";case 8:return"OPCODE_8";case 9:return"OPCODE_9";case 10:return"OPCODE_10";case 11:return"OPCODE_11";case 12:return"OPCODE_12";case 13:return"OPCODE_13";case 14:return"OPCODE_14";case 15:return"OPCODE_15"}return"OPCODE_"+r};rf.toOpcode=function(r){switch(r.toUpperCase()){case"QUERY":return 0;case"IQUERY":return 1;case"STATUS":return 2;case"OPCODE_3":return 3;case"NOTIFY":return 4;case"UPDATE":return 5;case"OPCODE_6":return 6;case"OPCODE_7":return 7;case"OPCODE_8":return 8;case"OPCODE_9":return 9;case"OPCODE_10":return 10;case"OPCODE_11":return 11;case"OPCODE_12":return 12;case"OPCODE_13":return 13;case"OPCODE_14":return 14;case"OPCODE_15":return 15}return 0}});var Tg=me(nf=>{"use strict";nf.toString=function(r){switch(r){case 1:return"IN";case 2:return"CS";case 3:return"CH";case 4:return"HS";case 255:return"ANY"}return"UNKNOWN_"+r};nf.toClass=function(r){switch(r.toUpperCase()){case"IN":return 1;case"CS":return 2;case"CH":return 3;case"HS":return 4;case"ANY":return 255}return 0}});var Cg=me(of=>{"use strict";of.toString=function(r){switch(r){case 1:return"LLQ";case 2:return"UL";case 3:return"NSID";case 5:return"DAU";case 6:return"DHU";case 7:return"N3U";case 8:return"CLIENT_SUBNET";case 9:return"EXPIRE";case 10:return"COOKIE";case 11:return"TCP_KEEPALIVE";case 12:return"PADDING";case 13:return"CHAIN";case 14:return"KEY_TAG";case 26946:return"DEVICEID"}return r<0?null:`OPTION_${r}`};of.toCode=function(r){if(typeof r=="number")return r;if(!r)return-1;switch(r.toUpperCase()){case"OPTION_0":return 0;case"LLQ":return 1;case"UL":return 2;case"NSID":return 3;case"OPTION_4":return 4;case"DAU":return 5;case"DHU":return 6;case"N3U":return 7;case"CLIENT_SUBNET":return 8;case"EXPIRE":return 9;case"COOKIE":return 10;case"TCP_KEEPALIVE":return 11;case"PADDING":return 12;case"CHAIN":return 13;case"KEY_TAG":return 14;case"DEVICEID":return 26946;case"OPTION_65535":return 65535}let e=r.match(/_(\d+)$/);return e?parseInt(e[1],10):-1}});var Lg=me((Ug,sf)=>{var Ng=function(r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.decode=h,r.encode=l,r.familyOf=u,r.name=void 0,r.sizeOf=c,r.v6=r.v4=void 0;let e=/^(\d{1,3}\.){3,3}\d{1,3}$/,t=4,n=/^(::)?(((\d{1,3}\.){3}(\d{1,3}){1})?([0-9a-f]){0,4}:{0,2}){1,8}(::)?$/i,i=16,o={name:"v4",size:t,isFormat:p=>e.test(p),encode(p,d,f){f=~~f,d=d||new Uint8Array(f+t);let m=p.length,y=0;for(let g=0;g<m;){let w=p.charCodeAt(g++);w===46?(d[f++]=y,y=0):y=y*10+(w-48)}return d[f]=y,d},decode(p,d){return d=~~d,`${p[d++]}.${p[d++]}.${p[d++]}.${p[d]}`}};r.v4=o;let s={name:"v6",size:i,isFormat:p=>p.length>0&&n.test(p),encode(p,d,f){f=~~f;let m=f+i,y=-1,g=0,w=0,x=!0,A=!1;d=d||new Uint8Array(f+i);for(let I=0;I<p.length;I++){let B=p.charCodeAt(I);B===58?(x?y!==-1?(f<m&&(d[f]=0),f<m-1&&(d[f+1]=0),f+=2):f<m&&(y=f):(A===!0?(f<m&&(d[f]=w),f++):(f<m&&(d[f]=g>>8),f<m-1&&(d[f+1]=g&255),f+=2),g=0,w=0),x=!0,A=!1):B===46?(f<m&&(d[f]=w),f++,w=0,g=0,x=!1,A=!0):(x=!1,B>=97?B-=87:B>=65?B-=55:(B-=48,w=w*10+B),g=(g<<4)+B)}if(x===!1)A===!0?(f<m&&(d[f]=w),f++):(f<m&&(d[f]=g>>8),f<m-1&&(d[f+1]=g&255),f+=2);else if(y===0)f<m&&(d[f]=0),f<m-1&&(d[f+1]=0),f+=2;else if(y!==-1){f+=2;for(let I=Math.min(f-1,m-1);I>=y+2;I--)d[I]=d[I-2];d[y]=0,d[y+1]=0,y=f}if(y!==f&&y!==-1)for(f>m-2&&(f=m-2);m>y;)d[--m]=f<m&&f>y?d[--f]:0;else for(;f<m;)d[f++]=0;return d},decode(p,d){d=~~d;let f="";for(let m=0;m<i;m+=2)m!==0&&(f+=":"),f+=(p[d+m]<<8|p[d+m+1]).toString(16);return f.replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}};r.v6=s;let a="ip";r.name=a;function c(p){if(o.isFormat(p))return o.size;if(s.isFormat(p))return s.size;throw Error(`Invalid ip address: ${p}`)}function u(p){return c(p)===o.size?1:2}function l(p,d,f){f=~~f;let m=c(p);return typeof d=="function"&&(d=d(f+m)),m===o.size?o.encode(p,d,f):s.encode(p,d,f)}function h(p,d,f){if(d=~~d,f=f||p.length-d,f===o.size)return o.decode(p,d,f);if(f===s.size)return s.decode(p,d,f);throw Error(`Invalid buffer size needs to be ${o.size} for v4 or ${s.size} for v6.`)}return"default"in r?r.default:r}({});typeof define=="function"&&define.amd?define([],function(){return Ng}):typeof sf=="object"&&typeof Ug=="object"&&(sf.exports=Ng)});var Og=me(q=>{"use strict";var G=Qd().Buffer,gn=_g(),T4=kg(),C4=Rg(),El=Tg(),af=Cg(),Si=Lg(),N4=0,Dg=32768,cf=32768,U4=~cf,Pg=32768,L4=~Pg,V=q.name={};V.encode=function(r,e,t,{mail:n=!1}={}){e||(e=G.alloc(V.encodingLength(r))),t||(t=0);let i=t,o=r.replace(/^\.|\.$/gm,"");if(o.length){let s=[];if(n){let a="";o.split(".").forEach(c=>{c.endsWith("\\")?a+=(a.length?".":"")+c.slice(0,-1):s.length===0&&a.length?s.push(a+"."+c):s.push(c)})}else s=o.split(".");for(let a=0;a<s.length;a++){let c=e.write(s[a],t+1);e[t]=c,t+=c+1}}return e[t++]=0,V.encode.bytes=t-i,e};V.encode.bytes=0;V.decode=function(r,e,{mail:t=!1}={}){e||(e=0);let n=[],i=e,o=0,s=0,a=!1;for(;;){if(e>=r.length)throw new Error("Cannot decode name (buffer overflow)");let c=r[e++];if(s+=a?0:1,c===0)break;if(c&192)if((c&192)===192){if(e+1>r.length)throw new Error("Cannot decode name (buffer overflow)");let u=r.readUInt16BE(e-1)-49152;if(u>=i)throw new Error("Cannot decode name (bad pointer)");e=u,i=u,s+=a?0:1,a=!0}else throw new Error("Cannot decode name (bad label)");else{if(e+c>r.length)throw new Error("Cannot decode name (buffer overflow)");if(o+=c+1,o>254)throw new Error("Cannot decode name (name too long)");let u=r.toString("utf-8",e,e+c);t&&(u=u.replace(/\./g,"\\.")),n.push(u),e+=c,s+=a?0:c}}return V.decode.bytes=s,n.length===0?".":n.join(".")};V.decode.bytes=0;V.encodingLength=function(r){return r==="."||r===".."?1:G.byteLength(r.replace(/^\.|\.$/gm,""))+2};var ee={};ee.encode=function(r,e,t){e||(e=G.alloc(ee.encodingLength(r))),t||(t=0);let n=e.write(r,t+1);return e[t]=n,ee.encode.bytes=n+1,e};ee.encode.bytes=0;ee.decode=function(r,e){e||(e=0);let t=r[e],n=r.toString("utf-8",e+1,e+1+t);return ee.decode.bytes=t+1,n};ee.decode.bytes=0;ee.encodingLength=function(r){return G.byteLength(r)+1};var sr={};sr.encode=function(r,e,t){e||(e=sr.encodingLength(r)),t||(t=0);let n=(r.flags||0)&32767,i=r.type==="response"?Dg:N4;return e.writeUInt16BE(r.id||0,t),e.writeUInt16BE(n|i,t+2),e.writeUInt16BE(r.questions.length,t+4),e.writeUInt16BE(r.answers.length,t+6),e.writeUInt16BE(r.authorities.length,t+8),e.writeUInt16BE(r.additionals.length,t+10),e};sr.encode.bytes=12;sr.decode=function(r,e){if(e||(e=0),r.length<12)throw new Error("Header must be 12 bytes");let t=r.readUInt16BE(e+2);return{id:r.readUInt16BE(e),type:t&Dg?"response":"query",flags:t&32767,flag_qr:(t>>15&1)===1,opcode:C4.toString(t>>11&15),flag_aa:(t>>10&1)===1,flag_tc:(t>>9&1)===1,flag_rd:(t>>8&1)===1,flag_ra:(t>>7&1)===1,flag_z:(t>>6&1)===1,flag_ad:(t>>5&1)===1,flag_cd:(t>>4&1)===1,rcode:T4.toString(t&15),questions:new Array(r.readUInt16BE(e+4)),answers:new Array(r.readUInt16BE(e+6)),authorities:new Array(r.readUInt16BE(e+8)),additionals:new Array(r.readUInt16BE(e+10))}};sr.decode.bytes=12;sr.encodingLength=function(){return 12};var cn=q.unknown={};cn.encode=function(r,e,t){return e||(e=G.alloc(cn.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.length,t),r.copy(e,t+2),cn.encode.bytes=r.length+2,e};cn.encode.bytes=0;cn.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=r.slice(e+2,e+2+t);return cn.decode.bytes=t+2,n};cn.decode.bytes=0;cn.encodingLength=function(r){return r.length+2};var ln=q.ns={};ln.encode=function(r,e,t){return e||(e=G.alloc(ln.encodingLength(r))),t||(t=0),V.encode(r,e,t+2),e.writeUInt16BE(V.encode.bytes,t),ln.encode.bytes=V.encode.bytes+2,e};ln.encode.bytes=0;ln.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n=V.decode(r,e+2);return ln.decode.bytes=t+2,n};ln.decode.bytes=0;ln.encodingLength=function(r){return V.encodingLength(r)+2};var un=q.soa={};un.encode=function(r,e,t){e||(e=G.alloc(un.encodingLength(r))),t||(t=0);let n=t;return t+=2,V.encode(r.mname,e,t),t+=V.encode.bytes,V.encode(r.rname,e,t,{mail:!0}),t+=V.encode.bytes,e.writeUInt32BE(r.serial||0,t),t+=4,e.writeUInt32BE(r.refresh||0,t),t+=4,e.writeUInt32BE(r.retry||0,t),t+=4,e.writeUInt32BE(r.expire||0,t),t+=4,e.writeUInt32BE(r.minimum||0,t),t+=4,e.writeUInt16BE(t-n-2,n),un.encode.bytes=t-n,e};un.encode.bytes=0;un.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mname=V.decode(r,e),e+=V.decode.bytes,n.rname=V.decode(r,e,{mail:!0}),e+=V.decode.bytes,n.serial=r.readUInt32BE(e),e+=4,n.refresh=r.readUInt32BE(e),e+=4,n.retry=r.readUInt32BE(e),e+=4,n.expire=r.readUInt32BE(e),e+=4,n.minimum=r.readUInt32BE(e),e+=4,un.decode.bytes=e-t,n};un.decode.bytes=0;un.encodingLength=function(r){return 22+V.encodingLength(r.mname)+V.encodingLength(r.rname)};var hn=q.txt={};hn.encode=function(r,e,t){Array.isArray(r)||(r=[r]);for(let i=0;i<r.length;i++)if(typeof r[i]=="string"&&(r[i]=G.from(r[i])),!G.isBuffer(r[i]))throw new Error("Must be a Buffer");e||(e=G.alloc(hn.encodingLength(r))),t||(t=0);let n=t;return t+=2,r.forEach(function(i){e[t++]=i.length,i.copy(e,t,0,i.length),t+=i.length}),e.writeUInt16BE(t-n-2,n),hn.encode.bytes=t-n,e};hn.encode.bytes=0;hn.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let i=[];for(;n>0;){let o=r[e++];if(--n,n<o)throw new Error("Buffer overflow");i.push(r.slice(e,e+o)),e+=o,n-=o}return hn.decode.bytes=e-t,i};hn.decode.bytes=0;hn.encodingLength=function(r){Array.isArray(r)||(r=[r]);let e=2;return r.forEach(function(t){typeof t=="string"?e+=G.byteLength(t)+1:e+=t.length+1}),e};var dn=q.null={};dn.encode=function(r,e,t){e||(e=G.alloc(dn.encodingLength(r))),t||(t=0),typeof r=="string"&&(r=G.from(r)),r||(r=G.alloc(0));let n=t;t+=2;let i=r.length;return r.copy(e,t,0,i),t+=i,e.writeUInt16BE(t-n-2,n),dn.encode.bytes=t-n,e};dn.encode.bytes=0;dn.decode=function(r,e){e||(e=0);let t=e,n=r.readUInt16BE(e);e+=2;let i=r.slice(e,e+n);return e+=n,dn.decode.bytes=e-t,i};dn.decode.bytes=0;dn.encodingLength=function(r){return r?(G.isBuffer(r)?r.length:G.byteLength(r))+2:2};var fn=q.hinfo={};fn.encode=function(r,e,t){e||(e=G.alloc(fn.encodingLength(r))),t||(t=0);let n=t;return t+=2,ee.encode(r.cpu,e,t),t+=ee.encode.bytes,ee.encode(r.os,e,t),t+=ee.encode.bytes,e.writeUInt16BE(t-n-2,n),fn.encode.bytes=t-n,e};fn.encode.bytes=0;fn.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.cpu=ee.decode(r,e),e+=ee.decode.bytes,n.os=ee.decode(r,e),e+=ee.decode.bytes,fn.decode.bytes=e-t,n};fn.decode.bytes=0;fn.encodingLength=function(r){return ee.encodingLength(r.cpu)+ee.encodingLength(r.os)+2};var ir=q.ptr={},D4=q.cname=ir,P4=q.dname=ir;ir.encode=function(r,e,t){return e||(e=G.alloc(ir.encodingLength(r))),t||(t=0),V.encode(r,e,t+2),e.writeUInt16BE(V.encode.bytes,t),ir.encode.bytes=V.encode.bytes+2,e};ir.encode.bytes=0;ir.decode=function(r,e){e||(e=0);let t=V.decode(r,e+2);return ir.decode.bytes=V.decode.bytes+2,t};ir.decode.bytes=0;ir.encodingLength=function(r){return V.encodingLength(r)+2};var pn=q.srv={};pn.encode=function(r,e,t){e||(e=G.alloc(pn.encodingLength(r))),t||(t=0),e.writeUInt16BE(r.priority||0,t+2),e.writeUInt16BE(r.weight||0,t+4),e.writeUInt16BE(r.port||0,t+6),V.encode(r.target,e,t+8);let n=V.encode.bytes+6;return e.writeUInt16BE(n,t),pn.encode.bytes=n+2,e};pn.encode.bytes=0;pn.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e),n={};return n.priority=r.readUInt16BE(e+2),n.weight=r.readUInt16BE(e+4),n.port=r.readUInt16BE(e+6),n.target=V.decode(r,e+8),pn.decode.bytes=t+2,n};pn.decode.bytes=0;pn.encodingLength=function(r){return 8+V.encodingLength(r.target)};var Tt=q.caa={};Tt.ISSUER_CRITICAL=128;Tt.encode=function(r,e,t){let n=Tt.encodingLength(r);return e||(e=G.alloc(Tt.encodingLength(r))),t||(t=0),r.issuerCritical&&(r.flags=Tt.ISSUER_CRITICAL),e.writeUInt16BE(n-2,t),t+=2,e.writeUInt8(r.flags||0,t),t+=1,ee.encode(r.tag,e,t),t+=ee.encode.bytes,e.write(r.value,t),t+=G.byteLength(r.value),Tt.encode.bytes=n,e};Tt.encode.bytes=0;Tt.decode=function(r,e){e||(e=0);let t=r.readUInt16BE(e);e+=2;let n=e,i={};return i.flags=r.readUInt8(e),e+=1,i.tag=ee.decode(r,e),e+=ee.decode.bytes,i.value=r.toString("utf-8",e,n+t),i.issuerCritical=!!(i.flags&Tt.ISSUER_CRITICAL),Tt.decode.bytes=t+2,i};Tt.decode.bytes=0;Tt.encodingLength=function(r){return ee.encodingLength(r.tag)+ee.encodingLength(r.value)+2};var Wn=q.mx={};Wn.encode=function(r,e,t){e||(e=G.alloc(Wn.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,V.encode(r.exchange,e,t),t+=V.encode.bytes,e.writeUInt16BE(t-n-2,n),Wn.encode.bytes=t-n,e};Wn.encode.bytes=0;Wn.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.preference=r.readUInt16BE(e),e+=2,n.exchange=V.decode(r,e),e+=V.decode.bytes,Wn.decode.bytes=e-t,n};Wn.encodingLength=function(r){return 4+V.encodingLength(r.exchange)};var mn=q.a={};mn.encode=function(r,e,t){return e||(e=G.alloc(mn.encodingLength(r))),t||(t=0),e.writeUInt16BE(4,t),t+=2,Si.v4.encode(r,e,t),mn.encode.bytes=6,e};mn.encode.bytes=0;mn.decode=function(r,e){e||(e=0),e+=2;let t=Si.v4.decode(r,e);return mn.decode.bytes=6,t};mn.decode.bytes=0;mn.encodingLength=function(){return 6};var yn=q.aaaa={};yn.encode=function(r,e,t){return e||(e=G.alloc(yn.encodingLength(r))),t||(t=0),e.writeUInt16BE(16,t),t+=2,Si.v6.encode(r,e,t),yn.encode.bytes=18,e};yn.encode.bytes=0;yn.decode=function(r,e){e||(e=0),e+=2;let t=Si.v6.decode(r,e);return yn.decode.bytes=18,t};yn.decode.bytes=0;yn.encodingLength=function(){return 18};var bt=q.option={};bt.encode=function(r,e,t){e||(e=G.alloc(bt.encodingLength(r))),t||(t=0);let n=t,i=af.toCode(r.code);if(e.writeUInt16BE(i,t),t+=2,r.data)e.writeUInt16BE(r.data.length,t),t+=2,r.data.copy(e,t),t+=r.data.length;else switch(i){case 8:let o=r.sourcePrefixLength||0,s=r.family||Si.familyOf(r.ip),a=Si.encode(r.ip,G.alloc),c=Math.ceil(o/8);e.writeUInt16BE(c+4,t),t+=2,e.writeUInt16BE(s,t),t+=2,e.writeUInt8(o,t++),e.writeUInt8(r.scopePrefixLength||0,t++),a.copy(e,t,0,c),t+=c;break;case 11:r.timeout?(e.writeUInt16BE(2,t),t+=2,e.writeUInt16BE(r.timeout,t),t+=2):(e.writeUInt16BE(0,t),t+=2);break;case 12:let u=r.length||0;e.writeUInt16BE(u,t),t+=2,e.fill(0,t,t+u),t+=u;break;case 14:let l=r.tags.length*2;e.writeUInt16BE(l,t),t+=2;for(let h of r.tags)e.writeUInt16BE(h,t),t+=2;break;default:throw new Error(`Unknown roption code: ${r.code}`)}return bt.encode.bytes=t-n,e};bt.encode.bytes=0;bt.decode=function(r,e){e||(e=0);let t={};t.code=r.readUInt16BE(e),t.type=af.toString(t.code),e+=2;let n=r.readUInt16BE(e);switch(e+=2,t.data=r.slice(e,e+n),t.code){case 8:t.family=r.readUInt16BE(e),e+=2,t.sourcePrefixLength=r.readUInt8(e++),t.scopePrefixLength=r.readUInt8(e++);let i=G.alloc(t.family===1?4:16);r.copy(i,0,e,e+n-4),t.ip=Si.decode(i);break;case 11:n>0&&(t.timeout=r.readUInt16BE(e),e+=2);break;case 14:t.tags=[];for(let o=0;o<n;o+=2)t.tags.push(r.readUInt16BE(e)),e+=2}return bt.decode.bytes=n+4,t};bt.decode.bytes=0;bt.encodingLength=function(r){if(r.data)return r.data.length+4;switch(af.toCode(r.code)){case 8:let t=r.sourcePrefixLength||0;return Math.ceil(t/8)+8;case 11:return typeof r.timeout=="number"?6:4;case 12:return r.length+4;case 14:return 4+r.tags.length*2}throw new Error(`Unknown roption code: ${r.code}`)};var Nt=q.opt={};Nt.encode=function(r,e,t){e||(e=G.alloc(Nt.encodingLength(r))),t||(t=0);let n=t,i=No(r,bt);return e.writeUInt16BE(i,t),t=$s(r,bt,e,t+2),Nt.encode.bytes=t-n,e};Nt.encode.bytes=0;Nt.decode=function(r,e){e||(e=0);let t=e,n=[],i=r.readUInt16BE(e);e+=2;let o=0;for(;i>0;)n[o++]=bt.decode(r,e),e+=bt.decode.bytes,i-=bt.decode.bytes;return Nt.decode.bytes=e-t,n};Nt.decode.bytes=0;Nt.encodingLength=function(r){return 2+No(r||[],bt)};var ut=q.dnskey={};ut.PROTOCOL_DNSSEC=3;ut.ZONE_KEY=128;ut.SECURE_ENTRYPOINT=32768;ut.encode=function(r,e,t){e||(e=G.alloc(ut.encodingLength(r))),t||(t=0);let n=t,i=r.key;if(!G.isBuffer(i))throw new Error("Key must be a Buffer");return t+=2,e.writeUInt16BE(r.flags,t),t+=2,e.writeUInt8(ut.PROTOCOL_DNSSEC,t),t+=1,e.writeUInt8(r.algorithm,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,ut.encode.bytes=t-n,e.writeUInt16BE(ut.encode.bytes-2,n),e};ut.encode.bytes=0;ut.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);if(e+=2,n.flags=r.readUInt16BE(e),e+=2,r.readUInt8(e)!==ut.PROTOCOL_DNSSEC)throw new Error("Protocol must be 3");return e+=1,n.algorithm=r.readUInt8(e),e+=1,n.key=r.slice(e,t+i+2),e+=n.key.length,ut.decode.bytes=e-t,n};ut.decode.bytes=0;ut.encodingLength=function(r){return 6+G.byteLength(r.key)};var Br=q.rrsig={};Br.encode=function(r,e,t){e||(e=G.alloc(Br.encodingLength(r))),t||(t=0);let n=t,i=r.signature;if(!G.isBuffer(i))throw new Error("Signature must be a Buffer");return t+=2,e.writeUInt16BE(gn.toType(r.typeCovered),t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.labels,t),t+=1,e.writeUInt32BE(r.originalTTL,t),t+=4,e.writeUInt32BE(r.expiration,t),t+=4,e.writeUInt32BE(r.inception,t),t+=4,e.writeUInt16BE(r.keyTag,t),t+=2,V.encode(r.signersName,e,t),t+=V.encode.bytes,i.copy(e,t,0,i.length),t+=i.length,Br.encode.bytes=t-n,e.writeUInt16BE(Br.encode.bytes-2,n),e};Br.encode.bytes=0;Br.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.typeCovered=gn.toString(r.readUInt16BE(e)),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.labels=r.readUInt8(e),e+=1,n.originalTTL=r.readUInt32BE(e),e+=4,n.expiration=r.readUInt32BE(e),e+=4,n.inception=r.readUInt32BE(e),e+=4,n.keyTag=r.readUInt16BE(e),e+=2,n.signersName=V.decode(r,e),e+=V.decode.bytes,n.signature=r.slice(e,t+i+2),e+=n.signature.length,Br.decode.bytes=e-t,n};Br.decode.bytes=0;Br.encodingLength=function(r){return 20+V.encodingLength(r.signersName)+G.byteLength(r.signature)};var Ar=q.rp={};Ar.encode=function(r,e,t){e||(e=G.alloc(Ar.encodingLength(r))),t||(t=0);let n=t;return t+=2,V.encode(r.mbox||".",e,t,{mail:!0}),t+=V.encode.bytes,V.encode(r.txt||".",e,t),t+=V.encode.bytes,Ar.encode.bytes=t-n,e.writeUInt16BE(Ar.encode.bytes-2,n),e};Ar.encode.bytes=0;Ar.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.mbox=V.decode(r,e,{mail:!0})||".",e+=V.decode.bytes,n.txt=V.decode(r,e)||".",e+=V.decode.bytes,Ar.decode.bytes=e-t,n};Ar.decode.bytes=0;Ar.encodingLength=function(r){return 2+V.encodingLength(r.mbox||".")+V.encodingLength(r.txt||".")};var $e={};$e.encode=function(r,e,t){e||(e=G.alloc($e.encodingLength(r))),t||(t=0);let n=t;for(var i=[],o=0;o<r.length;o++){var s=gn.toType(r[o]);i[s>>8]===void 0&&(i[s>>8]=[]),i[s>>8][s>>3&31]|=1<<7-(s&7)}for(o=0;o<i.length;o++)if(i[o]!==void 0){var a=G.from(i[o]);e.writeUInt8(o,t),t+=1,e.writeUInt8(a.length,t),t+=1,a.copy(e,t),t+=a.length}return $e.encode.bytes=t-n,e};$e.encode.bytes=0;$e.decode=function(r,e,t){e||(e=0);let n=e;for(var i=[];e-n<t;){var o=r.readUInt8(e);e+=1;var s=r.readUInt8(e);e+=1;for(var a=0;a<s;a++)for(var c=r.readUInt8(e+a),u=0;u<8;u++)if(c&1<<7-u){var l=gn.toString(o<<8|a<<3|u);i.push(l)}e+=s}return $e.decode.bytes=e-n,i};$e.decode.bytes=0;$e.encodingLength=function(r){for(var e=[],t=0;t<r.length;t++){var n=gn.toType(r[t]);e[n>>8]=Math.max(e[n>>8]||0,n&255)}var i=0;for(t=0;t<e.length;t++)e[t]!==void 0&&(i+=2+Math.ceil((e[t]+1)/8));return i};var Ir=q.nsec={};Ir.encode=function(r,e,t){e||(e=G.alloc(Ir.encodingLength(r))),t||(t=0);let n=t;return t+=2,V.encode(r.nextDomain,e,t),t+=V.encode.bytes,$e.encode(r.rrtypes,e,t),t+=$e.encode.bytes,Ir.encode.bytes=t-n,e.writeUInt16BE(Ir.encode.bytes-2,n),e};Ir.encode.bytes=0;Ir.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.nextDomain=V.decode(r,e),e+=V.decode.bytes,n.rrtypes=$e.decode(r,e,i-(e-t)),e+=$e.decode.bytes,Ir.decode.bytes=e-t,n};Ir.decode.bytes=0;Ir.encodingLength=function(r){return 2+V.encodingLength(r.nextDomain)+$e.encodingLength(r.rrtypes)};var Sr=q.nsec3={};Sr.encode=function(r,e,t){e||(e=G.alloc(Sr.encodingLength(r))),t||(t=0);let n=t,i=r.salt;if(!G.isBuffer(i))throw new Error("salt must be a Buffer");let o=r.nextDomain;if(!G.isBuffer(o))throw new Error("nextDomain must be a Buffer");return t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.flags,t),t+=1,e.writeUInt16BE(r.iterations,t),t+=2,e.writeUInt8(i.length,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,e.writeUInt8(o.length,t),t+=1,o.copy(e,t,0,o.length),t+=o.length,$e.encode(r.rrtypes,e,t),t+=$e.encode.bytes,Sr.encode.bytes=t-n,e.writeUInt16BE(Sr.encode.bytes-2,n),e};Sr.encode.bytes=0;Sr.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);e+=2,n.algorithm=r.readUInt8(e),e+=1,n.flags=r.readUInt8(e),e+=1,n.iterations=r.readUInt16BE(e),e+=2;let o=r.readUInt8(e);e+=1,n.salt=r.slice(e,e+o),e+=o;let s=r.readUInt8(e);return e+=1,n.nextDomain=r.slice(e,e+s),e+=s,n.rrtypes=$e.decode(r,e,i-(e-t)),e+=$e.decode.bytes,Sr.decode.bytes=e-t,n};Sr.decode.bytes=0;Sr.encodingLength=function(r){return 8+r.salt.length+r.nextDomain.length+$e.encodingLength(r.rrtypes)};var _r=q.ds={};_r.encode=function(r,e,t){e||(e=G.alloc(_r.encodingLength(r))),t||(t=0);let n=t,i=r.digest;if(!G.isBuffer(i))throw new Error("Digest must be a Buffer");return t+=2,e.writeUInt16BE(r.keyTag,t),t+=2,e.writeUInt8(r.algorithm,t),t+=1,e.writeUInt8(r.digestType,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,_r.encode.bytes=t-n,e.writeUInt16BE(_r.encode.bytes-2,n),e};_r.encode.bytes=0;_r.decode=function(r,e){e||(e=0);let t=e;var n={},i=r.readUInt16BE(e);return e+=2,n.keyTag=r.readUInt16BE(e),e+=2,n.algorithm=r.readUInt8(e),e+=1,n.digestType=r.readUInt8(e),e+=1,n.digest=r.slice(e,t+i+2),e+=n.digest.length,_r.decode.bytes=e-t,n};_r.decode.bytes=0;_r.encodingLength=function(r){return 6+G.byteLength(r.digest)};var Ct=q.sshfp={};Ct.getFingerprintLengthForHashType=function(e){switch(e){case 1:return 20;case 2:return 32}};Ct.encode=function(e,t,n){t||(t=G.alloc(Ct.encodingLength(e))),n||(n=0);let i=n;n+=2,t[n]=e.algorithm,n+=1,t[n]=e.hash,n+=1;let o=G.from(e.fingerprint.toUpperCase(),"hex");if(o.length!==Ct.getFingerprintLengthForHashType(e.hash))throw new Error("Invalid fingerprint length");return o.copy(t,n),n+=o.byteLength,Ct.encode.bytes=n-i,t.writeUInt16BE(Ct.encode.bytes-2,i),t};Ct.encode.bytes=0;Ct.decode=function(e,t){t||(t=0);let n=t,i={};t+=2,i.algorithm=e[t],t+=1,i.hash=e[t],t+=1;let o=Ct.getFingerprintLengthForHashType(i.hash);return i.fingerprint=e.slice(t,t+o).toString("hex").toUpperCase(),t+=o,Ct.decode.bytes=t-n,i};Ct.decode.bytes=0;Ct.encodingLength=function(r){return 4+G.from(r.fingerprint,"hex").byteLength};var kr=q.naptr={};kr.encode=function(r,e,t){e||(e=G.alloc(kr.encodingLength(r))),t||(t=0);let n=t;return t+=2,e.writeUInt16BE(r.order||0,t),t+=2,e.writeUInt16BE(r.preference||0,t),t+=2,ee.encode(r.flags,e,t),t+=ee.encode.bytes,ee.encode(r.services,e,t),t+=ee.encode.bytes,ee.encode(r.regexp,e,t),t+=ee.encode.bytes,V.encode(r.replacement,e,t),t+=V.encode.bytes,kr.encode.bytes=t-n,e.writeUInt16BE(kr.encode.bytes-2,n),e};kr.encode.bytes=0;kr.decode=function(r,e){e||(e=0);let t=e,n={};return e+=2,n.order=r.readUInt16BE(e),e+=2,n.preference=r.readUInt16BE(e),e+=2,n.flags=ee.decode(r,e),e+=ee.decode.bytes,n.services=ee.decode(r,e),e+=ee.decode.bytes,n.regexp=ee.decode(r,e),e+=ee.decode.bytes,n.replacement=V.decode(r,e),e+=V.decode.bytes,kr.decode.bytes=e-t,n};kr.decode.bytes=0;kr.encodingLength=function(r){return ee.encodingLength(r.flags)+ee.encodingLength(r.services)+ee.encodingLength(r.regexp)+V.encodingLength(r.replacement)+6};var Rr=q.tlsa={};Rr.encode=function(r,e,t){e||(e=G.alloc(Rr.encodingLength(r))),t||(t=0);let n=t,i=r.certificate;if(!G.isBuffer(i))throw new Error("Certificate must be a Buffer");return t+=2,e.writeUInt8(r.usage,t),t+=1,e.writeUInt8(r.selector,t),t+=1,e.writeUInt8(r.matchingType,t),t+=1,i.copy(e,t,0,i.length),t+=i.length,Rr.encode.bytes=t-n,e.writeUInt16BE(Rr.encode.bytes-2,n),e};Rr.encode.bytes=0;Rr.decode=function(r,e){e||(e=0);let t=e,n={},i=r.readUInt16BE(e);return e+=2,n.usage=r.readUInt8(e),e+=1,n.selector=r.readUInt8(e),e+=1,n.matchingType=r.readUInt8(e),e+=1,n.certificate=r.slice(e,t+i+2),e+=n.certificate.length,Rr.decode.bytes=e-t,n};Rr.decode.bytes=0;Rr.encodingLength=function(r){return 5+G.byteLength(r.certificate)};var lf=q.record=function(r){switch(r.toUpperCase()){case"A":return mn;case"PTR":return ir;case"CNAME":return D4;case"DNAME":return P4;case"TXT":return hn;case"NULL":return dn;case"AAAA":return yn;case"SRV":return pn;case"HINFO":return fn;case"CAA":return Tt;case"NS":return ln;case"SOA":return un;case"MX":return Wn;case"OPT":return Nt;case"DNSKEY":return ut;case"RRSIG":return Br;case"RP":return Ar;case"NSEC":return Ir;case"NSEC3":return Sr;case"SSHFP":return Ct;case"DS":return _r;case"NAPTR":return kr;case"TLSA":return Rr}return cn},Ye=q.answer={};Ye.encode=function(r,e,t){e||(e=G.alloc(Ye.encodingLength(r))),t||(t=0);let n=t;if(V.encode(r.name,e,t),t+=V.encode.bytes,e.writeUInt16BE(gn.toType(r.type),t),r.type.toUpperCase()==="OPT"){if(r.name!==".")throw new Error("OPT name must be root.");e.writeUInt16BE(r.udpPayloadSize||4096,t+2),e.writeUInt8(r.extendedRcode||0,t+4),e.writeUInt8(r.ednsVersion||0,t+5),e.writeUInt16BE(r.flags||0,t+6),t+=8,Nt.encode(r.options||[],e,t),t+=Nt.encode.bytes}else{let i=El.toClass(r.class===void 0?"IN":r.class);r.flush&&(i|=cf),e.writeUInt16BE(i,t+2),e.writeUInt32BE(r.ttl||0,t+4),t+=8;let o=lf(r.type);o.encode(r.data,e,t),t+=o.encode.bytes}return Ye.encode.bytes=t-n,e};Ye.encode.bytes=0;Ye.decode=function(r,e){e||(e=0);let t={},n=e;if(t.name=V.decode(r,e),e+=V.decode.bytes,t.type=gn.toString(r.readUInt16BE(e)),t.type==="OPT")t.udpPayloadSize=r.readUInt16BE(e+2),t.extendedRcode=r.readUInt8(e+4),t.ednsVersion=r.readUInt8(e+5),t.flags=r.readUInt16BE(e+6),t.flag_do=(t.flags>>15&1)===1,t.options=Nt.decode(r,e+8),e+=8+Nt.decode.bytes;else{let i=r.readUInt16BE(e+2);t.ttl=r.readUInt32BE(e+4),t.class=El.toString(i&U4),t.flush=!!(i&cf);let o=lf(t.type);t.data=o.decode(r,e+8),e+=8+o.decode.bytes}return Ye.decode.bytes=e-n,t};Ye.decode.bytes=0;Ye.encodingLength=function(r){let e=r.data!==null&&r.data!==void 0?r.data:r.options;return V.encodingLength(r.name)+8+lf(r.type).encodingLength(e)};var or=q.question={};or.encode=function(r,e,t){e||(e=G.alloc(or.encodingLength(r))),t||(t=0);let n=t;return V.encode(r.name,e,t),t+=V.encode.bytes,e.writeUInt16BE(gn.toType(r.type),t),t+=2,e.writeUInt16BE(El.toClass(r.class===void 0?"IN":r.class),t),t+=2,or.encode.bytes=t-n,r};or.encode.bytes=0;or.decode=function(r,e){e||(e=0);let t=e,n={};return n.name=V.decode(r,e),e+=V.decode.bytes,n.type=gn.toString(r.readUInt16BE(e)),e+=2,n.class=El.toString(r.readUInt16BE(e)),e+=2,!!(n.class&Pg)&&(n.class&=L4),or.decode.bytes=e-t,n};or.decode.bytes=0;or.encodingLength=function(r){return V.encodingLength(r.name)+4};q.AUTHORITATIVE_ANSWER=1024;q.TRUNCATED_RESPONSE=512;q.RECURSION_DESIRED=256;q.RECURSION_AVAILABLE=128;q.AUTHENTIC_DATA=32;q.CHECKING_DISABLED=16;q.DNSSEC_OK=32768;q.encode=function(r,e,t){let n=!e;n&&(e=G.alloc(q.encodingLength(r))),t||(t=0);let i=t;return r.questions||(r.questions=[]),r.answers||(r.answers=[]),r.authorities||(r.authorities=[]),r.additionals||(r.additionals=[]),sr.encode(r,e,t),t+=sr.encode.bytes,t=$s(r.questions,or,e,t),t=$s(r.answers,Ye,e,t),t=$s(r.authorities,Ye,e,t),t=$s(r.additionals,Ye,e,t),q.encode.bytes=t-i,n&&q.encode.bytes!==e.length?e.slice(0,q.encode.bytes):e};q.encode.bytes=0;q.decode=function(r,e){e||(e=0);let t=e,n=sr.decode(r,e);return e+=sr.decode.bytes,e=bl(n.questions,or,r,e),e=bl(n.answers,Ye,r,e),e=bl(n.authorities,Ye,r,e),e=bl(n.additionals,Ye,r,e),q.decode.bytes=e-t,n};q.decode.bytes=0;q.encodingLength=function(r){return sr.encodingLength(r)+No(r.questions||[],or)+No(r.answers||[],Ye)+No(r.authorities||[],Ye)+No(r.additionals||[],Ye)};q.streamEncode=function(r){let e=q.encode(r),t=G.alloc(2);t.writeUInt16BE(e.byteLength);let n=G.concat([t,e]);return q.streamEncode.bytes=n.byteLength,n};q.streamEncode.bytes=0;q.streamDecode=function(r){let e=r.readUInt16BE(0);if(r.byteLength<e+2)return null;let t=q.decode(r.slice(2));return q.streamDecode.bytes=q.decode.bytes,t};q.streamDecode.bytes=0;function No(r,e){let t=0;for(let n=0;n<r.length;n++)t+=e.encodingLength(r[n]);return t}function $s(r,e,t,n){for(let i=0;i<r.length;i++)e.encode(r[i],t,n),n+=e.encode.bytes;return n}function bl(r,e,t,n){for(let i=0;i<r.length;i++)r[i]=e.decode(t,n),n+=e.decode.bytes;return n}});var Wg=me((Ys,Al)=>{(function(r,e){"use strict";var t={version:"3.0.0",x86:{},x64:{},inputValidation:!0};function n(d){if(!Array.isArray(d)&&!ArrayBuffer.isView(d))return!1;for(var f=0;f<d.length;f++)if(!Number.isInteger(d[f])||d[f]<0||d[f]>255)return!1;return!0}function i(d,f){return(d&65535)*f+(((d>>>16)*f&65535)<<16)}function o(d,f){return d<<f|d>>>32-f}function s(d){return d^=d>>>16,d=i(d,2246822507),d^=d>>>13,d=i(d,3266489909),d^=d>>>16,d}function a(d,f){d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535],f=[f[0]>>>16,f[0]&65535,f[1]>>>16,f[1]&65535];var m=[0,0,0,0];return m[3]+=d[3]+f[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=d[2]+f[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=d[1]+f[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=d[0]+f[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function c(d,f){d=[d[0]>>>16,d[0]&65535,d[1]>>>16,d[1]&65535],f=[f[0]>>>16,f[0]&65535,f[1]>>>16,f[1]&65535];var m=[0,0,0,0];return m[3]+=d[3]*f[3],m[2]+=m[3]>>>16,m[3]&=65535,m[2]+=d[2]*f[3],m[1]+=m[2]>>>16,m[2]&=65535,m[2]+=d[3]*f[2],m[1]+=m[2]>>>16,m[2]&=65535,m[1]+=d[1]*f[3],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=d[2]*f[2],m[0]+=m[1]>>>16,m[1]&=65535,m[1]+=d[3]*f[1],m[0]+=m[1]>>>16,m[1]&=65535,m[0]+=d[0]*f[3]+d[1]*f[2]+d[2]*f[1]+d[3]*f[0],m[0]&=65535,[m[0]<<16|m[1],m[2]<<16|m[3]]}function u(d,f){return f%=64,f===32?[d[1],d[0]]:f<32?[d[0]<<f|d[1]>>>32-f,d[1]<<f|d[0]>>>32-f]:(f-=32,[d[1]<<f|d[0]>>>32-f,d[0]<<f|d[1]>>>32-f])}function l(d,f){return f%=64,f===0?d:f<32?[d[0]<<f|d[1]>>>32-f,d[1]<<f]:[d[1]<<f-32,0]}function h(d,f){return[d[0]^f[0],d[1]^f[1]]}function p(d){return d=h(d,[0,d[0]>>>1]),d=c(d,[4283543511,3981806797]),d=h(d,[0,d[0]>>>1]),d=c(d,[3301882366,444984403]),d=h(d,[0,d[0]>>>1]),d}t.x86.hash32=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var m=d.length%4,y=d.length-m,g=f,w=0,x=3432918353,A=461845907,I=0;I<y;I=I+4)w=d[I]|d[I+1]<<8|d[I+2]<<16|d[I+3]<<24,w=i(w,x),w=o(w,15),w=i(w,A),g^=w,g=o(g,13),g=i(g,5)+3864292196;switch(w=0,m){case 3:w^=d[I+2]<<16;case 2:w^=d[I+1]<<8;case 1:w^=d[I],w=i(w,x),w=o(w,15),w=i(w,A),g^=w}return g^=d.length,g=s(g),g>>>0},t.x86.hash128=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var m=d.length%16,y=d.length-m,g=f,w=f,x=f,A=f,I=0,B=0,v=0,E=0,R=597399067,N=2869860233,T=951274213,M=2716044179,D=0;D<y;D=D+16)I=d[D]|d[D+1]<<8|d[D+2]<<16|d[D+3]<<24,B=d[D+4]|d[D+5]<<8|d[D+6]<<16|d[D+7]<<24,v=d[D+8]|d[D+9]<<8|d[D+10]<<16|d[D+11]<<24,E=d[D+12]|d[D+13]<<8|d[D+14]<<16|d[D+15]<<24,I=i(I,R),I=o(I,15),I=i(I,N),g^=I,g=o(g,19),g+=w,g=i(g,5)+1444728091,B=i(B,N),B=o(B,16),B=i(B,T),w^=B,w=o(w,17),w+=x,w=i(w,5)+197830471,v=i(v,T),v=o(v,17),v=i(v,M),x^=v,x=o(x,15),x+=A,x=i(x,5)+2530024501,E=i(E,M),E=o(E,18),E=i(E,R),A^=E,A=o(A,13),A+=g,A=i(A,5)+850148119;switch(I=0,B=0,v=0,E=0,m){case 15:E^=d[D+14]<<16;case 14:E^=d[D+13]<<8;case 13:E^=d[D+12],E=i(E,M),E=o(E,18),E=i(E,R),A^=E;case 12:v^=d[D+11]<<24;case 11:v^=d[D+10]<<16;case 10:v^=d[D+9]<<8;case 9:v^=d[D+8],v=i(v,T),v=o(v,17),v=i(v,M),x^=v;case 8:B^=d[D+7]<<24;case 7:B^=d[D+6]<<16;case 6:B^=d[D+5]<<8;case 5:B^=d[D+4],B=i(B,N),B=o(B,16),B=i(B,T),w^=B;case 4:I^=d[D+3]<<24;case 3:I^=d[D+2]<<16;case 2:I^=d[D+1]<<8;case 1:I^=d[D],I=i(I,R),I=o(I,15),I=i(I,N),g^=I}return g^=d.length,w^=d.length,x^=d.length,A^=d.length,g+=w,g+=x,g+=A,w+=g,x+=g,A+=g,g=s(g),w=s(w),x=s(x),A=s(A),g+=w,g+=x,g+=A,w+=g,x+=g,A+=g,("00000000"+(g>>>0).toString(16)).slice(-8)+("00000000"+(w>>>0).toString(16)).slice(-8)+("00000000"+(x>>>0).toString(16)).slice(-8)+("00000000"+(A>>>0).toString(16)).slice(-8)},t.x64.hash128=function(d,f){if(t.inputValidation&&!n(d))return e;f=f||0;for(var m=d.length%16,y=d.length-m,g=[0,f],w=[0,f],x=[0,0],A=[0,0],I=[2277735313,289559509],B=[1291169091,658871167],v=0;v<y;v=v+16)x=[d[v+4]|d[v+5]<<8|d[v+6]<<16|d[v+7]<<24,d[v]|d[v+1]<<8|d[v+2]<<16|d[v+3]<<24],A=[d[v+12]|d[v+13]<<8|d[v+14]<<16|d[v+15]<<24,d[v+8]|d[v+9]<<8|d[v+10]<<16|d[v+11]<<24],x=c(x,I),x=u(x,31),x=c(x,B),g=h(g,x),g=u(g,27),g=a(g,w),g=a(c(g,[0,5]),[0,1390208809]),A=c(A,B),A=u(A,33),A=c(A,I),w=h(w,A),w=u(w,31),w=a(w,g),w=a(c(w,[0,5]),[0,944331445]);switch(x=[0,0],A=[0,0],m){case 15:A=h(A,l([0,d[v+14]],48));case 14:A=h(A,l([0,d[v+13]],40));case 13:A=h(A,l([0,d[v+12]],32));case 12:A=h(A,l([0,d[v+11]],24));case 11:A=h(A,l([0,d[v+10]],16));case 10:A=h(A,l([0,d[v+9]],8));case 9:A=h(A,[0,d[v+8]]),A=c(A,B),A=u(A,33),A=c(A,I),w=h(w,A);case 8:x=h(x,l([0,d[v+7]],56));case 7:x=h(x,l([0,d[v+6]],48));case 6:x=h(x,l([0,d[v+5]],40));case 5:x=h(x,l([0,d[v+4]],32));case 4:x=h(x,l([0,d[v+3]],24));case 3:x=h(x,l([0,d[v+2]],16));case 2:x=h(x,l([0,d[v+1]],8));case 1:x=h(x,[0,d[v]]),x=c(x,I),x=u(x,31),x=c(x,B),g=h(g,x)}return g=h(g,[0,d.length]),w=h(w,[0,d.length]),g=a(g,w),w=a(w,g),g=p(g),w=p(w),g=a(g,w),w=a(w,g),("00000000"+(g[0]>>>0).toString(16)).slice(-8)+("00000000"+(g[1]>>>0).toString(16)).slice(-8)+("00000000"+(w[0]>>>0).toString(16)).slice(-8)+("00000000"+(w[1]>>>0).toString(16)).slice(-8)},typeof Ys<"u"?(typeof Al<"u"&&Al.exports&&(Ys=Al.exports=t),Ys.murmurHash3=t):typeof define=="function"&&define.amd?define([],function(){return t}):(t._murmurHash3=r.murmurHash3,t.noConflict=function(){return r.murmurHash3=t._murmurHash3,t._murmurHash3=e,t.noConflict=e,t},r.murmurHash3=t)})(Ys)});var Xg=me((w7,Yg)=>{Yg.exports=Wg()});var Sl=me((I7,Jg)=>{"use strict";Jg.exports=class{constructor(){this._bitArrays=[],this._data=[],this._length=0,this._changedLength=!1,this._changedData=!1}set(e,t){let n=this._internalPositionFor(e,!1);if(t===void 0)n!==-1&&(this._unsetInternalPos(n),this._unsetBit(e),this._changedLength=!0,this._changedData=!0);else{let i=!1;n===-1?(n=this._data.length,this._setBit(e),this._changedData=!0):i=!0,this._setInternalPos(n,e,t,i),this._changedLength=!0}}unset(e){this.set(e,void 0)}get(e){this._sortData();let t=this._internalPositionFor(e,!0);if(t!==-1)return this._data[t][1]}push(e){return this.set(this.length,e),this.length}get length(){if(this._sortData(),this._changedLength){let e=this._data[this._data.length-1];this._length=e?e[0]+1:0,this._changedLength=!1}return this._length}forEach(e){let t=0;for(;t<this.length;)e(this.get(t),t,this),t++}map(e){let t=0,n=new Array(this.length);for(;t<this.length;)n[t]=e(this.get(t),t,this),t++;return n}reduce(e,t){let n=0,i=t;for(;n<this.length;){let o=this.get(n);i=e(i,o,n),n++}return i}find(e){let t=0,n,i;for(;t<this.length&&!n;)i=this.get(t),n=e(i),t++;return n?i:void 0}_internalPositionFor(e,t){let n=this._bytePosFor(e,t);if(n>=this._bitArrays.length)return-1;let i=this._bitArrays[n],o=e-n*7;if(!((i&1<<o)>0))return-1;let a=this._bitArrays.slice(0,n).reduce(J4,0),c=~(4294967295<<o+1),u=Zg(i&c);return a+u-1}_bytePosFor(e,t){let n=Math.floor(e/7),i=n+1;for(;!t&&this._bitArrays.length<i;)this._bitArrays.push(0);return n}_setBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]|=1<<e-t*7}_unsetBit(e){let t=this._bytePosFor(e,!1);this._bitArrays[t]&=~(1<<e-t*7)}_setInternalPos(e,t,n,i){let o=this._data,s=[t,n];if(i)this._sortData(),o[e]=s;else{if(o.length)if(o[o.length-1][0]>=t)o.push(s);else if(o[0][0]<=t)o.unshift(s);else{let a=Math.round(o.length/2);this._data=o.slice(0,a).concat(s).concat(o.slice(a))}else this._data.push(s);this._changedData=!0,this._changedLength=!0}}_unsetInternalPos(e){this._data.splice(e,1)}_sortData(){this._changedData&&this._data.sort(Q4),this._changedData=!1}bitField(){let e=[],t=8,n=0,i=0,o,s=this._bitArrays.slice();for(;s.length||n;){n===0&&(o=s.shift(),n=7);let c=Math.min(n,t),u=~(255<<c),l=o&u;i|=l<<8-t,o=o>>>c,n-=c,t-=c,(!t||!n&&!s.length)&&(e.push(i),i=0,t=8)}for(var a=e.length-1;a>0&&e[a]===0;a--)e.pop();return e}compactArray(){return this._sortData(),this._data.map(eB)}};function J4(r,e){return r+Zg(e)}function Zg(r){let e=r;return e=e-(e>>1&1431655765),e=(e&858993459)+(e>>2&858993459),(e+(e>>4)&252645135)*16843009>>24}function Q4(r,e){return r[0]-e[0]}function eB(r){return r[1]}});var fw=me((sO,dw)=>{var gf=class{constructor(e,t=12,n=8*1024,i=32*1024,o=64,s){this.bits=t,this.min=n,this.max=i,this.asModule=e,this.rabin=new e.Rabin(t,n,i,o,s),this.polynomial=s}fingerprint(e){let{__retain:t,__release:n,__allocArray:i,__getInt32Array:o,Int32Array_ID:s,Uint8Array_ID:a}=this.asModule,c=new Int32Array(Math.ceil(e.length/this.min)),u=t(i(s,c)),l=t(i(a,e)),h=this.rabin.fingerprint(l,u),p=o(h);n(l),n(u);let d=p.indexOf(0);return d>=0?p.subarray(0,d):p}};dw.exports=gf});var xw=me(Js=>{"use strict";var fB=typeof BigUint64Array<"u",Xs=Symbol(),Zs=1024;function pw(r,e){let t=new Uint32Array(r),n=new Uint16Array(r);var i=t[e+-4>>>2]>>>1,o=e>>>1;if(i<=Zs)return String.fromCharCode.apply(String,n.subarray(o,o+i));let s=[];do{let a=n[o+Zs-1],c=a>=55296&&a<56320?Zs-1:Zs;s.push(String.fromCharCode.apply(String,n.subarray(o,o+=c))),i-=c}while(i>Zs);return s.join("")+String.fromCharCode.apply(String,n.subarray(o,o+i))}function wf(r){let e={};function t(i,o){return i?pw(i.buffer,o):"<yet unknown>"}let n=r.env=r.env||{};return n.abort=n.abort||function(o,s,a,c){let u=e.memory||n.memory;throw Error("abort: "+t(u,o)+" at "+t(u,s)+":"+a+":"+c)},n.trace=n.trace||function(o,s){let a=e.memory||n.memory;console.log("trace: "+t(a,o)+(s?" ":"")+Array.prototype.slice.call(arguments,2,2+s).join(", "))},r.Math=r.Math||Math,r.Date=r.Date||Date,e}function xf(r,e){let t=e.exports,n=t.memory,i=t.table,o=t.__alloc,s=t.__retain,a=t.__rtti_base||-1;function c(B){let v=new Uint32Array(n.buffer),E=v[a>>>2];if((B>>>=0)>=E)throw Error("invalid id: "+B);return v[(a+4>>>2)+B*2]}function u(B){let v=new Uint32Array(n.buffer),E=v[a>>>2];if((B>>>=0)>=E)throw Error("invalid id: "+B);return v[(a+4>>>2)+B*2+1]}function l(B){return 31-Math.clz32(B>>>5&31)}function h(B){return 31-Math.clz32(B>>>14&31)}function p(B){let v=B.length,E=o(v<<1,1),R=new Uint16Array(n.buffer);for(var N=0,T=E>>>1;N<v;++N)R[T+N]=B.charCodeAt(N);return E}r.__allocString=p;function d(B){let v=n.buffer;if(new Uint32Array(v)[B+-8>>>2]!==1)throw Error("not a string: "+B);return pw(v,B)}r.__getString=d;function f(B,v,E){let R=n.buffer;if(E)switch(B){case 2:return new Float32Array(R);case 3:return new Float64Array(R)}else switch(B){case 0:return new(v?Int8Array:Uint8Array)(R);case 1:return new(v?Int16Array:Uint16Array)(R);case 2:return new(v?Int32Array:Uint32Array)(R);case 3:return new(v?BigInt64Array:BigUint64Array)(R)}throw Error("unsupported align: "+B)}function m(B,v){let E=c(B);if(!(E&3))throw Error("not an array: "+B+" @ "+E);let R=l(E),N=v.length,T=o(N<<R,0),M=o(E&2?16:12,B),D=new Uint32Array(n.buffer);D[M+0>>>2]=s(T),D[M+4>>>2]=T,D[M+8>>>2]=N<<R,E&2&&(D[M+12>>>2]=N);let ne=f(R,E&1024,E&2048);if(E&8192)for(let _=0;_<N;++_)ne[(T>>>R)+_]=s(v[_]);else ne.set(v,T>>>R);return M}r.__allocArray=m;function y(B){let v=new Uint32Array(n.buffer),E=v[B+-8>>>2],R=c(E);if(!(R&1))throw Error("not an array: "+E);let N=l(R);var T=v[B+4>>>2];let M=R&2?v[B+12>>>2]:v[T+-4>>>2]>>>N;return f(N,R&1024,R&2048).subarray(T>>>=N,T+M)}r.__getArrayView=y;function g(B){let v=y(B),E=v.length,R=new Array(E);for(let N=0;N<E;N++)R[N]=v[N];return R}r.__getArray=g;function w(B){let v=n.buffer,E=new Uint32Array(v)[B+-4>>>2];return v.slice(B,B+E)}r.__getArrayBuffer=w;function x(B,v,E){return new B(A(B,v,E))}function A(B,v,E){let R=n.buffer,N=new Uint32Array(R),T=N[E+4>>>2];return new B(R,T,N[T+-4>>>2]>>>v)}r.__getInt8Array=x.bind(null,Int8Array,0),r.__getInt8ArrayView=A.bind(null,Int8Array,0),r.__getUint8Array=x.bind(null,Uint8Array,0),r.__getUint8ArrayView=A.bind(null,Uint8Array,0),r.__getUint8ClampedArray=x.bind(null,Uint8ClampedArray,0),r.__getUint8ClampedArrayView=A.bind(null,Uint8ClampedArray,0),r.__getInt16Array=x.bind(null,Int16Array,1),r.__getInt16ArrayView=A.bind(null,Int16Array,1),r.__getUint16Array=x.bind(null,Uint16Array,1),r.__getUint16ArrayView=A.bind(null,Uint16Array,1),r.__getInt32Array=x.bind(null,Int32Array,2),r.__getInt32ArrayView=A.bind(null,Int32Array,2),r.__getUint32Array=x.bind(null,Uint32Array,2),r.__getUint32ArrayView=A.bind(null,Uint32Array,2),fB&&(r.__getInt64Array=x.bind(null,BigInt64Array,3),r.__getInt64ArrayView=A.bind(null,BigInt64Array,3),r.__getUint64Array=x.bind(null,BigUint64Array,3),r.__getUint64ArrayView=A.bind(null,BigUint64Array,3)),r.__getFloat32Array=x.bind(null,Float32Array,2),r.__getFloat32ArrayView=A.bind(null,Float32Array,2),r.__getFloat64Array=x.bind(null,Float64Array,3),r.__getFloat64ArrayView=A.bind(null,Float64Array,3);function I(B,v){let E=new Uint32Array(n.buffer);var R=E[B+-8>>>2];if(R<=E[a>>>2])do if(R==v)return!0;while(R=u(R));return!1}return r.__instanceof=I,r.memory=r.memory||n,r.table=r.table||i,ww(t,r)}function mw(r){return typeof Response<"u"&&r instanceof Response}async function yw(r,e){return mw(r=await r)?gw(r,e):xf(wf(e||(e={})),await WebAssembly.instantiate(r instanceof WebAssembly.Module?r:await WebAssembly.compile(r),e))}Js.instantiate=yw;function pB(r,e){return xf(wf(e||(e={})),new WebAssembly.Instance(r instanceof WebAssembly.Module?r:new WebAssembly.Module(r),e))}Js.instantiateSync=pB;async function gw(r,e){return WebAssembly.instantiateStreaming?xf(wf(e||(e={})),(await WebAssembly.instantiateStreaming(r,e)).instance):yw(mw(r=await r)?r.arrayBuffer():r,e)}Js.instantiateStreaming=gw;function ww(r,e){var t=e?Object.create(e):{},n=r.__argumentsLength?function(i){r.__argumentsLength.value=i}:r.__setArgumentsLength||r.__setargc||function(){};for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let o=r[i],s=i.split("."),a=t;for(;s.length>1;){let l=s.shift();Object.prototype.hasOwnProperty.call(a,l)||(a[l]={}),a=a[l]}let c=s[0],u=c.indexOf("#");if(u>=0){let l=c.substring(0,u),h=a[l];if(typeof h>"u"||!h.prototype){let p=function(...d){return p.wrap(p.prototype.constructor(0,...d))};p.prototype={valueOf:function(){return this[Xs]}},p.wrap=function(d){return Object.create(p.prototype,{[Xs]:{value:d,writable:!1}})},h&&Object.getOwnPropertyNames(h).forEach(d=>Object.defineProperty(p,d,Object.getOwnPropertyDescriptor(h,d))),a[l]=p}if(c=c.substring(u+1),a=a[l].prototype,/^(get|set):/.test(c)){if(!Object.prototype.hasOwnProperty.call(a,c=c.substring(4))){let p=r[i.replace("set:","get:")],d=r[i.replace("get:","set:")];Object.defineProperty(a,c,{get:function(){return p(this[Xs])},set:function(f){d(this[Xs],f)},enumerable:!0})}}else c==="constructor"?(a[c]=(...p)=>(n(p.length),o(...p))).original=o:(a[c]=function(...p){return n(p.length),o(this[Xs],...p)}).original=o}else/^(get|set):/.test(c)?Object.prototype.hasOwnProperty.call(a,c=c.substring(4))||Object.defineProperty(a,c,{get:r[i.replace("set:","get:")],set:r[i.replace("get:","set:")],enumerable:!0}):typeof o=="function"&&o!==n?(a[c]=(...l)=>(n(l.length),o(...l))).original=o:a[c]=o}return t}Js.demangle=ww});var Ew=me((cO,bw)=>{var{instantiate:mB}=xw();bf.supported=typeof WebAssembly<"u";function bf(r={}){if(!bf.supported)return null;var e=new Uint8Array([0,97,115,109,1,0,0,0,1,78,14,96,2,127,126,0,96,1,127,1,126,96,2,127,127,0,96,1,127,1,127,96,1,127,0,96,2,127,127,1,127,96,3,127,127,127,1,127,96,0,0,96,3,127,127,127,0,96,0,1,127,96,4,127,127,127,127,0,96,5,127,127,127,127,127,1,127,96,1,126,1,127,96,2,126,126,1,126,2,13,1,3,101,110,118,5,97,98,111,114,116,0,10,3,54,53,2,2,8,9,3,5,2,8,6,5,3,4,2,6,9,12,13,2,5,11,3,2,3,2,3,2,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,6,7,7,4,4,5,3,1,0,1,6,47,9,127,1,65,0,11,127,1,65,0,11,127,0,65,3,11,127,0,65,4,11,127,1,65,0,11,127,1,65,0,11,127,1,65,0,11,127,0,65,240,2,11,127,0,65,6,11,7,240,5,41,6,109,101,109,111,114,121,2,0,7,95,95,97,108,108,111,99,0,10,8,95,95,114,101,116,97,105,110,0,11,9,95,95,114,101,108,101,97,115,101,0,12,9,95,95,99,111,108,108,101,99,116,0,51,11,95,95,114,116,116,105,95,98,97,115,101,3,7,13,73,110,116,51,50,65,114,114,97,121,95,73,68,3,2,13,85,105,110,116,56,65,114,114,97,121,95,73,68,3,3,6,100,101,103,114,101,101,0,16,3,109,111,100,0,17,5,82,97,98,105,110,3,8,16,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,0,21,16,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,0,22,21,82,97,98,105,110,35,103,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,23,21,82,97,98,105,110,35,115,101,116,58,119,105,110,100,111,119,95,115,105,122,101,0,24,14,82,97,98,105,110,35,103,101,116,58,119,112,111,115,0,25,14,82,97,98,105,110,35,115,101,116,58,119,112,111,115,0,26,15,82,97,98,105,110,35,103,101,116,58,99,111,117,110,116,0,27,15,82,97,98,105,110,35,115,101,116,58,99,111,117,110,116,0,28,13,82,97,98,105,110,35,103,101,116,58,112,111,115,0,29,13,82,97,98,105,110,35,115,101,116,58,112,111,115,0,30,15,82,97,98,105,110,35,103,101,116,58,115,116,97,114,116,0,31,15,82,97,98,105,110,35,115,101,116,58,115,116,97,114,116,0,32,16,82,97,98,105,110,35,103,101,116,58,100,105,103,101,115,116,0,33,16,82,97,98,105,110,35,115,101,116,58,100,105,103,101,115,116,0,34,21,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,35,21,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,115,116,97,114,116,0,36,22,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,37,22,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,108,101,110,103,116,104,0,38,31,82,97,98,105,110,35,103,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,39,31,82,97,98,105,110,35,115,101,116,58,99,104,117,110,107,95,99,117,116,95,102,105,110,103,101,114,112,114,105,110,116,0,40,20,82,97,98,105,110,35,103,101,116,58,112,111,108,121,110,111,109,105,97,108,0,41,20,82,97,98,105,110,35,115,101,116,58,112,111,108,121,110,111,109,105,97,108,0,42,17,82,97,98,105,110,35,103,101,116,58,109,105,110,115,105,122,101,0,43,17,82,97,98,105,110,35,115,101,116,58,109,105,110,115,105,122,101,0,44,17,82,97,98,105,110,35,103,101,116,58,109,97,120,115,105,122,101,0,45,17,82,97,98,105,110,35,115,101,116,58,109,97,120,115,105,122,101,0,46,14,82,97,98,105,110,35,103,101,116,58,109,97,115,107,0,47,14,82,97,98,105,110,35,115,101,116,58,109,97,115,107,0,48,17,82,97,98,105,110,35,99,111,110,115,116,114,117,99,116,111,114,0,20,17,82,97,98,105,110,35,102,105,110,103,101,114,112,114,105,110,116,0,49,8,1,50,10,165,31,53,199,1,1,4,127,32,1,40,2,0,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,3,65,4,107,118,65,16,115,33,4,32,3,65,7,107,11,33,3,32,1,40,2,20,33,2,32,1,40,2,16,34,5,4,64,32,5,32,2,54,2,20,11,32,2,4,64,32,2,32,5,54,2,16,11,32,1,32,0,32,4,32,3,65,4,116,106,65,2,116,106,40,2,96,70,4,64,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,2,54,2,96,32,2,69,4,64,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,65,127,115,113,34,1,54,2,4,32,1,69,4,64,32,0,32,0,40,2,0,65,1,32,3,116,65,127,115,113,54,2,0,11,11,11,11,226,2,1,6,127,32,1,40,2,0,33,3,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,34,5,65,1,113,4,64,32,3,65,124,113,65,16,106,32,5,65,124,113,106,34,2,65,240,255,255,255,3,73,4,64,32,0,32,4,16,1,32,1,32,2,32,3,65,3,113,114,34,3,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,34,4,40,2,0,33,5,11,11,32,3,65,2,113,4,64,32,1,65,4,107,40,2,0,34,2,40,2,0,34,6,65,124,113,65,16,106,32,3,65,124,113,106,34,7,65,240,255,255,255,3,73,4,64,32,0,32,2,16,1,32,2,32,7,32,6,65,3,113,114,34,3,54,2,0,32,2,33,1,11,11,32,4,32,5,65,2,114,54,2,0,32,4,65,4,107,32,1,54,2,0,32,0,32,3,65,124,113,34,2,65,128,2,73,4,127,32,2,65,4,118,33,4,65,0,5,32,2,65,31,32,2,103,107,34,2,65,4,107,118,65,16,115,33,4,32,2,65,7,107,11,34,3,65,4,116,32,4,106,65,2,116,106,40,2,96,33,2,32,1,65,0,54,2,16,32,1,32,2,54,2,20,32,2,4,64,32,2,32,1,54,2,16,11,32,0,32,4,32,3,65,4,116,106,65,2,116,106,32,1,54,2,96,32,0,32,0,40,2,0,65,1,32,3,116,114,54,2,0,32,0,32,3,65,2,116,106,32,0,32,3,65,2,116,106,40,2,4,65,1,32,4,116,114,54,2,4,11,119,1,1,127,32,2,2,127,32,0,40,2,160,12,34,2,4,64,32,2,32,1,65,16,107,70,4,64,32,2,40,2,0,33,3,32,1,65,16,107,33,1,11,11,32,1,11,107,34,2,65,48,73,4,64,15,11,32,1,32,3,65,2,113,32,2,65,32,107,65,1,114,114,54,2,0,32,1,65,0,54,2,16,32,1,65,0,54,2,20,32,1,32,2,106,65,16,107,34,2,65,2,54,2,0,32,0,32,2,54,2,160,12,32,0,32,1,16,2,11,155,1,1,3,127,35,0,34,0,69,4,64,65,1,63,0,34,0,74,4,127,65,1,32,0,107,64,0,65,0,72,5,65,0,11,4,64,0,11,65,176,3,34,0,65,0,54,2,0,65,208,15,65,0,54,2,0,3,64,32,1,65,23,73,4,64,32,1,65,2,116,65,176,3,106,65,0,54,2,4,65,0,33,2,3,64,32,2,65,16,73,4,64,32,1,65,4,116,32,2,106,65,2,116,65,176,3,106,65,0,54,2,96,32,2,65,1,106,33,2,12,1,11,11,32,1,65,1,106,33,1,12,1,11,11,65,176,3,65,224,15,63,0,65,16,116,16,3,65,176,3,36,0,11,32,0,11,45,0,32,0,65,240,255,255,255,3,79,4,64,65,32,65,224,0,65,201,3,65,29,16,0,0,11,32,0,65,15,106,65,112,113,34,0,65,16,32,0,65,16,75,27,11,169,1,1,1,127,32,0,32,1,65,128,2,73,4,127,32,1,65,4,118,33,1,65,0,5,32,1,65,248,255,255,255,1,73,4,64,32,1,65,1,65,27,32,1,103,107,116,106,65,1,107,33,1,11,32,1,65,31,32,1,103,107,34,2,65,4,107,118,65,16,115,33,1,32,2,65,7,107,11,34,2,65,2,116,106,40,2,4,65,127,32,1,116,113,34,1,4,127,32,0,32,1,104,32,2,65,4,116,106,65,2,116,106,40,2,96,5,32,0,40,2,0,65,127,32,2,65,1,106,116,113,34,1,4,127,32,0,32,0,32,1,104,34,0,65,2,116,106,40,2,4,104,32,0,65,4,116,106,65,2,116,106,40,2,96,5,65,0,11,11,11,111,1,1,127,63,0,34,2,32,1,65,248,255,255,255,1,73,4,127,32,1,65,1,65,27,32,1,103,107,116,65,1,107,106,5,32,1,11,65,16,32,0,40,2,160,12,32,2,65,16,116,65,16,107,71,116,106,65,255,255,3,106,65,128,128,124,113,65,16,118,34,1,32,2,32,1,74,27,64,0,65,0,72,4,64,32,1,64,0,65,0,72,4,64,0,11,11,32,0,32,2,65,16,116,63,0,65,16,116,16,3,11,113,1,2,127,32,1,40,2,0,34,3,65,124,113,32,2,107,34,4,65,32,79,4,64,32,1,32,2,32,3,65,2,113,114,54,2,0,32,2,32,1,65,16,106,106,34,1,32,4,65,16,107,65,1,114,54,2,0,32,0,32,1,16,2,5,32,1,32,3,65,126,113,54,2,0,32,1,65,16,106,32,1,40,2,0,65,124,113,106,32,1,65,16,106,32,1,40,2,0,65,124,113,106,40,2,0,65,125,113,54,2,0,11,11,91,1,2,127,32,0,32,1,16,5,34,4,16,6,34,3,69,4,64,65,1,36,1,65,0,36,1,32,0,32,4,16,6,34,3,69,4,64,32,0,32,4,16,7,32,0,32,4,16,6,33,3,11,11,32,3,65,0,54,2,4,32,3,32,2,54,2,8,32,3,32,1,54,2,12,32,0,32,3,16,1,32,0,32,3,32,4,16,8,32,3,11,13,0,16,4,32,0,32,1,16,9,65,16,106,11,33,1,1,127,32,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,18,0,32,0,65,172,3,75,4,64,32,0,65,16,107,16,52,11,11,140,3,1,1,127,2,64,32,1,69,13,0,32,0,65,0,58,0,0,32,0,32,1,106,65,1,107,65,0,58,0,0,32,1,65,2,77,13,0,32,0,65,1,106,65,0,58,0,0,32,0,65,2,106,65,0,58,0,0,32,0,32,1,106,34,2,65,2,107,65,0,58,0,0,32,2,65,3,107,65,0,58,0,0,32,1,65,6,77,13,0,32,0,65,3,106,65,0,58,0,0,32,0,32,1,106,65,4,107,65,0,58,0,0,32,1,65,8,77,13,0,32,1,65,0,32,0,107,65,3,113,34,1,107,33,2,32,0,32,1,106,34,0,65,0,54,2,0,32,0,32,2,65,124,113,34,1,106,65,4,107,65,0,54,2,0,32,1,65,8,77,13,0,32,0,65,4,106,65,0,54,2,0,32,0,65,8,106,65,0,54,2,0,32,0,32,1,106,34,2,65,12,107,65,0,54,2,0,32,2,65,8,107,65,0,54,2,0,32,1,65,24,77,13,0,32,0,65,12,106,65,0,54,2,0,32,0,65,16,106,65,0,54,2,0,32,0,65,20,106,65,0,54,2,0,32,0,65,24,106,65,0,54,2,0,32,0,32,1,106,34,2,65,28,107,65,0,54,2,0,32,2,65,24,107,65,0,54,2,0,32,2,65,20,107,65,0,54,2,0,32,2,65,16,107,65,0,54,2,0,32,0,32,0,65,4,113,65,24,106,34,2,106,33,0,32,1,32,2,107,33,1,3,64,32,1,65,32,79,4,64,32,0,66,0,55,3,0,32,0,65,8,106,66,0,55,3,0,32,0,65,16,106,66,0,55,3,0,32,0,65,24,106,66,0,55,3,0,32,1,65,32,107,33,1,32,0,65,32,106,33,0,12,1,11,11,11,11,178,1,1,3,127,32,1,65,240,255,255,255,3,32,2,118,75,4,64,65,144,1,65,192,1,65,23,65,56,16,0,0,11,32,1,32,2,116,34,3,65,0,16,10,34,2,32,3,16,13,32,0,69,4,64,65,12,65,2,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,2,34,1,32,0,40,2,0,34,4,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,32,4,16,12,11,32,0,32,1,54,2,0,32,0,32,2,54,2,4,32,0,32,3,54,2,8,32,0,11,46,1,2,127,65,12,65,5,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,65,128,2,65,3,16,14,11,9,0,65,63,32,0,121,167,107,11,49,1,2,127,65,63,32,1,121,167,107,33,2,3,64,65,63,32,0,121,167,107,32,2,107,34,3,65,0,78,4,64,32,0,32,1,32,3,172,134,133,33,0,12,1,11,11,32,0,11,40,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,163,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,65,0,58,0,0,11,38,0,32,1,32,0,40,2,8,79,4,64,65,128,2,65,192,2,65,152,1,65,44,16,0,0,11,32,1,32,0,40,2,4,106,45,0,0,11,254,5,2,1,127,4,126,32,0,69,4,64,65,232,0,65,6,16,10,34,0,65,172,3,75,4,64,32,0,65,16,107,34,5,32,5,40,2,4,65,1,106,54,2,4,11,11,32,0,65,0,54,2,0,32,0,65,0,54,2,4,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,24,32,0,66,0,55,3,32,32,0,66,0,55,3,40,32,0,66,0,55,3,48,32,0,66,0,55,3,56,32,0,66,0,55,3,64,32,0,66,0,55,3,72,32,0,66,0,55,3,80,32,0,66,0,55,3,88,32,0,66,0,55,3,96,32,0,32,2,173,55,3,80,32,0,32,3,173,55,3,88,65,12,65,4,16,10,34,2,65,172,3,75,4,64,32,2,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,32,4,65,0,16,14,33,2,32,0,40,2,0,16,12,32,0,32,2,54,2,0,32,0,32,4,54,2,4,32,0,66,1,32,1,173,134,66,1,125,55,3,96,32,0,66,243,130,183,218,216,230,232,30,55,3,72,35,4,69,4,64,65,0,33,2,3,64,32,2,65,128,2,72,4,64,32,2,65,255,1,113,173,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,65,0,33,4,3,64,32,4,32,0,40,2,4,65,1,107,72,4,64,32,6,66,8,134,33,6,32,0,41,3,72,34,7,33,8,65,63,32,7,121,167,107,33,1,3,64,65,63,32,6,121,167,107,32,1,107,34,3,65,0,78,4,64,32,6,32,8,32,3,172,134,133,33,6,12,1,11,11,32,4,65,1,106,33,4,12,1,11,11,35,6,40,2,4,32,2,65,3,116,106,32,6,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,63,32,0,41,3,72,121,167,107,172,33,7,65,0,33,2,3,64,32,2,65,128,2,72,4,64,35,5,33,1,32,2,172,32,7,134,34,8,33,6,65,63,32,0,41,3,72,34,9,121,167,107,33,3,3,64,65,63,32,6,121,167,107,32,3,107,34,4,65,0,78,4,64,32,6,32,9,32,4,172,134,133,33,6,12,1,11,11,32,1,40,2,4,32,2,65,3,116,106,32,6,32,8,132,55,3,0,32,2,65,1,106,33,2,12,1,11,11,65,1,36,4,11,32,0,66,0,55,3,24,32,0,66,0,55,3,32,65,0,33,2,3,64,32,2,32,0,40,2,4,72,4,64,32,0,40,2,0,32,2,16,18,32,2,65,1,106,33,2,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,6,66,45,136,167,65,3,116,106,41,3,0,32,6,66,8,134,66,1,132,133,55,3,40,32,0,11,38,1,1,127,32,0,40,2,0,34,0,65,172,3,75,4,64,32,0,65,16,107,34,1,32,1,40,2,4,65,1,106,54,2,4,11,32,0,11,55,1,2,127,32,1,32,0,40,2,0,34,2,71,4,64,32,1,65,172,3,75,4,64,32,1,65,16,107,34,3,32,3,40,2,4,65,1,106,54,2,4,11,32,2,16,12,11,32,0,32,1,54,2,0,11,7,0,32,0,40,2,4,11,9,0,32,0,32,1,54,2,4,11,7,0,32,0,40,2,8,11,9,0,32,0,32,1,54,2,8,11,7,0,32,0,41,3,16,11,9,0,32,0,32,1,55,3,16,11,7,0,32,0,41,3,24,11,9,0,32,0,32,1,55,3,24,11,7,0,32,0,41,3,32,11,9,0,32,0,32,1,55,3,32,11,7,0,32,0,41,3,40,11,9,0,32,0,32,1,55,3,40,11,7,0,32,0,41,3,48,11,9,0,32,0,32,1,55,3,48,11,7,0,32,0,41,3,56,11,9,0,32,0,32,1,55,3,56,11,7,0,32,0,41,3,64,11,9,0,32,0,32,1,55,3,64,11,7,0,32,0,41,3,72,11,9,0,32,0,32,1,55,3,72,11,7,0,32,0,41,3,80,11,9,0,32,0,32,1,55,3,80,11,7,0,32,0,41,3,88,11,9,0,32,0,32,1,55,3,88,11,7,0,32,0,41,3,96,11,9,0,32,0,32,1,55,3,96,11,172,4,2,5,127,1,126,32,2,65,172,3,75,4,64,32,2,65,16,107,34,4,32,4,40,2,4,65,1,106,54,2,4,11,32,2,33,4,65,0,33,2,32,1,40,2,8,33,5,32,1,40,2,4,33,6,3,64,2,127,65,0,33,3,3,64,32,3,32,5,72,4,64,32,3,32,6,106,45,0,0,33,1,32,0,40,2,0,32,0,40,2,8,16,19,33,7,32,0,40,2,8,32,0,40,2,0,40,2,4,106,32,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,7,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,1,173,32,8,66,8,134,132,133,55,3,40,32,0,32,0,41,3,16,66,1,124,55,3,16,32,0,32,0,41,3,24,66,1,124,55,3,24,32,0,41,3,16,32,0,41,3,80,90,4,127,32,0,41,3,40,32,0,41,3,96,131,80,5,65,0,11,4,127,65,1,5,32,0,41,3,16,32,0,41,3,88,90,11,4,64,32,0,32,0,41,3,32,55,3,48,32,0,32,0,41,3,16,55,3,56,32,0,32,0,41,3,40,55,3,64,65,0,33,1,3,64,32,1,32,0,40,2,4,72,4,64,32,0,40,2,0,32,1,16,18,32,1,65,1,106,33,1,12,1,11,11,32,0,66,0,55,3,40,32,0,65,0,54,2,8,32,0,66,0,55,3,16,32,0,66,0,55,3,40,32,0,40,2,0,32,0,40,2,8,16,19,33,1,32,0,40,2,8,32,0,40,2,0,40,2,4,106,65,1,58,0,0,32,0,32,0,41,3,40,35,6,40,2,4,32,1,65,3,116,106,41,3,0,133,55,3,40,32,0,32,0,40,2,8,65,1,106,32,0,40,2,4,111,54,2,8,32,0,35,5,40,2,4,32,0,41,3,40,34,8,66,45,136,167,65,3,116,106,41,3,0,32,8,66,8,134,66,1,132,133,55,3,40,32,3,65,1,106,12,3,11,32,3,65,1,106,33,3,12,1,11,11,65,127,11,34,1,65,0,78,4,64,32,5,32,1,107,33,5,32,1,32,6,106,33,6,32,2,34,1,65,1,106,33,2,32,4,40,2,4,32,1,65,2,116,106,32,0,41,3,56,62,2,0,12,1,11,11,32,4,11,10,0,16,15,36,5,16,15,36,6,11,3,0,1,11,73,1,2,127,32,0,40,2,4,34,1,65,255,255,255,255,0,113,34,2,65,1,70,4,64,32,0,65,16,106,16,53,32,0,32,0,40,2,0,65,1,114,54,2,0,35,0,32,0,16,2,5,32,0,32,2,65,1,107,32,1,65,128,128,128,128,127,113,114,54,2,4,11,11,58,0,2,64,2,64,2,64,32,0,65,8,107,40,2,0,14,7,0,0,1,1,1,1,1,2,11,15,11,32,0,40,2,0,34,0,4,64,32,0,65,172,3,79,4,64,32,0,65,16,107,16,52,11,11,15,11,0,11,11,137,3,7,0,65,16,11,55,40,0,0,0,1,0,0,0,1,0,0,0,40,0,0,0,97,0,108,0,108,0,111,0,99,0,97,0,116,0,105,0,111,0,110,0,32,0,116,0,111,0,111,0,32,0,108,0,97,0,114,0,103,0,101,0,65,208,0,11,45,30,0,0,0,1,0,0,0,1,0,0,0,30,0,0,0,126,0,108,0,105,0,98,0,47,0,114,0,116,0,47,0,116,0,108,0,115,0,102,0,46,0,116,0,115,0,65,128,1,11,43,28,0,0,0,1,0,0,0,1,0,0,0,28,0,0,0,73,0,110,0,118,0,97,0,108,0,105,0,100,0,32,0,108,0,101,0,110,0,103,0,116,0,104,0,65,176,1,11,53,38,0,0,0,1,0,0,0,1,0,0,0,38,0,0,0,126,0,108,0,105,0,98,0,47,0,97,0,114,0,114,0,97,0,121,0,98,0,117,0,102,0,102,0,101,0,114,0,46,0,116,0,115,0,65,240,1,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,73,0,110,0,100,0,101,0,120,0,32,0,111,0,117,0,116,0,32,0,111,0,102,0,32,0,114,0,97,0,110,0,103,0,101,0,65,176,2,11,51,36,0,0,0,1,0,0,0,1,0,0,0,36,0,0,0,126,0,108,0,105,0,98,0,47,0,116,0,121,0,112,0,101,0,100,0,97,0,114,0,114,0,97,0,121,0,46,0,116,0,115,0,65,240,2,11,53,7,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,145,4,0,0,2,0,0,0,49,0,0,0,2,0,0,0,17,1,0,0,2,0,0,0,16,0,34,16,115,111,117,114,99,101,77,97,112,112,105,110,103,85,82,76,16,46,47,114,97,98,105,110,46,119,97,115,109,46,109,97,112]);return mB(new Response(new Blob([e],{type:"application/wasm"})),r)}bw.exports=bf});var Aw=me((lO,Bw)=>{var vw=fw(),yB=Ew(),gB=async(r,e,t,n,i)=>{let o=await yB();return new vw(o,r,e,t,n,i)};Bw.exports={Rabin:vw,create:gB}});var Xw=me((NF,Yw)=>{"use strict";Yw.exports=r=>{if(Object.prototype.toString.call(r)!=="[object Object]")return!1;let e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}});var r2=me((e2,t2)=>{"use strict";var Ul=Xw(),{hasOwnProperty:Jw}=Object.prototype,{propertyIsEnumerable:zB}=Object,Po=(r,e,t)=>Object.defineProperty(r,e,{value:t,writable:!0,enumerable:!0,configurable:!0}),KB=e2,Zw={concatArrays:!1,ignoreUndefined:!1},Ll=r=>{let e=[];for(let t in r)Jw.call(r,t)&&e.push(t);if(Object.getOwnPropertySymbols){let t=Object.getOwnPropertySymbols(r);for(let n of t)zB.call(r,n)&&e.push(n)}return e};function Oo(r){return Array.isArray(r)?qB(r):Ul(r)?GB(r):r}function qB(r){let e=r.slice(0,0);return Ll(r).forEach(t=>{Po(e,t,Oo(r[t]))}),e}function GB(r){let e=Object.getPrototypeOf(r)===null?Object.create(null):{};return Ll(r).forEach(t=>{Po(e,t,Oo(r[t]))}),e}var Qw=(r,e,t,n)=>(t.forEach(i=>{typeof e[i]>"u"&&n.ignoreUndefined||(i in r&&r[i]!==Object.getPrototypeOf(r)?Po(r,i,Bf(r[i],e[i],n)):Po(r,i,Oo(e[i])))}),r),jB=(r,e,t)=>{let n=r.slice(0,0),i=0;return[r,e].forEach(o=>{let s=[];for(let a=0;a<o.length;a++)Jw.call(o,a)&&(s.push(String(a)),o===r?Po(n,i++,o[a]):Po(n,i++,Oo(o[a])));n=Qw(n,o,Ll(o).filter(a=>!s.includes(a)),t)}),n};function Bf(r,e,t){return t.concatArrays&&Array.isArray(r)&&Array.isArray(e)?jB(r,e,t):!Ul(e)||!Ul(r)?Oo(e):Qw(r,e,Ll(e),t)}t2.exports=function(...r){let e=Bf(Oo(Zw),this!==KB&&this||{},Zw),t={_:{}};for(let n of r)if(n!==void 0){if(!Ul(n))throw new TypeError("`"+n+"` is not an Option Object");t=Bf(t,{_:n},e)}return t._}});var LA={};Ae(LA,{createVerifiedFetch:()=>Cf,verifiedFetch:()=>Xl});function ei(r){let e=new globalThis.AbortController;function t(){e.abort();for(let o of r)o?.removeEventListener!=null&&o.removeEventListener("abort",t)}for(let o of r){if(o?.aborted===!0){t();break}o?.addEventListener!=null&&o.addEventListener("abort",t)}function n(){for(let o of r)o?.removeEventListener!=null&&o.removeEventListener("abort",t)}let i=e.signal;return i.clear=n,i}function H2(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 Ni=H2;function $2(r){return r[Symbol.asyncIterator]!=null}function Hf(r){return r?.then!=null}function z2(r,e){if($2(r))return async function*(){for await(let a of r){let c=e(a);Hf(c)&&await c,yield a}}();let t=Ni(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();if(typeof e(n)?.then=="function")return async function*(){yield n;for await(let a of t){let c=e(a);Hf(c)&&await c,yield a}}();let s=e;return function*(){yield n;for(let a of t)s(a),yield a}()}var Jl=z2;var su={};Ae(su,{base32:()=>qe,base32hex:()=>ex,base32hexpad:()=>rx,base32hexpadupper:()=>nx,base32hexupper:()=>tx,base32pad:()=>J2,base32padupper:()=>Q2,base32upper:()=>qf,base32z:()=>ix});var Ui={};Ae(Ui,{coerce:()=>Lt,empty:()=>$f,equals:()=>Ql,fromHex:()=>q2,fromString:()=>eu,isBinary:()=>G2,toHex:()=>K2,toString:()=>tu});var $f=new Uint8Array(0);function K2(r){return r.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),"")}function q2(r){let e=r.match(/../g);return e!=null?new Uint8Array(e.map(t=>parseInt(t,16))):$f}function Ql(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 Lt(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 G2(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}function eu(r){return new TextEncoder().encode(r)}function tu(r){return new TextDecoder().decode(r)}function j2(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function h(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var m=0,y=0,g=0,w=f.length;g!==w&&f[g]===0;)g++,m++;for(var x=(w-g)*l+1>>>0,A=new Uint8Array(x);g!==w;){for(var I=f[g],B=0,v=x-1;(I!==0||B<y)&&v!==-1;v--,B++)I+=256*A[v]>>>0,A[v]=I%a>>>0,I=I/a>>>0;if(I!==0)throw new Error("Non-zero carry");y=B,g++}for(var E=x-y;E!==x&&A[E]===0;)E++;for(var R=c.repeat(m);E<x;++E)R+=r.charAt(A[E]);return R}function p(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var m=0;if(f[m]!==" "){for(var y=0,g=0;f[m]===c;)y++,m++;for(var w=(f.length-m)*u+1>>>0,x=new Uint8Array(w);f[m];){var A=t[f.charCodeAt(m)];if(A===255)return;for(var I=0,B=w-1;(A!==0||I<g)&&B!==-1;B--,I++)A+=a*x[B]>>>0,x[B]=A%256>>>0,A=A/256>>>0;if(A!==0)throw new Error("Non-zero carry");g=I,m++}if(f[m]!==" "){for(var v=w-g;v!==w&&x[v]===0;)v++;for(var E=new Uint8Array(y+(w-v)),R=y;v!==w;)E[R++]=x[v++];return E}}}function d(f){var m=p(f);if(m)return m;throw new Error(`Non-${e} character`)}return{encode:h,decodeUnsafe:p,decode:d}}var W2=j2,Y2=W2,zf=Y2;var ru=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")}},nu=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 Kf(this,e)}},iu=class{decoders;constructor(e){this.decoders=e}or(e){return Kf(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 Kf(r,e){return new iu({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var ou=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 ru(e,t,n),this.decoder=new nu(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Li({name:r,prefix:e,encode:t,decode:n}){return new ou(r,e,t,n)}function bn({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=zf(t,r);return Li({prefix:e,name:r,encode:n,decode:o=>Lt(i(o))})}function X2(r,e,t,n){let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let h=i[r[l]];if(h===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|h,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function Z2(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function Ie({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return Li({prefix:e,name:r,encode(i){return Z2(i,n,t)},decode(i){return X2(i,n,t,r)}})}var qe=Ie({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),qf=Ie({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),J2=Ie({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Q2=Ie({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),ex=Ie({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),tx=Ie({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),rx=Ie({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),nx=Ie({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),ix=Ie({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var au={};Ae(au,{base58btc:()=>ke,base58flickr:()=>ox});var ke=bn({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ox=bn({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var sx=Wf,Gf=128,ax=127,cx=~ax,lx=Math.pow(2,31);function Wf(r,e,t){e=e||[],t=t||0;for(var n=t;r>=lx;)e[t++]=r&255|Gf,r/=128;for(;r&cx;)e[t++]=r&255|Gf,r>>>=7;return e[t]=r|0,Wf.bytes=t-n+1,e}var ux=cu,hx=128,jf=127;function cu(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw cu.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&jf)<<i:(s&jf)*Math.pow(2,i),i+=7}while(s>=hx);return cu.bytes=o-n,t}var dx=Math.pow(2,7),fx=Math.pow(2,14),px=Math.pow(2,21),mx=Math.pow(2,28),yx=Math.pow(2,35),gx=Math.pow(2,42),wx=Math.pow(2,49),xx=Math.pow(2,56),bx=Math.pow(2,63),Ex=function(r){return r<dx?1:r<fx?2:r<px?3:r<mx?4:r<yx?5:r<gx?6:r<wx?7:r<xx?8:r<bx?9:10},vx={encode:sx,decode:ux,encodingLength:Ex},Bx=vx,Ko=Bx;function qo(r,e=0){return[Ko.decode(r,e),Ko.decode.bytes]}function Di(r,e,t=0){return Ko.encode(r,e,t),e}function Pi(r){return Ko.encodingLength(r)}function hr(r,e){let t=e.byteLength,n=Pi(r),i=n+Pi(t),o=new Uint8Array(i+t);return Di(r,o,0),Di(t,o,n),o.set(e,i),new Oi(r,t,e,o)}function Et(r){let e=Lt(r),[t,n]=qo(e),[i,o]=qo(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Oi(t,i,s,e)}function Yf(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Ql(r.bytes,t.bytes)}}var Oi=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function Xf(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return Ix(t,lu(r),e??ke.encoder);default:return Sx(t,lu(r),e??qe.encoder)}}var Zf=new WeakMap;function lu(r){let e=Zf.get(r);if(e==null){let t=new Map;return Zf.set(r,t),t}return e}var H=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!==Go)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==_x)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=hr(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&&Yf(e.multihash,n.multihash)}toString(e){return Xf(this,e)}toJSON(){return{"/":Xf(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??Jf(n,i,o.bytes))}else if(t[kx]===!0){let{version:n,multihash:i,code:o}=t,s=Et(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Go)throw new Error(`Version 0 CID must use dag-pb (code: ${Go}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=Jf(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Go,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=Lt(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Oi(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[h,p]=qo(e.subarray(t));return t+=p,h},i=n(),o=Go;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=Ax(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return lu(o).set(n,e),o}};function Ax(r,e){switch(r[0]){case"Q":{let t=e??ke;return[ke.prefix,t.decode(`${ke.prefix}${r}`)]}case ke.prefix:{let t=e??ke;return[ke.prefix,t.decode(r)]}case qe.prefix:{let t=e??qe;return[qe.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 Ix(r,e,t){let{prefix:n}=t;if(n!==ke.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function Sx(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var Go=112,_x=18;function Jf(r,e,t){let n=Pi(r),i=n+Pi(e),o=new Uint8Array(i+t.byteLength);return Di(r,o,0),Di(e,o,n),o.set(t,i),o}var kx=Symbol.for("@ipld/js-cid/CID");var jo=Symbol.for("@libp2p/content-routing");var uu=Symbol.for("@libp2p/peer-id");function Qf(r){return r!=null&&!!r[uu]}var Wo=Symbol.for("@libp2p/peer-routing");var En=class r extends Error{code;type;constructor(e="The operation was aborted"){super(e),this.code=r.code,this.type=r.type}static code="ABORT_ERR";static type="aborted"},F=class extends Error{code;props;constructor(e,t,n){super(e),this.code=t,this.name=n?.name??"CodeError",this.props=n??{}}};var ca=class extends EventTarget{#e=new Map;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:o})=>o!==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 Rx(e,t))}},hu=class extends Event{detail;constructor(e,t){super(e,t),this.detail=t?.detail}},Rx=globalThis.CustomEvent??hu;var la=(r,...e)=>{try{[...e]}catch{}};function e0(r){return r!=null&&typeof r.start=="function"&&typeof r.stop=="function"}async function vn(...r){let e=[];for(let t of r)e0(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 Bn(...r){let e=[];for(let t of r)e0(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 pu={};Ae(pu,{sha256:()=>he,sha512:()=>fu});function ti({name:r,code:e,encode:t}){return new du(r,e,t)}var du=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?hr(this.code,t):t.then(n=>hr(this.code,n))}else throw Error("Unknown type, must be binary type")}};function r0(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var he=ti({name:"sha2-256",code:18,encode:r0("SHA-256")}),fu=ti({name:"sha2-512",code:19,encode:r0("SHA-512")});var Bt=re(yu(),1);var gu={};Ae(gu,{base64:()=>Pr,base64pad:()=>$x,base64url:()=>s0,base64urlpad:()=>zx});var Pr=Ie({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),$x=Ie({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),s0=Ie({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),zx=Ie({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});Bt.default.formatters.b=r=>r==null?"undefined":ke.baseEncode(r);Bt.default.formatters.t=r=>r==null?"undefined":qe.baseEncode(r);Bt.default.formatters.m=r=>r==null?"undefined":Pr.baseEncode(r);Bt.default.formatters.p=r=>r==null?"undefined":r.toString();Bt.default.formatters.c=r=>r==null?"undefined":r.toString();Bt.default.formatters.k=r=>r==null?"undefined":r.toString();Bt.default.formatters.a=r=>r==null?"undefined":r.toString();function Kx(r){let e=()=>{};return e.enabled=!1,e.color="",e.diff=0,e.log=()=>{},e.namespace=r,e.destroy=()=>!0,e.extend=()=>e,e}function a0(){return{forComponent(r){return oe(r)}}}function oe(r){let e=Kx(`${r}:trace`);return Bt.default.enabled(`${r}:trace`)&&Bt.default.names.map(t=>t.toString()).find(t=>t.includes(":trace"))!=null&&(e=(0,Bt.default)(`${r}:trace`)),Object.assign((0,Bt.default)(r),{error:(0,Bt.default)(`${r}:error`),trace:e})}function de(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 An(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function Or(r=0){return globalThis.Buffer?.alloc!=null?An(globalThis.Buffer.alloc(r)):new Uint8Array(r)}function dt(r=0){return globalThis.Buffer?.allocUnsafe!=null?An(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}var qx=Math.pow(2,7),Gx=Math.pow(2,14),jx=Math.pow(2,21),wu=Math.pow(2,28),xu=Math.pow(2,35),bu=Math.pow(2,42),Eu=Math.pow(2,49),fe=128,Je=127;function ft(r){if(r<qx)return 1;if(r<Gx)return 2;if(r<jx)return 3;if(r<wu)return 4;if(r<xu)return 5;if(r<bu)return 6;if(r<Eu)return 7;if(Number.MAX_SAFE_INTEGER!=null&&r>Number.MAX_SAFE_INTEGER)throw new RangeError("Could not encode varint");return 8}function vu(r,e,t=0){switch(ft(r)){case 8:e[t++]=r&255|fe,r/=128;case 7:e[t++]=r&255|fe,r/=128;case 6:e[t++]=r&255|fe,r/=128;case 5:e[t++]=r&255|fe,r/=128;case 4:e[t++]=r&255|fe,r>>>=7;case 3:e[t++]=r&255|fe,r>>>=7;case 2:e[t++]=r&255|fe,r>>>=7;case 1:{e[t++]=r&255,r>>>=7;break}default:throw new Error("unreachable")}return e}function Wx(r,e,t=0){switch(ft(r)){case 8:e.set(t++,r&255|fe),r/=128;case 7:e.set(t++,r&255|fe),r/=128;case 6:e.set(t++,r&255|fe),r/=128;case 5:e.set(t++,r&255|fe),r/=128;case 4:e.set(t++,r&255|fe),r>>>=7;case 3:e.set(t++,r&255|fe),r>>>=7;case 2:e.set(t++,r&255|fe),r>>>=7;case 1:{e.set(t++,r&255),r>>>=7;break}default:throw new Error("unreachable")}return e}function Bu(r,e){let t=r[e],n=0;if(n+=t&Je,t<fe||(t=r[e+1],n+=(t&Je)<<7,t<fe)||(t=r[e+2],n+=(t&Je)<<14,t<fe)||(t=r[e+3],n+=(t&Je)<<21,t<fe)||(t=r[e+4],n+=(t&Je)*wu,t<fe)||(t=r[e+5],n+=(t&Je)*xu,t<fe)||(t=r[e+6],n+=(t&Je)*bu,t<fe)||(t=r[e+7],n+=(t&Je)*Eu,t<fe))return n;throw new RangeError("Could not decode varint")}function Yx(r,e){let t=r.get(e),n=0;if(n+=t&Je,t<fe||(t=r.get(e+1),n+=(t&Je)<<7,t<fe)||(t=r.get(e+2),n+=(t&Je)<<14,t<fe)||(t=r.get(e+3),n+=(t&Je)<<21,t<fe)||(t=r.get(e+4),n+=(t&Je)*wu,t<fe)||(t=r.get(e+5),n+=(t&Je)*xu,t<fe)||(t=r.get(e+6),n+=(t&Je)*bu,t<fe)||(t=r.get(e+7),n+=(t&Je)*Eu,t<fe))return n;throw new RangeError("Could not decode varint")}function Hi(r,e,t=0){return e==null&&(e=dt(ft(r))),e instanceof Uint8Array?vu(r,e,t):Wx(r,e,t)}function ni(r,e=0){return r instanceof Uint8Array?Bu(r,e):Yx(r,e)}var Au=new Float32Array([-0]),In=new Uint8Array(Au.buffer);function l0(r,e,t){Au[0]=r,e[t]=In[0],e[t+1]=In[1],e[t+2]=In[2],e[t+3]=In[3]}function u0(r,e){return In[0]=r[e],In[1]=r[e+1],In[2]=r[e+2],In[3]=r[e+3],Au[0]}var Iu=new Float64Array([-0]),Qe=new Uint8Array(Iu.buffer);function h0(r,e,t){Iu[0]=r,e[t]=Qe[0],e[t+1]=Qe[1],e[t+2]=Qe[2],e[t+3]=Qe[3],e[t+4]=Qe[4],e[t+5]=Qe[5],e[t+6]=Qe[6],e[t+7]=Qe[7]}function d0(r,e){return Qe[0]=r[e],Qe[1]=r[e+1],Qe[2]=r[e+2],Qe[3]=r[e+3],Qe[4]=r[e+4],Qe[5]=r[e+5],Qe[6]=r[e+6],Qe[7]=r[e+7],Iu[0]}var Xx=BigInt(Number.MAX_SAFE_INTEGER),Zx=BigInt(Number.MIN_SAFE_INTEGER),At=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 ii;if(e<Xx&&e>Zx)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>f0&&(i=0n,++n>f0&&(n=0n))),new r(Number(i),Number(n))}static fromNumber(e){if(e===0)return ii;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):ii}},ii=new At(0,0);ii.toBigInt=function(){return 0n};ii.zzEncode=ii.zzDecode=function(){return this};ii.length=function(){return 1};var f0=4294967296n;function p0(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 m0(r,e,t){if(t-e<1)return"";let i,o=[],s=0,a;for(;e<t;)a=r[e++],a<128?o[s++]=a:a>191&&a<224?o[s++]=(a&31)<<6|r[e++]&63:a>239&&a<365?(a=((a&7)<<18|(r[e++]&63)<<12|(r[e++]&63)<<6|r[e++]&63)-65536,o[s++]=55296+(a>>10),o[s++]=56320+(a&1023)):o[s++]=(a&15)<<12|(r[e++]&63)<<6|r[e++]&63,s>8191&&((i??(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i!=null?(s>0&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))}function Su(r,e,t){let n=t,i,o;for(let s=0;s<r.length;++s)i=r.charCodeAt(s),i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&((o=r.charCodeAt(s+1))&64512)===56320?(i=65536+((i&1023)<<10)+(o&1023),++s,e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128);return t-n}function Gt(r,e){return RangeError(`index out of range: ${r.pos} + ${e??1} > ${r.len}`)}function da(r,e){return(r[e-4]|r[e-3]<<8|r[e-2]<<16|r[e-1]<<24)>>>0}var _u=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,Gt(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 Gt(this,4);return da(this.buf,this.pos+=4)}sfixed32(){if(this.pos+4>this.len)throw Gt(this,4);return da(this.buf,this.pos+=4)|0}float(){if(this.pos+4>this.len)throw Gt(this,4);let e=u0(this.buf,this.pos);return this.pos+=4,e}double(){if(this.pos+8>this.len)throw Gt(this,4);let e=d0(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 Gt(this,e);return this.pos+=e,t===n?new Uint8Array(0):this.buf.subarray(t,n)}string(){let e=this.bytes();return m0(e,0,e.length)}skip(e){if(typeof e=="number"){if(this.pos+e>this.len)throw Gt(this,e);this.pos+=e}else do if(this.pos>=this.len)throw Gt(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 At(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 Gt(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 Gt(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 Gt(this,8);let e=da(this.buf,this.pos+=4),t=da(this.buf,this.pos+=4);return new At(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=Bu(this.buf,this.pos);return this.pos+=ft(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 ku(r){return new _u(r instanceof Uint8Array?r:r.subarray())}function Dt(r,e,t){let n=ku(r);return e.decode(n,void 0,t)}var Ru={};Ae(Ru,{base10:()=>Jx});var Jx=bn({prefix:"9",name:"base10",alphabet:"0123456789"});var Tu={};Ae(Tu,{base16:()=>Qx,base16upper:()=>eb});var Qx=Ie({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),eb=Ie({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Cu={};Ae(Cu,{base2:()=>tb});var tb=Ie({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Nu={};Ae(Nu,{base256emoji:()=>sb});var g0=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}"),rb=g0.reduce((r,e,t)=>(r[t]=e,r),[]),nb=g0.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function ib(r){return r.reduce((e,t)=>(e+=rb[t],e),"")}function ob(r){let e=[];for(let t of r){let n=nb[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var sb=Li({prefix:"\u{1F680}",name:"base256emoji",encode:ib,decode:ob});var Uu={};Ae(Uu,{base36:()=>Sn,base36upper:()=>ab});var Sn=bn({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),ab=bn({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Lu={};Ae(Lu,{base8:()=>cb});var cb=Ie({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Du={};Ae(Du,{identity:()=>lb});var lb=Li({prefix:"\0",name:"identity",encode:r=>tu(r),decode:r=>eu(r)});var P8=new TextEncoder,ub=new TextDecoder;var $i=512;function w0(r){return JSON.parse(ub.decode(r))}var Pt={};Ae(Pt,{code:()=>Ne,decode:()=>fb,encode:()=>db,name:()=>hb});var hb="raw",Ne=85;function db(r){return Lt(r)}function fb(r){return Lt(r)}var Pu={};Ae(Pu,{identity:()=>et});var x0=0,pb="identity",b0=Lt;function mb(r){return hr(x0,b0(r))}var et={code:x0,name:pb,encode:b0,digest:mb};var _n={...Du,...Cu,...Lu,...Ru,...Tu,...su,...Uu,...au,...gu,...Nu},W8={...pu,...Pu};function v0(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var E0=v0("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Ou=v0("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=dt(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),yb={utf8:E0,"utf-8":E0,hex:_n.base16,latin1:Ou,ascii:Ou,binary:Ou,..._n},pa=yb;function Y(r,e="utf8"){let t=pa[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?An(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function Fu(r){let e=r??8192,t=e>>>1,n,i=e;return function(s){if(s<1||s>t)return dt(s);i+s>e&&(n=dt(e),i=0);let a=n.subarray(i,i+=s);return i&7&&(i=(i|7)+1),a}}var oi=class{fn;len;next;val;constructor(e,t,n){this.fn=e,this.len=t,this.next=void 0,this.val=n}};function Vu(){}var Hu=class{head;tail;len;next;constructor(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}},gb=Fu();function wb(r){return globalThis.Buffer!=null?dt(r):gb(r)}var Xo=class{len;head;tail;states;constructor(){this.len=0,this.head=new oi(Vu,0,0),this.tail=this.head,this.states=null}_push(e,t,n){return this.tail=this.tail.next=new oi(e,t,n),this.len+=t,this}uint32(e){return this.len+=(this.tail=this.tail.next=new $u((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(ma,10,At.fromNumber(e)):this.uint32(e)}sint32(e){return this.uint32((e<<1^e>>31)>>>0)}uint64(e){let t=At.fromBigInt(e);return this._push(ma,t.length(),t)}uint64Number(e){return this._push(vu,ft(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=At.fromBigInt(e).zzEncode();return this._push(ma,t.length(),t)}sint64Number(e){let t=At.fromNumber(e).zzEncode();return this._push(ma,t.length(),t)}sint64String(e){return this.sint64(BigInt(e))}bool(e){return this._push(Mu,1,e?1:0)}fixed32(e){return this._push(Yo,4,e>>>0)}sfixed32(e){return this.fixed32(e)}fixed64(e){let t=At.fromBigInt(e);return this._push(Yo,4,t.lo)._push(Yo,4,t.hi)}fixed64Number(e){let t=At.fromNumber(e);return this._push(Yo,4,t.lo)._push(Yo,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(l0,4,e)}double(e){return this._push(h0,8,e)}bytes(e){let t=e.length>>>0;return t===0?this._push(Mu,1,0):this.uint32(t)._push(bb,t,e)}string(e){let t=p0(e);return t!==0?this.uint32(t)._push(Su,t,e):this._push(Mu,1,0)}fork(){return this.states=new Hu(this),this.head=this.tail=new oi(Vu,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 oi(Vu,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=wb(this.len),n=0;for(;e!=null;)e.fn(e.val,t,n),n+=e.len,e=e.next;return t}};function Mu(r,e,t){e[t]=r&255}function xb(r,e,t){for(;r>127;)e[t++]=r&127|128,r>>>=7;e[t]=r}var $u=class extends oi{next;constructor(e,t){super(xb,e,t),this.next=void 0}};function ma(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 Yo(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 bb(r,e,t){e.set(r,t)}globalThis.Buffer!=null&&(Xo.prototype.bytes=function(r){let e=r.length>>>0;return this.uint32(e),e>0&&this._push(Eb,e,r),this},Xo.prototype.string=function(r){let e=globalThis.Buffer.byteLength(r);return this.uint32(e),e>0&&this._push(vb,e,r),this});function Eb(r,e,t){e.set(r,t)}function vb(r,e,t){r.length<40?Su(r,e,t):e.utf8Write!=null?e.utf8Write(r,t):e.set(Y(r),t)}function zu(){return new Xo}function Ot(r,e){let t=zu();return e.encode(r,t,{lengthDelimited:!1}),t.finish()}var zi;(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"})(zi||(zi={}));function ya(r,e,t,n){return{name:r,type:e,encode:t,decode:n}}function si(r){function e(i){if(r[i.toString()]==null)throw new Error("Invalid enum value");return r[i]}let t=function(o,s){let a=e(o);s.int32(a)},n=function(o){let s=o.int32();return e(s)};return ya("enum",zi.VARINT,t,n)}function Ft(r,e){return ya("message",zi.LENGTH_DELIMITED,r,e)}function Bb(r){return r[Symbol.asyncIterator]!=null}function Ab(r){if(Bb(r))return(async()=>{for await(let e of r);})();for(let e of r);}var Fr=Ab;function Ee(r,e){if(globalThis.Buffer!=null)return An(globalThis.Buffer.concat(r,e));e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=dt(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return An(t)}var A0=Symbol.for("@achingbrain/uint8arraylist");function B0(r,e){if(e==null||e<0)throw new RangeError("index is out of bounds");let t=0;for(let n of r){let i=t+n.byteLength;if(e<i)return{buf:n,index:e-t};t=i}throw new RangeError("index is out of bounds")}function ga(r){return!!r?.[A0]}var ai=class r{bufs;length;[A0]=!0;constructor(...e){this.bufs=[],this.length=0,e.length>0&&this.appendAll(e)}*[Symbol.iterator](){yield*this.bufs}get byteLength(){return this.length}append(...e){this.appendAll(e)}appendAll(e){let t=0;for(let n of e)if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.push(n);else if(ga(n))t+=n.byteLength,this.bufs.push(...n.bufs);else throw new Error("Could not append value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}prepend(...e){this.prependAll(e)}prependAll(e){let t=0;for(let n of e.reverse())if(n instanceof Uint8Array)t+=n.byteLength,this.bufs.unshift(n);else if(ga(n))t+=n.byteLength,this.bufs.unshift(...n.bufs);else throw new Error("Could not prepend value, must be an Uint8Array or a Uint8ArrayList");this.length+=t}get(e){let t=B0(this.bufs,e);return t.buf[t.index]}set(e,t){let n=B0(this.bufs,e);n.buf[n.index]=t}write(e,t=0){if(e instanceof Uint8Array)for(let n=0;n<e.length;n++)this.set(t+n,e[n]);else if(ga(e))for(let n=0;n<e.length;n++)this.set(t+n,e.get(n));else throw new Error("Could not write value, must be an Uint8Array or a Uint8ArrayList")}consume(e){if(e=Math.trunc(e),!(Number.isNaN(e)||e<=0)){if(e===this.byteLength){this.bufs=[],this.length=0;return}for(;this.bufs.length>0;)if(e>=this.bufs[0].byteLength)e-=this.bufs[0].byteLength,this.length-=this.bufs[0].byteLength,this.bufs.shift();else{this.bufs[0]=this.bufs[0].subarray(e),this.length-=e;break}}}slice(e,t){let{bufs:n,length:i}=this._subList(e,t);return Ee(n,i)}subarray(e,t){let{bufs:n,length:i}=this._subList(e,t);return n.length===1?n[0]:Ee(n,i)}sublist(e,t){let{bufs:n,length:i}=this._subList(e,t),o=new r;return o.length=i,o.bufs=[...n],o}_subList(e,t){if(e=e??0,t=t??this.length,e<0&&(e=this.length+e),t<0&&(t=this.length+t),e<0||t>this.length)throw new RangeError("index is out of bounds");if(e===t)return{bufs:[],length:0};if(e===0&&t===this.length)return{bufs:this.bufs,length:this.length};let n=[],i=0;for(let o=0;o<this.bufs.length;o++){let s=this.bufs[o],a=i,c=a+s.byteLength;if(i=c,e>=c)continue;let u=e>=a&&e<c,l=t>a&&t<=c;if(u&&l){if(e===a&&t===c){n.push(s);break}let h=e-a;n.push(s.subarray(h,h+(t-e)));break}if(u){if(e===0){n.push(s);continue}n.push(s.subarray(e-a));continue}if(l){if(t===c){n.push(s);break}n.push(s.subarray(0,t-a));break}n.push(s)}return{bufs:n,length:t-e}}indexOf(e,t=0){if(!ga(e)&&!(e instanceof Uint8Array))throw new TypeError('The "value" argument must be a Uint8ArrayList or Uint8Array');let n=e instanceof Uint8Array?e:e.subarray();if(t=Number(t??0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),e.length===0)return t>this.length?this.length:t;let i=n.byteLength;if(i===0)throw new TypeError("search must be at least 1 byte long");let o=256,s=new Int32Array(o);for(let h=0;h<o;h++)s[h]=-1;for(let h=0;h<i;h++)s[n[h]]=h;let a=s,c=this.byteLength-n.byteLength,u=n.byteLength-1,l;for(let h=t;h<=c;h+=l){l=0;for(let p=u;p>=0;p--){let d=this.get(h+p);if(n[p]!==d){l=Math.max(1,p-a[d]);break}}if(l===0)return h}return-1}getInt8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt8(0)}setInt8(e,t){let n=dt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setInt8(0,t),this.write(n,e)}getInt16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt16(0,t)}setInt16(e,t,n){let i=Or(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt16(0,t,n),this.write(i,e)}getInt32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getInt32(0,t)}setInt32(e,t,n){let i=Or(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setInt32(0,t,n),this.write(i,e)}getBigInt64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigInt64(0,t)}setBigInt64(e,t,n){let i=Or(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigInt64(0,t,n),this.write(i,e)}getUint8(e){let t=this.subarray(e,e+1);return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint8(0)}setUint8(e,t){let n=dt(1);new DataView(n.buffer,n.byteOffset,n.byteLength).setUint8(0,t),this.write(n,e)}getUint16(e,t){let n=this.subarray(e,e+2);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint16(0,t)}setUint16(e,t,n){let i=Or(2);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint16(0,t,n),this.write(i,e)}getUint32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getUint32(0,t)}setUint32(e,t,n){let i=Or(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(0,t,n),this.write(i,e)}getBigUint64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getBigUint64(0,t)}setBigUint64(e,t,n){let i=Or(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setBigUint64(0,t,n),this.write(i,e)}getFloat32(e,t){let n=this.subarray(e,e+4);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,t)}setFloat32(e,t,n){let i=Or(4);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat32(0,t,n),this.write(i,e)}getFloat64(e,t){let n=this.subarray(e,e+8);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,t)}setFloat64(e,t,n){let i=Or(8);new DataView(i.buffer,i.byteOffset,i.byteLength).setFloat64(0,t,n),this.write(i,e)}equals(e){if(e==null||!(e instanceof r)||e.bufs.length!==this.bufs.length)return!1;for(let t=0;t<this.bufs.length;t++)if(!de(this.bufs[t],e.bufs[t]))return!1;return!0}static fromUint8Arrays(e,t){let n=new r;return n.bufs=e,t==null&&(t=e.reduce((i,o)=>i+o.byteLength,0)),n.length=t,n}};function Sb(r){return r[Symbol.asyncIterator]!=null}function _b(r,e){if(Sb(r))return async function*(){for await(let a of r)yield e(a)}();let t=Ni(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){yield await o;for await(let a of t)yield e(a)}();let s=e;return function*(){yield o;for(let a of t)yield s(a)}()}var jt=_b;function Ue(){let r={};return r.promise=new Promise((e,t)=>{r.resolve=e,r.reject=t}),r}var wa=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}},Ki=class{size;hwm;head;tail;constructor(e={}){this.hwm=e.splitLimit??16,this.head=new wa(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 wa(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 Ku=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.code=t??"ABORT_ERR"}};function Vt(r={}){return kb(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 kb(r,e){e=e??{};let t=e.onEnd,n=new Ki,i,o,s,a=Ue(),c=async()=>{try{return n.isEmpty()?s?{done:!0}:await new Promise((y,g)=>{o=w=>{o=null,n.push(w);try{y(r(n))}catch(x){g(x)}return i}}):r(n)}finally{n.isEmpty()&&queueMicrotask(()=>{a.resolve(),a=Ue()})}},u=y=>o!=null?o(y):(n.push(y),i),l=y=>(n=new Ki,o!=null?o({error:y}):(n.push({error:y}),i)),h=y=>{if(s)return i;if(e?.objectMode!==!0&&y?.byteLength==null)throw new Error("objectMode was not true but tried to push non-Uint8Array value");return u({done:!1,value:y})},p=y=>s?i:(s=!0,y!=null?l(y):u({done:!0})),d=()=>(n=new Ki,p(),{done:!0}),f=y=>(p(y),{done:!0});if(i={[Symbol.asyncIterator](){return this},next:c,return:d,throw:f,push:h,end:p,get readableLength(){return n.size},onEmpty:async y=>{let g=y?.signal;if(g?.throwIfAborted(),n.isEmpty())return;let w,x;g!=null&&(w=new Promise((A,I)=>{x=()=>{I(new Ku)},g.addEventListener("abort",x)}));try{await Promise.race([a.promise,w])}finally{x!=null&&g!=null&&g?.removeEventListener("abort",x)}}},t==null)return i;let m=i;return i={[Symbol.asyncIterator](){return this},next(){return m.next()},throw(y){return m.throw(y),t!=null&&(t(y),t=void 0),{done:!0}},return(){return m.return(),t!=null&&(t(),t=void 0),{done:!0}},push:h,end(y){return m.end(y),t!=null&&(t(y),t=void 0),i},get readableLength(){return m.readableLength},onEmpty:y=>m.onEmpty(y)},i}function Rb(r){return r[Symbol.asyncIterator]!=null}function Tb(...r){let e=[];for(let t of r)Rb(t)||e.push(t);return e.length===r.length?function*(){for(let t of e)yield*t}():async function*(){let t=Vt({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 Vr=Tb;function Wt(r,...e){if(r==null)throw new Error("Empty pipeline");if(qu(r)){let n=r;r=()=>n.source}else if(k0(r)||_0(r)){let n=r;r=()=>n}let t=[r,...e];if(t.length>1&&qu(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++)qu(t[n])&&(t[n]=Nb(t[n]));return Cb(...t)}var Cb=(...r)=>{let e;for(;r.length>0;)e=r.shift()(e);return e},_0=r=>r?.[Symbol.asyncIterator]!=null,k0=r=>r?.[Symbol.iterator]!=null,qu=r=>r==null?!1:r.sink!=null&&r.source!=null,Nb=r=>e=>{let t=r.sink(e);if(t?.then!=null){let n=Vt({objectMode:!0});t.then(()=>{n.end()},s=>{n.end(s)});let i,o=r.source;if(_0(o))i=async function*(){yield*o,n.end()};else if(k0(o))i=function*(){yield*o,n.end()};else throw new Error("Unknown duplex source type - must be Iterable or AsyncIterable");return Vr(n,i())}return r.source};function Ub(r){return r[Symbol.asyncIterator]!=null}function Lb(r,e){return Ub(r)?async function*(){let t=0;if(!(e<1)){for await(let n of r)if(yield n,t++,t===e)return}}():function*(){let t=0;if(!(e<1)){for(let n of r)if(yield n,t++,t===e)return}}()}var xa=Lb;var P=class extends Event{constructor(e,t){super(e),this.detail=t}};function Q(r,e="utf8"){let t=pa[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var ba=class{url;#e=0;#t=0;#r=0;#s=0;constructor(e){this.url=e instanceof URL?e:new URL(e)}async getRawBlock(e,t){let n=this.url;if(n.pathname=`/ipfs/${e.toString()}`,n.search="?format=raw",t?.aborted===!0)throw new Error(`Signal to fetch raw block for CID ${e} from gateway ${this.url} was aborted prior to fetch`);try{this.#e++;let i=await fetch(n.toString(),{signal:t,headers:{Accept:"application/vnd.ipld.raw"},cache:"force-cache"});if(!i.ok)throw this.#t++,new Error(`unable to fetch raw block for CID ${e} from gateway ${this.url}`);return this.#s++,new Uint8Array(await i.arrayBuffer())}catch{throw t?.aborted===!0?new Error(`fetching raw block for CID ${e} from gateway ${this.url} was aborted`):(this.#t++,new Error(`unable to fetch raw block for CID ${e}`))}}reliability(){return this.#e===0?1:this.#r>0?-1/0:this.#s/(this.#e+this.#t*3)}incrementInvalidBlocks(){this.#r++}};var Ea=class{gateways;log;constructor(e,t={}){this.log=e.logger.forComponent("helia:trustless-gateway-block-broker"),this.gateways=(t.gateways??R0).map(n=>new ba(n))}async retrieve(e,t={}){let n=this.gateways.sort((o,s)=>s.reliability()-o.reliability()),i=[];for(let o of n){this.log("getting block for %c from %s",e,o.url);try{let s=await o.getRawBlock(e,t.signal);this.log.trace("got block for %c from %s",e,o.url);try{await t.validateFn?.(s)}catch(a){throw this.log.error("failed to validate block for %c from %s",e,o.url,a),o.incrementInvalidBlocks(),new Error(`unable to validate block for CID ${e} from gateway ${o.url}`)}return s}catch(s){if(this.log.error("failed to get block for %c from %s",e,o.url,s),s instanceof Error?i.push(s):i.push(new Error(`unable to fetch raw block for CID ${e} from gateway ${o.url}`)),t.signal?.aborted===!0){this.log.trace("request aborted while fetching raw block for CID %c from gateway %s",e,o.url);break}}}throw new AggregateError(i,`unable to fetch raw block for CID ${e} from any gateway`)}};var R0=["https://trustless-gateway.link","https://cloudflare-ipfs.com","https://4everland.io"];function Zo(r={}){return e=>new Ea(e,r)}var Db=Symbol.for("nodejs.util.inspect.custom"),T0=Object.values(_n).map(r=>r.decoder).reduce((r,e)=>r.or(e),_n.identity.decoder),C0=114,Gu=36,ju=37,Jo=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()})`}[uu]=!0;toString(){return this.string==null&&(this.string=ke.encode(this.multihash.bytes).slice(1)),this.string}toCID(){return H.createV1(C0,this.multihash)}toBytes(){return this.multihash.bytes}toJSON(){return this.toString()}equals(e){if(e==null)return!1;if(e instanceof Uint8Array)return de(this.multihash.bytes,e);if(typeof e=="string")return Yt(e).equals(this);if(e?.multihash?.bytes!=null)return de(this.multihash.bytes,e.multihash.bytes);throw new Error("not valid Id")}[Db](){return`PeerId(${this.toString()})`}},qi=class extends Jo{type="RSA";publicKey;constructor(e){super({...e,type:"RSA"}),this.publicKey=e.publicKey}},Gi=class extends Jo{type="Ed25519";publicKey;constructor(e){super({...e,type:"Ed25519"}),this.publicKey=e.multihash.digest}},ji=class extends Jo{type="secp256k1";publicKey;constructor(e){super({...e,type:"secp256k1"}),this.publicKey=e.multihash.digest}};function Yt(r,e){if(e=e??T0,r.charAt(0)==="1"||r.charAt(0)==="Q"){let t=Et(ke.decode(`z${r}`));return r.startsWith("12D")?new Gi({multihash:t}):r.startsWith("16U")?new ji({multihash:t}):new qi({multihash:t})}return Qo(T0.decode(r))}function Qo(r){try{let e=Et(r);if(e.code===et.code){if(e.digest.length===Gu)return new Gi({multihash:e});if(e.digest.length===ju)return new ji({multihash:e})}if(e.code===he.code)return new qi({multihash:e})}catch{return Pb(H.decode(r))}throw new Error("Supplied PeerID CID is invalid")}function Pb(r){if(r==null||r.multihash==null||r.version==null||r.version===1&&r.code!==C0)throw new Error("Supplied PeerID CID is invalid");let e=r.multihash;if(e.code===he.code)return new qi({multihash:r.multihash});if(e.code===et.code){if(e.digest.length===Gu)return new Gi({multihash:r.multihash});if(e.digest.length===ju)return new ji({multihash:r.multihash})}throw new Error("Supplied PeerID CID is invalid")}async function N0(r,e){return r.length===Gu?new Gi({multihash:hr(et.code,r),privateKey:e}):r.length===ju?new ji({multihash:hr(et.code,r),privateKey:e}):new qi({multihash:await he.digest(r),publicKey:r,privateKey:e})}var va=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 o=0,s=0,a=this.peekChar();if(a===void 0)return;let c=a==="0",u=2**(8*i)-1;for(;;){let l=this.readAtomically(()=>{let h=this.readChar();if(h===void 0)return;let p=Number.parseInt(h,e);if(!Number.isNaN(p))return p});if(l===void 0)break;if(o*=e,o+=l,o>u||(s+=1,t!==void 0&&s>t))return}if(s!==0)return!n&&c&&s>1?void 0:o})}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 s=this.readSeparator(":",n,()=>this.readIPv4Addr());if(s!==void 0)return t[i]=s[0],t[i+1]=s[1],t[i+2]=s[2],t[i+3]=s[3],[i+4,!0]}let o=this.readSeparator(":",n,()=>this.readNumber(16,4,!0,2));if(o===void 0)return[i,!1];t[i]=o>>8,t[i+1]=o&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 o=new Uint8Array(14),s=16-(n+2),[a]=e(o.subarray(0,s));return t.set(o.subarray(0,a),16-a),t})}readIPAddr(){return this.readIPv4Addr()??this.readIPv6Addr()}};var U0=45,Ob=15,Wi=new va;function Wu(r){if(!(r.length>Ob))return Wi.new(r).parseWith(()=>Wi.readIPv4Addr())}function Yu(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>U0))return Wi.new(r).parseWith(()=>Wi.readIPv6Addr())}function Ba(r){if(r.includes("%")&&(r=r.split("%")[0]),!(r.length>U0))return Wi.new(r).parseWith(()=>Wi.readIPAddr())}var A5=parseInt("0xFFFF",16),I5=new Uint8Array([0,0,0,0,0,0,0,0,0,0,255,255]);function P0(r){return!!Wu(r)}function O0(r){return!!Yu(r)}function Aa(r){return!!Ba(r)}var F0=P0,$b=O0,Xu=function(r){let e=0;if(r=r.toString().trim(),F0(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if($b(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let o=F0(t[n]),s;o&&(s=Xu(t[n]),t[n]=Q(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,Q(s.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let o=[n,1];for(n=9-t.length;n>0;n--)o.push("0");t.splice.apply(t,o)}let i=new Uint8Array(e+16);for(n=0;n<t.length;n++){let o=parseInt(t[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},V0=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let i=[];for(let o=0;o<t;o++)i.push(r[e+o]);return i.join(".")}if(t===16){let i=[];for(let o=0;o<t;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Yi={},Zu={},Kb=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];Kb.forEach(r=>{let e=qb(...r);Zu[e.code]=e,Yi[e.name]=e});function qb(r,e,t,n,i){return{code:r,size:e,name:t,resolvable:!!n,path:!!i}}function ge(r){if(typeof r=="number"){if(Zu[r]!=null)return Zu[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Yi[r]!=null)return Yi[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var cS=ge("ip4"),lS=ge("ip6"),uS=ge("ipcidr");function Qu(r,e){switch(ge(r).code){case 4:case 41:return jb(e);case 42:return $0(e);case 6:case 273:case 33:case 132:return K0(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return $0(e);case 421:return Zb(e);case 444:return z0(e);case 445:return z0(e);case 466:return Xb(e);default:return Q(e,"base16")}}function eh(r,e){switch(ge(r).code){case 4:return M0(e);case 41:return M0(e);case 42:return H0(e);case 6:case 273:case 33:case 132:return th(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return H0(e);case 421:return Wb(e);case 444:return Jb(e);case 445:return Qb(e);case 466:return Yb(e);default:return Y(e,"base16")}}var Ju=Object.values(_n).map(r=>r.decoder),Gb=function(){let r=Ju[0].or(Ju[1]);return Ju.slice(2).forEach(e=>r=r.or(e)),r}();function M0(r){if(!Aa(r))throw new Error("invalid ip address");return Xu(r)}function jb(r){let e=V0(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!Aa(e))throw new Error("invalid ip address");return e}function th(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function K0(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function H0(r){let e=Y(r),t=Uint8Array.from(Hi(e.length));return Ee([t,e],t.length+e.length)}function $0(r){let e=ni(r);if(r=r.slice(ft(e)),r.length!==e)throw new Error("inconsistent lengths");return Q(r)}function Wb(r){let e;r[0]==="Q"||r[0]==="1"?e=Et(ke.decode(`z${r}`)).bytes:e=H.parse(r).multihash.bytes;let t=Uint8Array.from(Hi(e.length));return Ee([t,e],t.length+e.length)}function Yb(r){let e=Gb.decode(r),t=Uint8Array.from(Hi(e.length));return Ee([t,e],t.length+e.length)}function Xb(r){let e=ni(r),t=r.slice(ft(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+Q(t,"base64url")}function Zb(r){let e=ni(r),t=r.slice(ft(e));if(t.length!==e)throw new Error("inconsistent lengths");return Q(t,"base58btc")}function Jb(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=qe.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=th(n);return Ee([t,i],t.length+i.length)}function Qb(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=qe.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=th(n);return Ee([t,i],t.length+i.length)}function z0(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=Q(e,"base32"),i=K0(t);return`${n}:${i}`}function q0(r){r=rh(r);let e=[],t=[],n=null,i=r.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=ge(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(o++,o>=i.length)throw j0("invalid address: "+r);if(a.path===!0){n=rh(i.slice(o).join("/")),e.push([a.code,eh(a.code,n)]),t.push([a.code,n]);break}let c=eh(a.code,i[o]);e.push([a.code,c]),t.push([a.code,Qu(a.code,c)])}return{string:G0(t),bytes:ih(e),tuples:e,stringTuples:t,path:n}}function nh(r){let e=[],t=[],n=null,i=0;for(;i<r.length;){let o=ni(r,i),s=ft(o),a=ge(o),c=eE(a,r.slice(i+s));if(c===0){e.push([o]),t.push([o]),i+=s;continue}let u=r.slice(i+s,i+s+c);if(i+=c+s,i>r.length)throw j0("Invalid address Uint8Array: "+Q(r,"base16"));e.push([o,u]);let l=Qu(o,u);if(t.push([o,l]),a.path===!0){n=l;break}}return{bytes:Uint8Array.from(r),string:G0(t),tuples:e,stringTuples:t,path:n}}function G0(r){let e=[];return r.map(t=>{let n=ge(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),rh(e.join("/"))}function ih(r){return Ee(r.map(e=>{let t=ge(e[0]),n=Uint8Array.from(Hi(t.code));return e.length>1&&e[1]!=null&&(n=Ee([n,e[1]])),n}))}function eE(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=ni(e instanceof Uint8Array?e:Uint8Array.from(e));return t+ft(t)}}function rh(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function j0(r){return new Error("Error parsing address: "+r)}var tE=Symbol.for("nodejs.util.inspect.custom"),oh=Symbol.for("@multiformats/js-multiaddr/multiaddr"),rE=[ge("dns").code,ge("dns4").code,ge("dns6").code,ge("dnsaddr").code],Ia=class r{bytes;#e;#t;#r;#s;[oh]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=nh(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=q0(e)}else if(Y0(e))t=nh(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=t.bytes,this.#e=t.string,this.#t=t.tuples,this.#r=t.stringTuples,this.#s=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,i,o="",s=ge("tcp"),a=ge("udp"),c=ge("ip4"),u=ge("ip6"),l=ge("dns6"),h=ge("ip6zone");for(let[d,f]of this.stringTuples())d===h.code&&(o=`%${f??""}`),rE.includes(d)&&(t=s.name,i=443,n=`${f??""}${o}`,e=d===l.code?6:4),(d===s.code||d===a.code)&&(t=ge(d).name,i=parseInt(f??"")),(d===c.code||d===u.code)&&(t=ge(d).name,n=`${f??""}${o}`,e=d===u.code?6:4);if(e==null||t==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},ge(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>ge(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new r(e),new r(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),i=n.lastIndexOf(t);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new r(n.slice(0,i))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new r(ih(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Yi.p2p.code&&e.push([n,i]),n===Yi["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?Q(ke.decode(`z${n}`),"base58btc"):Q(H.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#s}equals(e){return de(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(o=>o.resolvable);if(t==null)return[this];let n=W0.get(t.name);if(n==null)throw new F(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new r(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[tE](){return`Multiaddr(${this.#e})`}};var W0=new Map;function Y0(r){return!!r?.[oh]}function sh(r){return new Ia(r)}async function*Sa(r,e={}){let t=r.getReader();try{for(;;){let n=await t.read();if(n.done)return;yield n.value}}finally{e.preventCancel!==!0&&await t.cancel(),t.releaseLock()}}var Ah={};Ae(Ah,{Ed25519PrivateKey:()=>hi,Ed25519PublicKey:()=>rs,generateKeyPair:()=>f3,generateKeyPairFromSeed:()=>Ep,unmarshalEd25519PrivateKey:()=>h3,unmarshalEd25519PublicKey:()=>d3});function Mt(r){return r==null?!1:typeof r.then=="function"&&typeof r.catch=="function"&&typeof r.finally=="function"}function Xi(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`Wrong positive integer: ${r}`)}function nE(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}function ah(r,...e){if(!nE(r))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(r.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${r.length}`)}function _a(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Xi(r.outputLen),Xi(r.blockLen)}function Zi(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 X0(r,e){ah(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}var ka=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;function Z0(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}var Qi=r=>new DataView(r.buffer,r.byteOffset,r.byteLength),Xt=(r,e)=>r<<32-e|r>>>e,iE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!iE)throw new Error("Non little-endian hardware is not supported");var oE=async()=>{};async function J0(r,e,t){let n=Date.now();for(let i=0;i<r;i++){t(i);let o=Date.now()-n;o>=0&&o<e||(await oE(),n+=o)}}function ch(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function kn(r){if(typeof r=="string"&&(r=ch(r)),!Z0(r))throw new Error(`expected Uint8Array, got ${typeof r}`);return r}function Ra(...r){let e=0;for(let n=0;n<r.length;n++){let i=r[n];if(!Z0(i))throw new Error("Uint8Array expected");e+=i.length}let t=new Uint8Array(e);for(let n=0,i=0;n<r.length;n++){let o=r[n];t.set(o,i),i+=o.length}return t}var Ji=class{clone(){return this._cloneInto()}},sE={}.toString;function Q0(r,e){if(e!==void 0&&sE.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}function Ta(r){let e=n=>r().update(kn(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function eo(r=32){if(ka&&typeof ka.getRandomValues=="function")return ka.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}function aE(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let i=BigInt(32),o=BigInt(4294967295),s=Number(t>>i&o),a=Number(t&o),c=n?4:0,u=n?0:4;r.setUint32(e+c,s,n),r.setUint32(e+u,a,n)}var to=class extends Ji{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=Qi(this.buffer)}update(e){Zi(this);let{view:t,buffer:n,blockLen:i}=this;e=kn(e);let o=e.length;for(let s=0;s<o;){let a=Math.min(i-this.pos,o-s);if(a===i){let c=Qi(e);for(;i<=o-s;s+=i)this.process(c,s);continue}n.set(e.subarray(s,s+a),this.pos),this.pos+=a,s+=a,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Zi(this),X0(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:i,isLE:o}=this,{pos:s}=this;t[s++]=128,this.buffer.subarray(s).fill(0),this.padOffset>i-s&&(this.process(n,0),s=0);for(let h=s;h<i;h++)t[h]=0;aE(n,i-8,BigInt(this.length*8),o),this.process(n,0);let a=Qi(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,l=this.get();if(u>l.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h<u;h++)a.setUint32(4*h,l[h],o)}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:o,destroyed:s,pos:a}=this;return e.length=i,e.pos=a,e.finished=o,e.destroyed=s,i%t&&e.buffer.set(n),e}};var Ca=BigInt(4294967295),lh=BigInt(32);function ep(r,e=!1){return e?{h:Number(r&Ca),l:Number(r>>lh&Ca)}:{h:Number(r>>lh&Ca)|0,l:Number(r&Ca)|0}}function cE(r,e=!1){let t=new Uint32Array(r.length),n=new Uint32Array(r.length);for(let i=0;i<r.length;i++){let{h:o,l:s}=ep(r[i],e);[t[i],n[i]]=[o,s]}return[t,n]}var lE=(r,e)=>BigInt(r>>>0)<<lh|BigInt(e>>>0),uE=(r,e,t)=>r>>>t,hE=(r,e,t)=>r<<32-t|e>>>t,dE=(r,e,t)=>r>>>t|e<<32-t,fE=(r,e,t)=>r<<32-t|e>>>t,pE=(r,e,t)=>r<<64-t|e>>>t-32,mE=(r,e,t)=>r>>>t-32|e<<64-t,yE=(r,e)=>e,gE=(r,e)=>r,wE=(r,e,t)=>r<<t|e>>>32-t,xE=(r,e,t)=>e<<t|r>>>32-t,bE=(r,e,t)=>e<<t-32|r>>>64-t,EE=(r,e,t)=>r<<t-32|e>>>64-t;function vE(r,e,t,n){let i=(e>>>0)+(n>>>0);return{h:r+t+(i/2**32|0)|0,l:i|0}}var BE=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0),AE=(r,e,t,n)=>e+t+n+(r/2**32|0)|0,IE=(r,e,t,n)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0),SE=(r,e,t,n,i)=>e+t+n+i+(r/2**32|0)|0,_E=(r,e,t,n,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(n>>>0)+(i>>>0),kE=(r,e,t,n,i,o)=>e+t+n+i+o+(r/2**32|0)|0;var RE={fromBig:ep,split:cE,toBig:lE,shrSH:uE,shrSL:hE,rotrSH:dE,rotrSL:fE,rotrBH:pE,rotrBL:mE,rotr32H:yE,rotr32L:gE,rotlSH:wE,rotlSL:xE,rotlBH:bE,rotlBL:EE,add:vE,add3L:BE,add3H:AE,add4L:IE,add4H:SE,add5H:kE,add5L:_E},J=RE;var[TE,CE]=J.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))),Rn=new Uint32Array(80),Tn=new Uint32Array(80),uh=class extends to{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:o,Cl:s,Dh:a,Dl:c,Eh:u,El:l,Fh:h,Fl:p,Gh:d,Gl:f,Hh:m,Hl:y}=this;return[e,t,n,i,o,s,a,c,u,l,h,p,d,f,m,y]}set(e,t,n,i,o,s,a,c,u,l,h,p,d,f,m,y){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=i|0,this.Ch=o|0,this.Cl=s|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=l|0,this.Fh=h|0,this.Fl=p|0,this.Gh=d|0,this.Gl=f|0,this.Hh=m|0,this.Hl=y|0}process(e,t){for(let x=0;x<16;x++,t+=4)Rn[x]=e.getUint32(t),Tn[x]=e.getUint32(t+=4);for(let x=16;x<80;x++){let A=Rn[x-15]|0,I=Tn[x-15]|0,B=J.rotrSH(A,I,1)^J.rotrSH(A,I,8)^J.shrSH(A,I,7),v=J.rotrSL(A,I,1)^J.rotrSL(A,I,8)^J.shrSL(A,I,7),E=Rn[x-2]|0,R=Tn[x-2]|0,N=J.rotrSH(E,R,19)^J.rotrBH(E,R,61)^J.shrSH(E,R,6),T=J.rotrSL(E,R,19)^J.rotrBL(E,R,61)^J.shrSL(E,R,6),M=J.add4L(v,T,Tn[x-7],Tn[x-16]),D=J.add4H(M,B,N,Rn[x-7],Rn[x-16]);Rn[x]=D|0,Tn[x]=M|0}let{Ah:n,Al:i,Bh:o,Bl:s,Ch:a,Cl:c,Dh:u,Dl:l,Eh:h,El:p,Fh:d,Fl:f,Gh:m,Gl:y,Hh:g,Hl:w}=this;for(let x=0;x<80;x++){let A=J.rotrSH(h,p,14)^J.rotrSH(h,p,18)^J.rotrBH(h,p,41),I=J.rotrSL(h,p,14)^J.rotrSL(h,p,18)^J.rotrBL(h,p,41),B=h&d^~h&m,v=p&f^~p&y,E=J.add5L(w,I,v,CE[x],Tn[x]),R=J.add5H(E,g,A,B,TE[x],Rn[x]),N=E|0,T=J.rotrSH(n,i,28)^J.rotrBH(n,i,34)^J.rotrBH(n,i,39),M=J.rotrSL(n,i,28)^J.rotrBL(n,i,34)^J.rotrBL(n,i,39),D=n&o^n&a^o&a,ne=i&s^i&c^s&c;g=m|0,w=y|0,m=d|0,y=f|0,d=h|0,f=p|0,{h,l:p}=J.add(u|0,l|0,R|0,N|0),u=a|0,l=c|0,a=o|0,c=s|0,o=n|0,s=i|0;let _=J.add3L(N,M,ne);n=J.add3H(_,R,T,D),i=_|0}({h:n,l:i}=J.add(this.Ah|0,this.Al|0,n|0,i|0)),{h:o,l:s}=J.add(this.Bh|0,this.Bl|0,o|0,s|0),{h:a,l:c}=J.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l}=J.add(this.Dh|0,this.Dl|0,u|0,l|0),{h,l:p}=J.add(this.Eh|0,this.El|0,h|0,p|0),{h:d,l:f}=J.add(this.Fh|0,this.Fl|0,d|0,f|0),{h:m,l:y}=J.add(this.Gh|0,this.Gl|0,m|0,y|0),{h:g,l:w}=J.add(this.Hh|0,this.Hl|0,g|0,w|0),this.set(n,i,o,s,a,c,u,l,h,p,d,f,m,y,g,w)}roundClean(){Rn.fill(0),Tn.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 ro=Ta(()=>new uh);var Ua={};Ae(Ua,{bitGet:()=>FE,bitLen:()=>OE,bitMask:()=>es,bitSet:()=>VE,bytesToHex:()=>Hr,bytesToNumberBE:()=>$r,bytesToNumberLE:()=>Cn,concatBytes:()=>zr,createHmacDrbg:()=>fh,ensureBytes:()=>Se,equalBytes:()=>DE,hexToBytes:()=>ci,hexToNumber:()=>dh,isBytes:()=>Zt,numberToBytesBE:()=>Nn,numberToBytesLE:()=>li,numberToHexUnpadded:()=>ip,numberToVarBytesBE:()=>LE,utf8ToBytes:()=>PE,validateObject:()=>fr});var np=BigInt(0),Na=BigInt(1),NE=BigInt(2);function Zt(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}var UE=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Hr(r){if(!Zt(r))throw new Error("Uint8Array expected");let e="";for(let t=0;t<r.length;t++)e+=UE[r[t]];return e}function ip(r){let e=r.toString(16);return e.length&1?`0${e}`:e}function dh(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);return BigInt(r===""?"0":`0x${r}`)}var Mr={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function tp(r){if(r>=Mr._0&&r<=Mr._9)return r-Mr._0;if(r>=Mr._A&&r<=Mr._F)return r-(Mr._A-10);if(r>=Mr._a&&r<=Mr._f)return r-(Mr._a-10)}function ci(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,o=0;i<t;i++,o+=2){let s=tp(r.charCodeAt(o)),a=tp(r.charCodeAt(o+1));if(s===void 0||a===void 0){let c=r[o]+r[o+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+o)}n[i]=s*16+a}return n}function $r(r){return dh(Hr(r))}function Cn(r){if(!Zt(r))throw new Error("Uint8Array expected");return dh(Hr(Uint8Array.from(r).reverse()))}function Nn(r,e){return ci(r.toString(16).padStart(e*2,"0"))}function li(r,e){return Nn(r,e).reverse()}function LE(r){return ci(ip(r))}function Se(r,e,t){let n;if(typeof e=="string")try{n=ci(e)}catch(o){throw new Error(`${r} must be valid hex string, got "${e}". Cause: ${o}`)}else if(Zt(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 zr(...r){let e=0;for(let i=0;i<r.length;i++){let o=r[i];if(!Zt(o))throw new Error("Uint8Array expected");e+=o.length}let t=new Uint8Array(e),n=0;for(let i=0;i<r.length;i++){let o=r[i];t.set(o,n),n+=o.length}return t}function DE(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 PE(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}function OE(r){let e;for(e=0;r>np;r>>=Na,e+=1);return e}function FE(r,e){return r>>BigInt(e)&Na}var VE=(r,e,t)=>r|(t?Na:np)<<BigInt(e),es=r=>(NE<<BigInt(r-1))-Na,hh=r=>new Uint8Array(r),rp=r=>Uint8Array.from(r);function fh(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=hh(r),i=hh(r),o=0,s=()=>{n.fill(1),i.fill(0),o=0},a=(...h)=>t(i,n,...h),c=(h=hh())=>{i=a(rp([0]),h),n=a(),h.length!==0&&(i=a(rp([1]),h),n=a())},u=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let h=0,p=[];for(;h<e;){n=a();let d=n.slice();p.push(d),h+=n.length}return zr(...p)};return(h,p)=>{s(),c(h);let d;for(;!(d=p(u()));)c();return s(),d}}var ME={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"||Zt(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 fr(r,e,t={}){let n=(i,o,s)=>{let a=ME[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);let c=r[i];if(!(s&&c===void 0)&&!a(c,r))throw new Error(`Invalid param ${String(i)}=${c} (${typeof c}), expected ${o}`)};for(let[i,o]of Object.entries(e))n(i,o,!1);for(let[i,o]of Object.entries(t))n(i,o,!0);return r}var Oe=BigInt(0),we=BigInt(1),ui=BigInt(2),HE=BigInt(3),ph=BigInt(4),op=BigInt(5),sp=BigInt(8),$E=BigInt(9),zE=BigInt(16);function ye(r,e){let t=r%e;return t>=Oe?t:e+t}function KE(r,e,t){if(t<=Oe||e<Oe)throw new Error("Expected power/modulo > 0");if(t===we)return Oe;let n=we;for(;e>Oe;)e&we&&(n=n*r%t),r=r*r%t,e>>=we;return n}function xe(r,e,t){let n=r;for(;e-- >Oe;)n*=n,n%=t;return n}function La(r,e){if(r===Oe||e<=Oe)throw new Error(`invert: expected positive integers, got n=${r} mod=${e}`);let t=ye(r,e),n=e,i=Oe,o=we,s=we,a=Oe;for(;t!==Oe;){let u=n/t,l=n%t,h=i-s*u,p=o-a*u;n=t,t=l,i=s,o=a,s=h,a=p}if(n!==we)throw new Error("invert: does not exist");return ye(i,e)}function qE(r){let e=(r-we)/ui,t,n,i;for(t=r-we,n=0;t%ui===Oe;t/=ui,n++);for(i=ui;i<r&&KE(i,e,r)!==r-we;i++);if(n===1){let s=(r+we)/ph;return function(c,u){let l=c.pow(u,s);if(!c.eql(c.sqr(l),u))throw new Error("Cannot find square root");return l}}let o=(t+we)/ui;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=n,l=a.pow(a.mul(a.ONE,i),t),h=a.pow(c,o),p=a.pow(c,t);for(;!a.eql(p,a.ONE);){if(a.eql(p,a.ZERO))return a.ZERO;let d=1;for(let m=a.sqr(p);d<u&&!a.eql(m,a.ONE);d++)m=a.sqr(m);let f=a.pow(l,we<<BigInt(u-d-1));l=a.sqr(f),h=a.mul(h,f),p=a.mul(p,l),u=d}return h}}function GE(r){if(r%ph===HE){let e=(r+we)/ph;return function(n,i){let o=n.pow(i,e);if(!n.eql(n.sqr(o),i))throw new Error("Cannot find square root");return o}}if(r%sp===op){let e=(r-op)/sp;return function(n,i){let o=n.mul(i,ui),s=n.pow(o,e),a=n.mul(i,s),c=n.mul(n.mul(a,ui),s),u=n.mul(a,n.sub(c,n.ONE));if(!n.eql(n.sqr(u),i))throw new Error("Cannot find square root");return u}}return r%zE,qE(r)}var ap=(r,e)=>(ye(r,e)&we)===we,jE=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function mh(r){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},t=jE.reduce((n,i)=>(n[i]="function",n),e);return fr(r,t)}function WE(r,e,t){if(t<Oe)throw new Error("Expected power > 0");if(t===Oe)return r.ONE;if(t===we)return e;let n=r.ONE,i=e;for(;t>Oe;)t&we&&(n=r.mul(n,i)),i=r.sqr(i),t>>=we;return n}function YE(r,e){let t=new Array(e.length),n=e.reduce((o,s,a)=>r.is0(s)?o:(t[a]=o,r.mul(o,s)),r.ONE),i=r.inv(n);return e.reduceRight((o,s,a)=>r.is0(s)?o:(t[a]=r.mul(o,t[a]),r.mul(o,s)),i),t}function yh(r,e){let t=e!==void 0?e:r.toString(2).length,n=Math.ceil(t/8);return{nBitLength:t,nByteLength:n}}function Da(r,e,t=!1,n={}){if(r<=Oe)throw new Error(`Expected Field ORDER > 0, got ${r}`);let{nBitLength:i,nByteLength:o}=yh(r,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");let s=GE(r),a=Object.freeze({ORDER:r,BITS:i,BYTES:o,MASK:es(i),ZERO:Oe,ONE:we,create:c=>ye(c,r),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return Oe<=c&&c<r},is0:c=>c===Oe,isOdd:c=>(c&we)===we,neg:c=>ye(-c,r),eql:(c,u)=>c===u,sqr:c=>ye(c*c,r),add:(c,u)=>ye(c+u,r),sub:(c,u)=>ye(c-u,r),mul:(c,u)=>ye(c*u,r),pow:(c,u)=>WE(a,c,u),div:(c,u)=>ye(c*La(u,r),r),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>La(c,r),sqrt:n.sqrt||(c=>s(a,c)),invertBatch:c=>YE(a,c),cmov:(c,u,l)=>l?u:c,toBytes:c=>t?li(c,o):Nn(c,o),fromBytes:c=>{if(c.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${c.length}`);return t?Cn(c):$r(c)}});return Object.freeze(a)}function cp(r,e){if(!r.isOdd)throw new Error("Field doesn't have isOdd");let t=r.sqrt(e);return r.isOdd(t)?r.neg(t):t}function lp(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 gh(r){let e=lp(r);return e+Math.ceil(e/2)}function up(r,e,t=!1){let n=r.length,i=lp(e),o=gh(e);if(n<16||n<o||n>1024)throw new Error(`expected ${o}-1024 bytes of input, got ${n}`);let s=t?$r(r):Cn(r),a=ye(s,e-we)+we;return t?li(a,i):Nn(a,i)}var ZE=BigInt(0),wh=BigInt(1);function Pa(r,e){let t=(i,o)=>{let s=o.negate();return i?s:o},n=i=>{let o=Math.ceil(e/i)+1,s=2**(i-1);return{windows:o,windowSize:s}};return{constTimeNegate:t,unsafeLadder(i,o){let s=r.ZERO,a=i;for(;o>ZE;)o&wh&&(s=s.add(a)),a=a.double(),o>>=wh;return s},precomputeWindow(i,o){let{windows:s,windowSize:a}=n(o),c=[],u=i,l=u;for(let h=0;h<s;h++){l=u,c.push(l);for(let p=1;p<a;p++)l=l.add(u),c.push(l);u=l.double()}return c},wNAF(i,o,s){let{windows:a,windowSize:c}=n(i),u=r.ZERO,l=r.BASE,h=BigInt(2**i-1),p=2**i,d=BigInt(i);for(let f=0;f<a;f++){let m=f*c,y=Number(s&h);s>>=d,y>c&&(y-=p,s+=wh);let g=m,w=m+Math.abs(y)-1,x=f%2!==0,A=y<0;y===0?l=l.add(t(x,o[g])):u=u.add(t(A,o[w]))}return{p:u,f:l}},wNAFCached(i,o,s,a){let c=i._WINDOW_SIZE||1,u=o.get(i);return u||(u=this.precomputeWindow(i,c),c!==1&&o.set(i,a(u))),this.wNAF(c,u,s)}}}function ts(r){return mh(r.Fp),fr(r,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...yh(r.n,r.nBitLength),...r,p:r.Fp.ORDER})}var Jt=BigInt(0),It=BigInt(1),Oa=BigInt(2),JE=BigInt(8),QE={zip215:!0};function e3(r){let e=ts(r);return fr(r,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Fa(r){let e=e3(r),{Fp:t,n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:c}=e,u=Oa<<BigInt(a*8)-It,l=t.create,h=e.uvRatio||((U,k)=>{try{return{isValid:!0,value:t.sqrt(U*t.inv(k))}}catch{return{isValid:!1,value:Jt}}}),p=e.adjustScalarBytes||(U=>U),d=e.domain||((U,k,z)=>{if(k.length||z)throw new Error("Contexts/pre-hash are not supported");return U}),f=U=>typeof U=="bigint"&&Jt<U,m=(U,k)=>f(U)&&f(k)&&U<k,y=U=>U===Jt||m(U,u);function g(U,k){if(m(U,k))return U;throw new Error(`Expected valid scalar < ${k}, got ${typeof U} ${U}`)}function w(U){return U===Jt?U:g(U,n)}let x=new Map;function A(U){if(!(U instanceof I))throw new Error("ExtendedPoint expected")}class I{constructor(k,z,j,Z){if(this.ex=k,this.ey=z,this.ez=j,this.et=Z,!y(k))throw new Error("x required");if(!y(z))throw new Error("y required");if(!y(j))throw new Error("z required");if(!y(Z))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(k){if(k instanceof I)throw new Error("extended point not allowed");let{x:z,y:j}=k||{};if(!y(z)||!y(j))throw new Error("invalid affine point");return new I(z,j,It,l(z*j))}static normalizeZ(k){let z=t.invertBatch(k.map(j=>j.ez));return k.map((j,Z)=>j.toAffine(z[Z])).map(I.fromAffine)}_setWindowSize(k){this._WINDOW_SIZE=k,x.delete(this)}assertValidity(){let{a:k,d:z}=e;if(this.is0())throw new Error("bad point: ZERO");let{ex:j,ey:Z,ez:te,et:ie}=this,pe=l(j*j),ae=l(Z*Z),le=l(te*te),Ce=l(le*le),Be=l(pe*k),ze=l(le*l(Be+ae)),Ke=l(Ce+l(z*l(pe*ae)));if(ze!==Ke)throw new Error("bad point: equation left != right (1)");let Pe=l(j*Z),Ze=l(te*ie);if(Pe!==Ze)throw new Error("bad point: equation left != right (2)")}equals(k){A(k);let{ex:z,ey:j,ez:Z}=this,{ex:te,ey:ie,ez:pe}=k,ae=l(z*pe),le=l(te*Z),Ce=l(j*pe),Be=l(ie*Z);return ae===le&&Ce===Be}is0(){return this.equals(I.ZERO)}negate(){return new I(l(-this.ex),this.ey,this.ez,l(-this.et))}double(){let{a:k}=e,{ex:z,ey:j,ez:Z}=this,te=l(z*z),ie=l(j*j),pe=l(Oa*l(Z*Z)),ae=l(k*te),le=z+j,Ce=l(l(le*le)-te-ie),Be=ae+ie,ze=Be-pe,Ke=ae-ie,Pe=l(Ce*ze),Ze=l(Be*Ke),Dr=l(Ce*Ke),Qn=l(ze*Be);return new I(Pe,Ze,Qn,Dr)}add(k){A(k);let{a:z,d:j}=e,{ex:Z,ey:te,ez:ie,et:pe}=this,{ex:ae,ey:le,ez:Ce,et:Be}=k;if(z===BigInt(-1)){let Uf=l((te-Z)*(le+ae)),Lf=l((te+Z)*(le-ae)),Zl=l(Lf-Uf);if(Zl===Jt)return this.double();let Df=l(ie*Oa*Be),Pf=l(pe*Oa*Ce),Of=Pf+Df,Ff=Lf+Uf,Vf=Pf-Df,C2=l(Of*Zl),N2=l(Ff*Vf),U2=l(Of*Vf),L2=l(Zl*Ff);return new I(C2,N2,L2,U2)}let ze=l(Z*ae),Ke=l(te*le),Pe=l(pe*j*Be),Ze=l(ie*Ce),Dr=l((Z+te)*(ae+le)-ze-Ke),Qn=Ze-Pe,zo=Ze+Pe,Nf=l(Ke-z*ze),_2=l(Dr*Qn),k2=l(zo*Nf),R2=l(Dr*Nf),T2=l(Qn*zo);return new I(_2,k2,T2,R2)}subtract(k){return this.add(k.negate())}wNAF(k){return E.wNAFCached(this,x,k,I.normalizeZ)}multiply(k){let{p:z,f:j}=this.wNAF(g(k,n));return I.normalizeZ([z,j])[0]}multiplyUnsafe(k){let z=w(k);return z===Jt?v:this.equals(v)||z===It?this:this.equals(B)?this.wNAF(z).p:E.unsafeLadder(this,z)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return E.unsafeLadder(this,n).is0()}toAffine(k){let{ex:z,ey:j,ez:Z}=this,te=this.is0();k==null&&(k=te?JE:t.inv(Z));let ie=l(z*k),pe=l(j*k),ae=l(Z*k);if(te)return{x:Jt,y:It};if(ae!==It)throw new Error("invZ was invalid");return{x:ie,y:pe}}clearCofactor(){let{h:k}=e;return k===It?this:this.multiplyUnsafe(k)}static fromHex(k,z=!1){let{d:j,a:Z}=e,te=t.BYTES;k=Se("pointHex",k,te);let ie=k.slice(),pe=k[te-1];ie[te-1]=pe&-129;let ae=Cn(ie);ae===Jt||(z?g(ae,u):g(ae,t.ORDER));let le=l(ae*ae),Ce=l(le-It),Be=l(j*le-Z),{isValid:ze,value:Ke}=h(Ce,Be);if(!ze)throw new Error("Point.fromHex: invalid y coordinate");let Pe=(Ke&It)===It,Ze=(pe&128)!==0;if(!z&&Ke===Jt&&Ze)throw new Error("Point.fromHex: x=0 and x_0=1");return Ze!==Pe&&(Ke=l(-Ke)),I.fromAffine({x:Ke,y:ae})}static fromPrivateKey(k){return T(k).point}toRawBytes(){let{x:k,y:z}=this.toAffine(),j=li(z,t.BYTES);return j[j.length-1]|=k&It?128:0,j}toHex(){return Hr(this.toRawBytes())}}I.BASE=new I(e.Gx,e.Gy,It,l(e.Gx*e.Gy)),I.ZERO=new I(Jt,It,It,Jt);let{BASE:B,ZERO:v}=I,E=Pa(I,a*8);function R(U){return ye(U,n)}function N(U){return R(Cn(U))}function T(U){let k=a;U=Se("private key",U,k);let z=Se("hashed private key",o(U),2*k),j=p(z.slice(0,k)),Z=z.slice(k,2*k),te=N(j),ie=B.multiply(te),pe=ie.toRawBytes();return{head:j,prefix:Z,scalar:te,point:ie,pointBytes:pe}}function M(U){return T(U).pointBytes}function D(U=new Uint8Array,...k){let z=zr(...k);return N(o(d(z,Se("context",U),!!i)))}function ne(U,k,z={}){U=Se("message",U),i&&(U=i(U));let{prefix:j,scalar:Z,pointBytes:te}=T(k),ie=D(z.context,j,U),pe=B.multiply(ie).toRawBytes(),ae=D(z.context,pe,te,U),le=R(ie+ae*Z);w(le);let Ce=zr(pe,li(le,t.BYTES));return Se("result",Ce,a*2)}let _=QE;function L(U,k,z,j=_){let{context:Z,zip215:te}=j,ie=t.BYTES;U=Se("signature",U,2*ie),k=Se("message",k),i&&(k=i(k));let pe=Cn(U.slice(ie,2*ie)),ae,le,Ce;try{ae=I.fromHex(z,te),le=I.fromHex(U.slice(0,ie),te),Ce=B.multiplyUnsafe(pe)}catch{return!1}if(!te&&ae.isSmallOrder())return!1;let Be=D(Z,le.toRawBytes(),ae.toRawBytes(),k);return le.add(ae.multiplyUnsafe(Be)).subtract(Ce).clearCofactor().equals(I.ZERO)}return B._setWindowSize(8),{CURVE:e,getPublicKey:M,sign:ne,verify:L,ExtendedPoint:I,utils:{getExtendedPublicKey:T,randomPrivateKey:()=>s(t.BYTES),precompute(U=8,k=I.BASE){return k._setWindowSize(U),k.multiply(BigInt(3)),k}}}}var bh=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),hp=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),l_=BigInt(0),t3=BigInt(1),xh=BigInt(2),r3=BigInt(5),dp=BigInt(10),n3=BigInt(20),i3=BigInt(40),fp=BigInt(80);function o3(r){let e=bh,n=r*r%e*r%e,i=xe(n,xh,e)*n%e,o=xe(i,t3,e)*r%e,s=xe(o,r3,e)*o%e,a=xe(s,dp,e)*s%e,c=xe(a,n3,e)*a%e,u=xe(c,i3,e)*c%e,l=xe(u,fp,e)*u%e,h=xe(l,fp,e)*u%e,p=xe(h,dp,e)*s%e;return{pow_p_5_8:xe(p,xh,e)*r%e,b2:n}}function s3(r){return r[0]&=248,r[31]&=127,r[31]|=64,r}function a3(r,e){let t=bh,n=ye(e*e*e,t),i=ye(n*n*e,t),o=o3(r*i).pow_p_5_8,s=ye(r*n*o,t),a=ye(e*s*s,t),c=s,u=ye(s*hp,t),l=a===r,h=a===ye(-r,t),p=a===ye(-r*hp,t);return l&&(s=c),(h||p)&&(s=u),ap(s,t)&&(s=ye(-s,t)),{isValid:l||h,value:s}}var Kr=Da(bh,void 0,!0),Eh={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:Kr,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:ro,randomBytes:eo,adjustScalarBytes:s3,uvRatio:a3},no=Fa(Eh);function pp(r,e,t){if(e.length>255)throw new Error("Context is too big");return Ra(ch("SigEd25519 no Ed25519 collisions"),new Uint8Array([t?1:0,e.length]),e,r)}var u_=Fa({...Eh,domain:pp}),h_=Fa({...Eh,domain:pp,prehash:ro});var c3=(Kr.ORDER+BigInt(3))/BigInt(8),d_=Kr.pow(xh,c3),f_=Kr.sqrt(Kr.neg(Kr.ONE)),p_=(Kr.ORDER-BigInt(5))/BigInt(8),m_=BigInt(486662);var y_=cp(Kr,Kr.neg(BigInt(486664)));var g_=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),w_=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),x_=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),b_=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952");var E_=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");var io=32,qr=64,Va=32;function mp(){let r=no.utils.randomPrivateKey(),e=no.getPublicKey(r);return{privateKey:xp(r,e),publicKey:e}}function yp(r){if(r.length!==Va)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=no.getPublicKey(e);return{privateKey:xp(e,t),publicKey:t}}function gp(r,e){let t=r.subarray(0,Va);return no.sign(e instanceof Uint8Array?e:e.subarray(),t)}function wp(r,e,t){return no.verify(e,t instanceof Uint8Array?t:t.subarray(),r)}function xp(r,e){let t=new Uint8Array(qr);for(let n=0;n<Va;n++)t[n]=r[n],t[Va+n]=e[n];return t}var ot={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 vh={alg:"A128GCM",ext:!0,k:"scm9jmO_4BJAgdwWGVulLg",key_ops:["encrypt","decrypt"],kty:"oct"};function bp(r){let e=r?.algorithm??"AES-GCM",t=r?.keyLength??16,n=r?.nonceLength??12,i=r?.digest??"SHA-256",o=r?.saltLength??16,s=r?.iterations??32767,a=ot.get();t*=8;async function c(h,p){let d=a.getRandomValues(new Uint8Array(o)),f=a.getRandomValues(new Uint8Array(n)),m={name:e,iv:f};typeof p=="string"&&(p=Y(p));let y;if(p.length===0){y=await a.subtle.importKey("jwk",vh,{name:"AES-GCM"},!0,["encrypt"]);try{let w={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,x,{name:e,length:t},!0,["encrypt"])}catch{y=await a.subtle.importKey("jwk",vh,{name:"AES-GCM"},!0,["encrypt"])}}else{let w={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},x=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);y=await a.subtle.deriveKey(w,x,{name:e,length:t},!0,["encrypt"])}let g=await a.subtle.encrypt(m,y,h);return Ee([d,m.iv,new Uint8Array(g)])}async function u(h,p){let d=h.subarray(0,o),f=h.subarray(o,o+n),m=h.subarray(o+n),y={name:e,iv:f};typeof p=="string"&&(p=Y(p));let g;if(p.length===0)try{let x={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,A,{name:e,length:t},!0,["decrypt"])}catch{g=await a.subtle.importKey("jwk",vh,{name:"AES-GCM"},!0,["decrypt"])}else{let x={name:"PBKDF2",salt:d,iterations:s,hash:{name:i}},A=await a.subtle.importKey("raw",p,{name:"PBKDF2"},!1,["deriveKey"]);g=await a.subtle.deriveKey(x,A,{name:e,length:t},!0,["decrypt"])}let w=await a.subtle.decrypt(y,g,m);return new Uint8Array(w)}return{encrypt:c,decrypt:u}}async function oo(r,e){let n=await bp().encrypt(r,e);return Pr.encode(n)}var be;(function(r){r.RSA="RSA",r.Ed25519="Ed25519",r.Secp256k1="Secp256k1"})(be||(be={}));var Bh;(function(r){r[r.RSA=0]="RSA",r[r.Ed25519=1]="Ed25519",r[r.Secp256k1=2]="Secp256k1"})(Bh||(Bh={}));(function(r){r.codec=()=>si(Bh)})(be||(be={}));var pr;(function(r){let e;r.codec=()=>(e==null&&(e=Ft((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),be.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Type=be.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Ot(t,r.codec()),r.decode=t=>Dt(t,r.codec())})(pr||(pr={}));var mr;(function(r){let e;r.codec=()=>(e==null&&(e=Ft((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Type!=null&&(n.uint32(8),be.codec().encode(t.Type,n)),t.Data!=null&&(n.uint32(18),n.bytes(t.Data)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Type=be.codec().decode(t);break;case 2:i.Data=t.bytes();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Ot(t,r.codec()),r.decode=t=>Dt(t,r.codec())})(mr||(mr={}));var rs=class{_key;constructor(e){this._key=so(e,io)}verify(e,t){return wp(this._key,t,e)}marshal(){return this._key}get bytes(){return pr.encode({Type:be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}hash(){let e=he.digest(this.bytes);return Mt(e)?e.then(({bytes:t})=>t):e.bytes}},hi=class{_key;_publicKey;constructor(e,t){this._key=so(e,qr),this._publicKey=so(t,io)}sign(e){return gp(this._key,e)}get public(){return new rs(this._publicKey)}marshal(){return this._key}get bytes(){return mr.encode({Type:be.Ed25519,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}async hash(){let e=he.digest(this.bytes),t;return Mt(e)?{bytes:t}=await e:t=e.bytes,t}async id(){let e=et.digest(this.public.bytes);return ke.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if(t==="libp2p-key")return oo(this.bytes,e);throw new F(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function h3(r){if(r.length>qr){r=so(r,qr+io);let n=r.subarray(0,qr),i=r.subarray(qr,r.length);return new hi(n,i)}r=so(r,qr);let e=r.subarray(0,qr),t=r.subarray(io);return new hi(e,t)}function d3(r){return r=so(r,io),new rs(r)}async function f3(){let{privateKey:r,publicKey:e}=mp();return new hi(r,e)}async function Ep(r){let{privateKey:e,publicKey:t}=yp(r);return new hi(e,t)}function so(r,e){if(r=Uint8Array.from(r??[]),r.length!==e)throw new F(`Key must be a Uint8Array of length ${e}, got ${r.length}`,"ERR_INVALID_KEY_TYPE");return r}var Lh={};Ae(Lh,{MAX_RSA_KEY_SIZE:()=>ps,RsaPrivateKey:()=>ho,RsaPublicKey:()=>fs,fromJwk:()=>M3,generateKeyPair:()=>H3,unmarshalRsaPrivateKey:()=>Nh,unmarshalRsaPublicKey:()=>V3});function di(r){if(isNaN(r)||r<=0)throw new F("random bytes length must be a Number bigger than 0","ERR_INVALID_LENGTH");return eo(r)}var Pn={};Ae(Pn,{exportToPem:()=>L3,importFromPem:()=>D3,jwkToPkcs1:()=>T3,jwkToPkix:()=>N3,pkcs1ToJwk:()=>R3,pkixToJwk:()=>C3});var Ha=class extends Ji{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,_a(e);let n=kn(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,o=new Uint8Array(i);o.set(n.length>i?e.create().update(n).digest():n);for(let s=0;s<o.length;s++)o[s]^=54;this.iHash.update(o),this.oHash=e.create();for(let s=0;s<o.length;s++)o[s]^=106;this.oHash.update(o),o.fill(0)}update(e){return Zi(this),this.iHash.update(e),this}digestInto(e){Zi(this),ah(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:o,blockLen:s,outputLen:a}=this;return e=e,e.finished=i,e.destroyed=o,e.blockLen=s,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()}},ns=(r,e,t)=>new Ha(r,e).update(t).digest();ns.create=(r,e)=>new Ha(r,e);function p3(r,e,t,n){_a(r);let i=Q0({dkLen:32,asyncTick:10},n),{c:o,dkLen:s,asyncTick:a}=i;if(Xi(o),Xi(s),Xi(a),o<1)throw new Error("PBKDF2: iterations (c) should be >= 1");let c=kn(e),u=kn(t),l=new Uint8Array(s),h=ns.create(r,c),p=h._cloneInto().update(u);return{c:o,dkLen:s,asyncTick:a,DK:l,PRF:h,PRFSalt:p}}function m3(r,e,t,n,i){return r.destroy(),e.destroy(),n&&n.destroy(),i.fill(0),t}async function Ih(r,e,t,n){let{c:i,dkLen:o,asyncTick:s,DK:a,PRF:c,PRFSalt:u}=p3(r,e,t,n),l,h=new Uint8Array(4),p=Qi(h),d=new Uint8Array(c.outputLen);for(let f=1,m=0;m<o;f++,m+=c.outputLen){let y=a.subarray(m,m+c.outputLen);p.setInt32(0,f,!1),(l=u._cloneInto(l)).update(h).digestInto(d),y.set(d.subarray(0,y.length)),await J0(i-1,s,()=>{c._cloneInto(l).update(d).digestInto(d);for(let g=0;g<y.length;g++)y[g]^=d[g]})}return m3(c,u,a,l,d)}var se=re(vp());function fi(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 Un(r,e,t=-1){let n=t,i=r,o=0,s=Math.pow(2,e);for(let a=1;a<8;a++){if(r<s){let c;if(n<0)c=new ArrayBuffer(a),o=a;else{if(n<a)return new ArrayBuffer(0);c=new ArrayBuffer(n),o=n}let u=new Uint8Array(c);for(let l=a-1;l>=0;l--){let h=Math.pow(2,l*e);u[o-l-1]=Math.floor(i/h),i-=u[o-l-1]*h}return c}s*=Math.pow(2,e)}return new ArrayBuffer(0)}function Ka(...r){let e=0,t=0;for(let o of r)e+=o.length;let n=new ArrayBuffer(e),i=new Uint8Array(n);for(let o of r)i.set(o,t),t+=o.length;return i}function _h(){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=fi(t,8),i=new ArrayBuffer(this.valueHex.byteLength),o=new Uint8Array(i);for(let a=0;a<this.valueHex.byteLength;a++)o[a]=r[a];return o[0]&=127,fi(o,8)-n}function Bp(r){let e=r<0?r*-1:r,t=128;for(let n=1;n<8;n++){if(e<=t){if(r<0){let s=t-e,a=Un(s,8,n),c=new Uint8Array(a);return c[0]|=128,a}let i=Un(e,8,n),o=new Uint8Array(i);if(o[0]&128){let s=i.slice(0),a=new Uint8Array(s);i=new ArrayBuffer(i.byteLength+1),o=new Uint8Array(i);for(let c=0;c<s.byteLength;c++)o[c+1]=a[c];o[0]=0}return i}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function Ap(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 pt(r,e){let t=r.toString(10);if(e<t.length)return"";let n=e-t.length,i=new Array(n);for(let s=0;s<n;s++)i[s]="0";return i.join("").concat(t)}var Y_=Math.log(2);function qa(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function kh(r){let e=0,t=0;for(let i=0;i<r.length;i++){let o=r[i];e+=o.byteLength}let n=new Uint8Array(e);for(let i=0;i<r.length;i++){let o=r[i];n.set(new Uint8Array(o),t),t+=o.byteLength}return n.buffer}function Xr(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 os=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return kh(this.items)}},is=[new Uint8Array([1])],Ip="0123456789";var lo="",er=new ArrayBuffer(0),Rh=new Uint8Array(0),ss="EndOfContent",_p="OCTET STRING",kp="BIT STRING";function Zr(r){var e;return e=class extends r{constructor(...n){var i;super(...n);let o=n[0]||{};this.isHexOnly=(i=o.isHexOnly)!==null&&i!==void 0?i:!1,this.valueHexView=o.valueHex?se.BufferSourceConverter.toUint8Array(o.valueHex):Rh}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(n){this.valueHexView=new Uint8Array(n)}fromBER(n,i,o){let s=n instanceof ArrayBuffer?new Uint8Array(n):n;if(!Xr(this,s,i,o))return-1;let a=i+o;return this.valueHexView=s.subarray(i,a),this.valueHexView.length?(this.blockLength=o,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",er)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:se.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var jr=class{constructor({blockLength:e=0,error:t=lo,warnings:n=[],valueBeforeDecode:i=Rh}={}){this.blockLength=e,this.error=t,this.warnings=n,this.valueBeforeDecodeView=se.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:se.Convert.ToHex(this.valueBeforeDecodeView)}}};jr.NAME="baseBlock";var tt=class extends jr{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'")}};tt.NAME="valueBlock";var Ga=class extends Zr(jr){constructor({idBlock:e={}}={}){var t,n,i,o;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?se.BufferSourceConverter.toUint8Array(e.valueHex):Rh,this.tagClass=(n=e.tagClass)!==null&&n!==void 0?n:-1,this.tagNumber=(i=e.tagNumber)!==null&&i!==void 0?i:-1,this.isConstructed=(o=e.isConstructed)!==null&&o!==void 0?o:!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",er}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let i=new Uint8Array(1);if(!e){let o=this.tagNumber;o&=31,t|=o,i[0]=t}return i.buffer}if(!this.isHexOnly){let i=Un(this.tagNumber,7),o=new Uint8Array(i),s=i.byteLength,a=new Uint8Array(s+1);if(a[0]=t|31,!e){for(let c=0;c<s-1;c++)a[c+1]=o[c]|128;a[s]=o[s-1]}return a.buffer}let n=new Uint8Array(this.valueHexView.byteLength+1);if(n[0]=t|31,!e){let i=this.valueHexView;for(let o=0;o<i.length-1;o++)n[o+1]=i[o]|128;n[this.valueHexView.byteLength]=i[i.length-1]}return n.buffer}fromBER(e,t,n){let i=se.BufferSourceConverter.toUint8Array(e);if(!Xr(this,i,t,n))return-1;let o=i.subarray(t,t+n);if(o.length===0)return this.error="Zero buffer length",-1;switch(o[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=(o[0]&32)===32,this.isHexOnly=!1;let a=o[0]&31;if(a!==31)this.tagNumber=a,this.blockLength=1;else{let c=1,u=this.valueHexView=new Uint8Array(255),l=255;for(;o[c]&128;){if(u[c-1]=o[c]&127,c++,c>=o.length)return this.error="End of input reached before message was fully decoded",-1;if(c===l){l+=255;let p=new Uint8Array(l);for(let d=0;d<u.length;d++)p[d]=u[d];u=this.valueHexView=new Uint8Array(l)}}this.blockLength=c+1,u[c-1]=o[c]&127;let h=new Uint8Array(c);for(let p=0;p<c;p++)h[p]=u[p];u=this.valueHexView=new Uint8Array(c),u.set(h),this.blockLength<=9?this.tagNumber=fi(u,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}}};Ga.NAME="identificationBlock";var ja=class extends jr{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=se.BufferSourceConverter.toUint8Array(e);if(!Xr(this,i,t,n))return-1;let o=i.subarray(t,t+n);if(o.length===0)return this.error="Zero buffer length",-1;if(o[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=o[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(o[0]&128),this.longFormUsed===!1)return this.length=o[0],this.blockLength=1,t+this.blockLength;let s=o[0]&127;if(s>8)return this.error="Too big integer",-1;if(s+1>o.length)return this.error="End of input reached before message was fully decoded",-1;let a=t+1,c=i.subarray(a,a+s);return c[s-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=fi(c,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+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=Un(this.length,8);if(i.byteLength>127)return this.error="Too big length",er;if(t=new ArrayBuffer(i.byteLength+1),e)return t;let o=new Uint8Array(i);n=new Uint8Array(t),n[0]=i.byteLength|128;for(let s=0;s<i.byteLength;s++)n[s+1]=o[s];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}}};ja.NAME="lengthBlock";var $={},Ge=class extends jr{constructor({name:e=lo,optional:t=!1,primitiveSchema:n,...i}={},o){super(i),this.name=e,this.optional=t,n&&(this.primitiveSchema=n),this.idBlock=new Ga(i),this.lenBlock=new ja(i),this.valueBlock=o?new o(i):new tt(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 os;t||Rp(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 o=this.valueBlock.toBER(e);this.lenBlock.length=o.byteLength;let s=this.lenBlock.toBER(e);n.write(s),n.write(o)}return t?er: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():se.Convert.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${se.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 Ap(t,n)}};Ge.NAME="BaseBlock";function Rp(r){if(r instanceof $.Constructed)for(let e of r.valueBlock.value)Rp(e)&&(r.lenBlock.isIndefiniteForm=!0);return!!r.lenBlock.isIndefiniteForm}var Wa=class extends Ge{constructor({value:e=lo,...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}'`}};Wa.NAME="BaseStringBlock";var Ya=class extends Zr(tt){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};Ya.NAME="PrimitiveValueBlock";var Tp,Xa=class extends Ge{constructor(e={}){super(e,Ya),this.idBlock.isConstructed=!1}};Tp=Xa;$.Primitive=Tp;Xa.NAME="PRIMITIVE";function A3(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 Rc(r,e=0,t=r.length){let n=e,i=new Ge({},tt),o=new jr;if(!Xr(o,r,e,t))return i.error=o.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=Ge;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=$.EndOfContent;break;case 1:c=$.Boolean;break;case 2:c=$.Integer;break;case 3:c=$.BitString;break;case 4:c=$.OctetString;break;case 5:c=$.Null;break;case 6:c=$.ObjectIdentifier;break;case 10:c=$.Enumerated;break;case 12:c=$.Utf8String;break;case 13:c=$.RelativeObjectIdentifier;break;case 14:c=$.TIME;break;case 15:return i.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:i};case 16:c=$.Sequence;break;case 17:c=$.Set;break;case 18:c=$.NumericString;break;case 19:c=$.PrintableString;break;case 20:c=$.TeletexString;break;case 21:c=$.VideotexString;break;case 22:c=$.IA5String;break;case 23:c=$.UTCTime;break;case 24:c=$.GeneralizedTime;break;case 25:c=$.GraphicString;break;case 26:c=$.VisibleString;break;case 27:c=$.GeneralString;break;case 28:c=$.UniversalString;break;case 29:c=$.CharacterString;break;case 30:c=$.BmpString;break;case 31:c=$.DATE;break;case 32:c=$.TimeOfDay;break;case 33:c=$.DateTime;break;case 34:c=$.Duration;break;default:{let u=i.idBlock.isConstructed?new $.Constructed:new $.Primitive;u.idBlock=i.idBlock,u.lenBlock=i.lenBlock,u.warnings=i.warnings,i=u}}break;case 2:case 3:case 4:default:c=i.idBlock.isConstructed?$.Constructed:$.Primitive}return i=A3(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 uo(r){if(!r.byteLength){let e=new Ge({},tt);return e.error="Input buffer has zero length",{offset:-1,result:e}}return Rc(se.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength)}function I3(r,e){return r?1:e}var yr=class extends tt{constructor({value:e=[],isIndefiniteForm:t=!1,...n}={}){super(n),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,n){let i=se.BufferSourceConverter.toUint8Array(e);if(!Xr(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 o=t;for(;I3(this.isIndefiniteForm,n)>0;){let s=Rc(i,o,n);if(s.offset===-1)return this.error=s.result.error,this.warnings.concat(s.result.warnings),-1;if(o=s.offset,this.blockLength+=s.result.blockLength,n-=s.result.blockLength,this.value.push(s.result),this.isIndefiniteForm&&s.result.constructor.NAME===ss)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===ss?this.value.pop():this.warnings.push("No EndOfContent block encoded")),o}toBER(e,t){let n=t||new os;for(let i=0;i<this.value.length;i++)this.value[i].toBER(e,n);return t?er:n.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};yr.NAME="ConstructedValueBlock";var Cp,Ln=class extends Ge{constructor(e={}){super(e,yr),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(`
|
|
13
4
|
`).map(i=>` ${i}`).join(`
|
|
14
5
|
`));let t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
|
|
15
6
|
${e.join(`
|
|
16
|
-
`)}`:`${t} :`}};ky=fi;$.Constructed=ky;fi.NAME="CONSTRUCTED";var ql=class extends ft{fromBER(e,t,n){return t}toBER(e){return br}};ql.override="EndOfContentValueBlock";var Iy,Kl=class extends it{constructor(e={}){super(e,ql),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};Iy=Kl;$.EndOfContent=Iy;Kl.NAME=ka;var _y,hi=class extends it{constructor(e={}){super(e,ft),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(e,t,n){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=n,t+n>e.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):t+n}toBER(e,t){let n=new ArrayBuffer(2);if(!e){let i=new Uint8Array(n);i[0]=5,i[1]=0}return t&&t.write(n),n}onAsciiEncoding(){return`${this.constructor.NAME}`}};_y=hi;$.Null=_y;hi.NAME="NULL";var Gl=class extends vn(ft){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=pe.BufferSourceConverter.toUint8Array(t.valueHex):this.valueHexView=new Uint8Array(1),e&&(this.value=e)}get value(){for(let e of this.valueHexView)if(e>0)return!0;return!1}set value(e){this.valueHexView[0]=e?255:0}fromBER(e,t,n){let i=pe.BufferSourceConverter.toUint8Array(e);return bn(this,i,t,n)?(this.valueHexView=i.subarray(t,t+n),n>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,nh.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};Gl.NAME="BooleanValueBlock";var Ty,Wl=class extends it{constructor(e={}){super(e,Gl),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};Ty=Wl;$.Boolean=Ty;Wl.NAME="BOOLEAN";var Yl=class extends vn(Vr){constructor({isConstructed:e=!1,...t}={}){super(t),this.isConstructed=e}fromBER(e,t,n){let i=0;if(this.isConstructed){if(this.isHexOnly=!1,i=Vr.prototype.fromBER.call(this,e,t,n),i===-1)return i;for(let o=0;o<this.value.length;o++){let s=this.value[o].constructor.NAME;if(s===ka){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==Ey)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,i=super.fromBER(e,t,n),this.blockLength=n;return i}toBER(e,t){return this.isConstructed?Vr.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};Yl.NAME="OctetStringValueBlock";var Cy,yn=class r extends it{constructor({idBlock:e={},lenBlock:t={},...n}={}){var i,o;(i=n.isConstructed)!==null&&i!==void 0||(n.isConstructed=!!(!((o=n.value)===null||o===void 0)&&o.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},Yl),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(e,t,n){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,n===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),t;if(!this.valueBlock.isConstructed){let o=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+n);try{if(o.byteLength){let s=Au(o,0,o.byteLength);s.offset!==-1&&s.offset===n&&(this.valueBlock.value=[s.result])}}catch{}}return super.fromBER(e,t,n)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?fi.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${pe.Convert.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;let e=[];for(let t of this.valueBlock.value)t instanceof r&&e.push(t.valueBlock.valueHexView);return pe.BufferSourceConverter.concat(e)}};Cy=yn;$.OctetString=Cy;yn.NAME=Ey;var Xl=class extends vn(Vr){constructor({unusedBits:e=0,isConstructed:t=!1,...n}={}){super(n),this.unusedBits=e,this.isConstructed=t,this.blockLength=this.valueHexView.byteLength}fromBER(e,t,n){if(!n)return t;let i=-1;if(this.isConstructed){if(i=Vr.prototype.fromBER.call(this,e,t,n),i===-1)return i;for(let a of this.value){let c=a.constructor.NAME;if(c===ka){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==Ay)return this.error="BIT STRING may consists of BIT STRINGs only",-1;let u=a.valueBlock;if(this.unusedBits>0&&u.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=u.unusedBits}return i}let o=pe.BufferSourceConverter.toUint8Array(e);if(!bn(this,o,t,n))return-1;let s=o.subarray(t,t+n);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){let a=s.subarray(1);try{if(a.byteLength){let c=Au(a,0,a.byteLength);c.offset!==-1&&c.offset===n-1&&(this.value=[c.result])}}catch{}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,t+n}toBER(e,t){if(this.isConstructed)return Vr.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return br;let n=new Uint8Array(this.valueHexView.length+1);return n[0]=this.unusedBits,n.set(this.valueHexView,1),n.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}};Xl.NAME="BitStringValueBlock";var Ry,ns=class extends it{constructor({idBlock:e={},lenBlock:t={},...n}={}){var i,o;(i=n.isConstructed)!==null&&i!==void 0||(n.isConstructed=!!(!((o=n.value)===null||o===void 0)&&o.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},Xl),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(e,t,n){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(e,t,n)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return fi.prototype.onAsciiEncoding.call(this);{let e=[],t=this.valueBlock.valueHexView;for(let i of t)e.push(i.toString(2).padStart(8,"0"));let n=e.join("");return`${this.constructor.NAME} : ${n.substring(0,n.length-this.valueBlock.unusedBits)}`}}};Ry=ns;$.BitString=Ry;ns.NAME=Ay;var Uy;function wB(r,e){let t=new Uint8Array([0]),n=new Uint8Array(r),i=new Uint8Array(e),o=n.slice(0),s=o.length-1,a=i.slice(0),c=a.length-1,u=0,l=c<s?s:c,p=0;for(let m=l;m>=0;m--,p++){switch(!0){case p<a.length:u=o[s-p]+a[c-p]+t[0];break;default:u=o[s-p]+t[0]}switch(t[0]=u/10,!0){case p>=o.length:o=Fl(new Uint8Array([u%10]),o);break;default:o[s-p]=u%10}}return t[0]>0&&(o=Fl(t,o)),o}function vy(r){if(r>=Sa.length)for(let e=Sa.length;e<=r;e++){let t=new Uint8Array([0]),n=Sa[e-1].slice(0);for(let i=n.length-1;i>=0;i--){let o=new Uint8Array([(n[i]<<1)+t[0]]);t[0]=o[0]/10,n[i]=o[0]%10}t[0]>0&&(n=Fl(t,n)),Sa.push(n)}return Sa[r]}function bB(r,e){let t=0,n=new Uint8Array(r),i=new Uint8Array(e),o=n.slice(0),s=o.length-1,a=i.slice(0),c=a.length-1,u,l=0;for(let p=c;p>=0;p--,l++)switch(u=o[s-l]-a[c-l]-t,!0){case u<0:t=1,o[s-l]=u+10;break;default:t=0,o[s-l]=u}if(t>0)for(let p=s-c+1;p>=0;p--,l++)if(u=o[s-l]-t,u<0)t=1,o[s-l]=u+10;else{t=0,o[s-l]=u;break}return o.slice()}var Ia=class extends vn(ft){constructor({value:e,...t}={}){super(t),this._valueDec=0,t.valueHex&&this.setValueHex(),e!==void 0&&(this.valueDec=e)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=nh.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(yy(e))}get valueDec(){return this._valueDec}fromDER(e,t,n,i=0){let o=this.fromBER(e,t,n);if(o===-1)return o;let s=this.valueHexView;return s[0]===0&&s[1]&128?this.valueHexView=s.subarray(1):i!==0&&s.length<i&&(i-s.length>1&&(i=s.length+1),this.valueHexView=s.subarray(i-s.length)),o}toDER(e=!1){let t=this.valueHexView;switch(!0){case(t[0]&128)!==0:{let n=new Uint8Array(this.valueHexView.length+1);n[0]=0,n.set(t,1),this.valueHexView=n}break;case(t[0]===0&&(t[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(e)}fromBER(e,t,n){let i=super.fromBER(e,t,n);return i===-1||this.setValueHex(),i}toBER(e){return e?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){let e=this.valueHexView.length*8-1,t=new Uint8Array(this.valueHexView.length*8/3),n=0,i,o=this.valueHexView,s="",a=!1;for(let c=o.byteLength-1;c>=0;c--){i=o[c];for(let u=0;u<8;u++){if((i&1)===1)switch(n){case e:t=bB(vy(n),t),s="-";break;default:t=wB(t,vy(n))}n++,i>>=1}}for(let c=0;c<t.length;c++)t[c]&&(a=!0),a&&(s+=by.charAt(t[c]));return a===!1&&(s+=by.charAt(0)),s}};Uy=Ia;Ia.NAME="IntegerValueBlock";Object.defineProperty(Uy.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var Ny,qe=class r extends it{constructor(e={}){super(e,Ia),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return zl(),BigInt(this.valueBlock.toString())}static fromBigInt(e){zl();let t=BigInt(e),n=new Ba,i=t.toString(16).replace(/^-/,""),o=new Uint8Array(pe.Convert.FromHex(i));if(t<0){let a=new Uint8Array(o.length+(o[0]&128?1:0));a[0]|=128;let u=BigInt(`0x${pe.Convert.ToHex(a)}`)+t,l=pe.BufferSourceConverter.toUint8Array(pe.Convert.FromHex(u.toString(16)));l[0]|=128,n.write(l)}else o[0]&128&&n.write(new Uint8Array([0])),n.write(o);return new r({valueHex:n.final()})}convertToDER(){let e=new r({valueHex:this.valueBlock.valueHexView});return e.valueBlock.toDER(),e}convertFromDER(){return new r({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}};Ny=qe;$.Integer=Ny;qe.NAME="INTEGER";var Dy,Jl=class extends qe{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};Dy=Jl;$.Enumerated=Dy;Jl.NAME="ENUMERATED";var _a=class extends vn(ft){constructor({valueDec:e=-1,isFirstSid:t=!1,...n}={}){super(n),this.valueDec=e,this.isFirstSid=t}fromBER(e,t,n){if(!n)return t;let i=pe.BufferSourceConverter.toUint8Array(e);if(!bn(this,i,t,n))return-1;let o=i.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=o[a]&127,this.blockLength++,!!(o[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,o[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=to(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){zl();let t=BigInt(e).toString(2);for(;t.length%7;)t="0"+t;let n=new Uint8Array(t.length/7);for(let i=0;i<n.length;i++)n[i]=parseInt(t.slice(i*7,i*7+7),2)+(i+1<n.length?128:0);this.fromBER(n.buffer,0,n.length)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,o=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)o[s]=i[s]|128;return o[this.blockLength-1]=i[this.blockLength-1],o.buffer}let t=di(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",br;let n=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),o=t.byteLength-1;for(let s=0;s<o;s++)n[s]=i[s]|128;n[o]=i[o]}return n}toString(){let e="";if(this.isHexOnly)e=pe.Convert.ToHex(this.valueHexView);else if(this.isFirstSid){let t=this.valueDec;this.valueDec<=39?e="0.":this.valueDec<=79?(e="1.",t-=40):(e="2.",t-=80),e+=t.toString()}else e=this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}};_a.NAME="sidBlock";var Zl=class extends ft{constructor({value:e=is,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let i=t;for(;n>0;){let o=new _a;if(i=o.fromBER(e,i,n),i===-1)return this.blockLength=0,this.error=o.error,i;this.value.length===0&&(o.isFirstSid=!0),this.blockLength+=o.blockLength,n-=o.blockLength,this.value.push(o)}return i}toBER(e){let t=[];for(let n=0;n<this.value.length;n++){let i=this.value[n].toBER(e);if(i.byteLength===0)return this.error=this.value[n].error,br;t.push(i)}return ih(t)}fromString(e){this.value=[];let t=0,n=0,i="",o=!1;do if(n=e.indexOf(".",t),n===-1?i=e.substring(t):i=e.substring(t,n),t=n+1,o){let s=this.value[0],a=0;switch(s.valueDec){case 0:break;case 1:a=40;break;case 2:a=80;break;default:this.value=[];return}let c=parseInt(i,10);if(isNaN(c))return;s.valueDec=c+a,o=!1}else{let s=new _a;if(i>Number.MAX_SAFE_INTEGER){zl();let a=BigInt(i);s.valueBigInt=a}else if(s.valueDec=parseInt(i,10),isNaN(s.valueDec))return;this.value.length||(s.isFirstSid=!0,o=!0),this.value.push(s)}while(n!==-1)}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let i=this.value[n].toString();n!==0&&(e=`${e}.`),t?(i=`{${i}}`,this.value[n].isFirstSid?e=`2.{${i} - 80}`:e+=i):e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};Zl.NAME="ObjectIdentifierValueBlock";var Ly,wr=class extends it{constructor(e={}){super(e,Zl),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};Ly=wr;$.ObjectIdentifier=Ly;wr.NAME="OBJECT IDENTIFIER";var Ta=class extends vn(xn){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;let i=pe.BufferSourceConverter.toUint8Array(e);if(!bn(this,i,t,n))return-1;let o=i.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=o[a]&127,this.blockLength++,!!(o[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,o[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=to(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,o=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)o[s]=i[s]|128;return o[this.blockLength-1]=i[this.blockLength-1],o.buffer}let t=di(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",br;let n=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),o=t.byteLength-1;for(let s=0;s<o;s++)n[s]=i[s]|128;n[o]=i[o]}return n.buffer}toString(){let e="";return this.isHexOnly?e=pe.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};Ta.NAME="relativeSidBlock";var Ql=class extends ft{constructor({value:e=is,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let i=t;for(;n>0;){let o=new Ta;if(i=o.fromBER(e,i,n),i===-1)return this.blockLength=0,this.error=o.error,i;this.blockLength+=o.blockLength,n-=o.blockLength,this.value.push(o)}return i}toBER(e,t){let n=[];for(let i=0;i<this.value.length;i++){let o=this.value[i].toBER(e);if(o.byteLength===0)return this.error=this.value[i].error,br;n.push(o)}return ih(n)}fromString(e){this.value=[];let t=0,n=0,i="";do{n=e.indexOf(".",t),n===-1?i=e.substring(t):i=e.substring(t,n),t=n+1;let o=new Ta;if(o.valueDec=parseInt(i,10),isNaN(o.valueDec))return!0;this.value.push(o)}while(n!==-1);return!0}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let i=this.value[n].toString();n!==0&&(e=`${e}.`),t&&(i=`{${i}}`),e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};Ql.NAME="RelativeObjectIdentifierValueBlock";var Py,eu=class extends it{constructor(e={}){super(e,Ql),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};Py=eu;$.RelativeObjectIdentifier=Py;eu.NAME="RelativeObjectIdentifier";var Oy,Je=class extends fi{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};Oy=Je;$.Sequence=Oy;Je.NAME="SEQUENCE";var Fy,tu=class extends fi{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};Fy=tu;$.Set=Fy;tu.NAME="SET";var ru=class extends vn(ft){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=is}toJSON(){return{...super.toJSON(),value:this.value}}};ru.NAME="StringValueBlock";var nu=class extends ru{};nu.NAME="SimpleStringValueBlock";var yt=class extends jl{constructor({...e}={}){super(e,nu)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,pe.BufferSourceConverter.toUint8Array(e))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t);for(let i=0;i<t;i++)n[i]=e.charCodeAt(i);this.valueBlock.value=e}};yt.NAME="SIMPLE STRING";var iu=class extends yt{fromBuffer(e){this.valueBlock.valueHexView=pe.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=pe.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=pe.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(pe.Convert.FromUtf8String(e)),this.valueBlock.value=e}};iu.NAME="Utf8StringValueBlock";var zy,wn=class extends iu{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};zy=wn;$.Utf8String=zy;wn.NAME="UTF8String";var ou=class extends yt{fromBuffer(e){this.valueBlock.value=pe.Convert.ToUtf16String(e),this.valueBlock.valueHexView=pe.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(pe.Convert.FromUtf16String(e))}};ou.NAME="BmpStringValueBlock";var Vy,su=class extends ou{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};Vy=su;$.BmpString=Vy;su.NAME="BMPString";var au=class extends yt{fromBuffer(e){let t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0),n=new Uint8Array(t);for(let i=0;i<n.length;i+=4)n[i]=n[i+3],n[i+1]=n[i+2],n[i+2]=0,n[i+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let i=0;i<t;i++){let o=di(e.charCodeAt(i),8),s=new Uint8Array(o);if(s.length>4)continue;let a=4-s.length;for(let c=s.length-1;c>=0;c--)n[i*4+c+a]=s[c]}this.valueBlock.value=e}};au.NAME="UniversalStringValueBlock";var My,cu=class extends au{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};My=cu;$.UniversalString=My;cu.NAME="UniversalString";var jy,lu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};jy=lu;$.NumericString=jy;lu.NAME="NumericString";var $y,uu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};$y=uu;$.PrintableString=$y;uu.NAME="PrintableString";var Hy,pu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};Hy=pu;$.TeletexString=Hy;pu.NAME="TeletexString";var qy,du=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};qy=du;$.VideotexString=qy;du.NAME="VideotexString";var Ky,fu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};Ky=fu;$.IA5String=Ky;fu.NAME="IA5String";var Gy,hu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};Gy=hu;$.GraphicString=Gy;hu.NAME="GraphicString";var Wy,Ca=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};Wy=Ca;$.VisibleString=Wy;Ca.NAME="VisibleString";var Yy,mu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};Yy=mu;$.GeneralString=Yy;mu.NAME="GeneralString";var Xy,gu=class extends yt{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};Xy=gu;$.CharacterString=Xy;gu.NAME="CharacterString";var Jy,Ra=class extends Ca{constructor({value:e,valueDate:t,...n}={}){if(super(n),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,e){this.fromString(e),this.valueBlock.valueHexView=new Uint8Array(e.length);for(let i=0;i<e.length;i++)this.valueBlock.valueHexView[i]=e.charCodeAt(i)}t&&(this.fromDate(t),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,pe.BufferSourceConverter.toUint8Array(e)))}toBuffer(){let e=this.toString(),t=new ArrayBuffer(e.length),n=new Uint8Array(t);for(let i=0;i<e.length;i++)n[i]=e.charCodeAt(i);return t}fromDate(e){this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){let n=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(e);if(n===null){this.error="Wrong input string for conversion";return}let i=parseInt(n[1],10);i>=50?this.year=1900+i:this.year=2e3+i,this.month=parseInt(n[2],10),this.day=parseInt(n[3],10),this.hour=parseInt(n[4],10),this.minute=parseInt(n[5],10),this.second=parseInt(n[6],10)}toString(e="iso"){if(e==="iso"){let t=new Array(7);return t[0]=_t(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=_t(this.month,2),t[2]=_t(this.day,2),t[3]=_t(this.hour,2),t[4]=_t(this.minute,2),t[5]=_t(this.second,2),t[6]="Z",t.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}};Jy=Ra;$.UTCTime=Jy;Ra.NAME="UTCTime";var Zy,xu=class extends Ra{constructor(e={}){var t;super(e),(t=this.millisecond)!==null&&t!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e),this.millisecond=e.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(e){let t=!1,n="",i="",o=0,s,a=0,c=0;if(e[e.length-1]==="Z")n=e.substring(0,e.length-1),t=!0;else{let p=new Number(e[e.length-1]);if(isNaN(p.valueOf()))throw new Error("Wrong input string for conversion");n=e}if(t){if(n.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(n.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let p=1,m=n.indexOf("+"),d="";if(m===-1&&(m=n.indexOf("-"),p=-1),m!==-1){if(d=n.substring(m+1),n=n.substring(0,m),d.length!==2&&d.length!==4)throw new Error("Wrong input string for conversion");let f=parseInt(d.substring(0,2),10);if(isNaN(f.valueOf()))throw new Error("Wrong input string for conversion");if(a=p*f,d.length===4){if(f=parseInt(d.substring(2,4),10),isNaN(f.valueOf()))throw new Error("Wrong input string for conversion");c=p*f}}}let u=n.indexOf(".");if(u===-1&&(u=n.indexOf(",")),u!==-1){let p=new Number(`0${n.substring(u)}`);if(isNaN(p.valueOf()))throw new Error("Wrong input string for conversion");o=p.valueOf(),i=n.substring(0,u)}else i=n;switch(!0){case i.length===8:if(s=/(\d{4})(\d{2})(\d{2})/ig,u!==-1)throw new Error("Wrong input string for conversion");break;case i.length===10:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let p=60*o;this.minute=Math.floor(p),p=60*(p-this.minute),this.second=Math.floor(p),p=1e3*(p-this.second),this.millisecond=Math.floor(p)}break;case i.length===12:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let p=60*o;this.second=Math.floor(p),p=1e3*(p-this.second),this.millisecond=Math.floor(p)}break;case i.length===14:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let p=1e3*o;this.millisecond=Math.floor(p)}break;default:throw new Error("Wrong input string for conversion")}let l=s.exec(i);if(l===null)throw new Error("Wrong input string for conversion");for(let p=1;p<l.length;p++)switch(p){case 1:this.year=parseInt(l[p],10);break;case 2:this.month=parseInt(l[p],10);break;case 3:this.day=parseInt(l[p],10);break;case 4:this.hour=parseInt(l[p],10)+a;break;case 5:this.minute=parseInt(l[p],10)+c;break;case 6:this.second=parseInt(l[p],10);break;default:throw new Error("Wrong input string for conversion")}if(t===!1){let p=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=p.getUTCFullYear(),this.month=p.getUTCMonth(),this.day=p.getUTCDay(),this.hour=p.getUTCHours(),this.minute=p.getUTCMinutes(),this.second=p.getUTCSeconds(),this.millisecond=p.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){let t=[];return t.push(_t(this.year,4)),t.push(_t(this.month,2)),t.push(_t(this.day,2)),t.push(_t(this.hour,2)),t.push(_t(this.minute,2)),t.push(_t(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(_t(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};Zy=xu;$.GeneralizedTime=Zy;xu.NAME="GeneralizedTime";var Qy,yu=class extends wn{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};Qy=yu;$.DATE=Qy;yu.NAME="DATE";var ew,wu=class extends wn{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};ew=wu;$.TimeOfDay=ew;wu.NAME="TimeOfDay";var tw,bu=class extends wn{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};tw=bu;$.DateTime=tw;bu.NAME="DateTime";var rw,vu=class extends wn{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};rw=vu;$.Duration=rw;vu.NAME="Duration";var nw,Eu=class extends wn{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};nw=Eu;$.TIME=nw;Eu.NAME="TIME";function EB(r){let{result:e}=os(r),t=e.valueBlock.value;return{n:ie(Mr(t[1].toBigInt()),"base64url"),e:ie(Mr(t[2].toBigInt()),"base64url"),d:ie(Mr(t[3].toBigInt()),"base64url"),p:ie(Mr(t[4].toBigInt()),"base64url"),q:ie(Mr(t[5].toBigInt()),"base64url"),dp:ie(Mr(t[6].toBigInt()),"base64url"),dq:ie(Mr(t[7].toBigInt()),"base64url"),qi:ie(Mr(t[8].toBigInt()),"base64url"),kty:"RSA",alg:"RS256"}}function AB(r){if(r.n==null||r.e==null||r.d==null||r.p==null||r.q==null||r.dp==null||r.dq==null||r.qi==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new Je({value:[new qe({value:0}),qe.fromBigInt(jr(Z(r.n,"base64url"))),qe.fromBigInt(jr(Z(r.e,"base64url"))),qe.fromBigInt(jr(Z(r.d,"base64url"))),qe.fromBigInt(jr(Z(r.p,"base64url"))),qe.fromBigInt(jr(Z(r.q,"base64url"))),qe.fromBigInt(jr(Z(r.dp,"base64url"))),qe.fromBigInt(jr(Z(r.dq,"base64url"))),qe.fromBigInt(jr(Z(r.qi,"base64url")))]}).toBER();return new Uint8Array(t,0,t.byteLength)}function SB(r){let{result:e}=os(r),t=e.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:ie(Mr(t[0].toBigInt()),"base64url"),e:ie(Mr(t[1].toBigInt()),"base64url")}}function BB(r){if(r.n==null||r.e==null)throw new O("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new Je({value:[new Je({value:[new wr({value:"1.2.840.113549.1.1.1"}),new hi]}),new ns({valueHex:new Je({value:[qe.fromBigInt(jr(Z(r.n,"base64url"))),qe.fromBigInt(jr(Z(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(t,0,t.byteLength)}function Mr(r){let e=r.toString(16);e.length%2>0&&(e=`0${e}`);let t=e.length/2,n=new Uint8Array(t),i=0,o=0;for(;i<t;)n[i]=parseInt(e.slice(o,o+2),16),i+=1,o+=2;return n}function jr(r){let e=[];return r.forEach(function(t){let n=t.toString(16);n.length%2>0&&(n=`0${n}`),e.push(n)}),BigInt("0x"+e.join(""))}var kB=16,sh=32,ah=1e4;async function IB(r,e){let t=xt.get(),i=new Je({value:[new qe({value:0}),new Je({value:[new wr({value:"1.2.840.113549.1.1.1"}),new hi]}),new yn({valueHex:r.marshal()})]}).toBER(),o=new Uint8Array(i,0,i.byteLength),s=eo(kB),a=await th(Jo,e,s,{c:ah,dkLen:sh}),c=eo(16),u=await t.subtle.importKey("raw",a,"AES-CBC",!1,["encrypt"]),l=await t.subtle.encrypt({name:"AES-CBC",iv:c},u,o),p=new Je({value:[new yn({valueHex:s}),new qe({value:ah}),new qe({value:sh}),new Je({value:[new wr({value:"1.2.840.113549.2.11"}),new hi]})]}),m=new Je({value:[new wr({value:"1.2.840.113549.1.5.13"}),new Je({value:[new Je({value:[new wr({value:"1.2.840.113549.1.5.12"}),p]}),new Je({value:[new wr({value:"2.16.840.1.101.3.4.1.42"}),new yn({valueHex:c})]})]})]}),f=new Je({value:[m,new yn({valueHex:l})]}).toBER(),h=new Uint8Array(f,0,f.byteLength);return["-----BEGIN ENCRYPTED PRIVATE KEY-----",...ie(h,"base64pad").split(/(.{64})/).filter(Boolean),"-----END ENCRYPTED PRIVATE KEY-----"].join(`
|
|
17
|
-
`)}async function _B(r,e){let t=xt.get(),n;if(r.includes("-----BEGIN ENCRYPTED PRIVATE KEY-----")){let i=Z(r.replace("-----BEGIN ENCRYPTED PRIVATE KEY-----","").replace("-----END ENCRYPTED PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:o}=os(i),{iv:s,salt:a,iterations:c,keySize:u,cipherText:l}=TB(o),p=await th(Jo,e,a,{c,dkLen:u}),m=await t.subtle.importKey("raw",p,"AES-CBC",!1,["decrypt"]),d=Ua(await t.subtle.decrypt({name:"AES-CBC",iv:s},m,l)),{result:f}=os(d);n=iw(f)}else if(r.includes("-----BEGIN PRIVATE KEY-----")){let i=Z(r.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:o}=os(i);n=iw(o)}else throw new O("Could not parse private key from PEM data","ERR_INVALID_PARAMETERS");return ch(n)}function TB(r){let e=r.valueBlock.value[0];if(e.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.13")throw new O("Only pkcs5PBES2 encrypted private keys are supported","ERR_INVALID_PARAMS");let n=e.valueBlock.value[1].valueBlock.value[0];if(n.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.12")throw new O("Only pkcs5PBKDF2 key derivation functions are supported","ERR_INVALID_PARAMS");let o=n.valueBlock.value[1],s=Ua(o.valueBlock.value[0].getValue()),a=ah,c=sh;if(o.valueBlock.value.length===3)a=Number(o.valueBlock.value[1].toBigInt()),c=Number(o.valueBlock.value[2].toBigInt());else if(o.valueBlock.value.length===2)throw new O("Could not derive key size and iterations from PEM file - please use @libp2p/rsa to re-import your key","ERR_INVALID_PARAMS");let u=e.valueBlock.value[1].valueBlock.value[1],l=u.valueBlock.value[0].toString();if(l!=="OBJECT IDENTIFIER : 1.2.840.113549.3.7"){if(l!=="OBJECT IDENTIFIER : 1.3.14.3.2.7"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.2"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.22"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.42")throw new O("Only AES-CBC encryption schemes are supported","ERR_INVALID_PARAMS")}}}}let p=Ua(u.valueBlock.value[1].getValue());return{cipherText:Ua(r.valueBlock.value[1].getValue()),salt:s,iterations:a,keySize:c,iv:p}}function iw(r){return Ua(r.valueBlock.value[2].getValue())}function Ua(r){return new Uint8Array(r,0,r.byteLength)}async function ow(r){let e=await xt.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:r,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),t=await cw(e);return{privateKey:t[0],publicKey:t[1]}}async function lh(r){let t=[await xt.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await CB(r)],n=await cw({privateKey:t[0],publicKey:t[1]});return{privateKey:n[0],publicKey:n[1]}}async function sw(r,e){let t=await xt.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await xt.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},t,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function aw(r,e,t){let n=await xt.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return xt.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,t instanceof Uint8Array?t:t.subarray())}async function cw(r){if(r.privateKey==null||r.publicKey==null)throw new O("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([xt.get().subtle.exportKey("jwk",r.privateKey),xt.get().subtle.exportKey("jwk",r.publicKey)])}async function CB(r){return xt.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function Su(r){if(r.kty!=="RSA")throw new O("invalid key type","ERR_INVALID_KEY_TYPE");if(r.n==null)throw new O("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Z(r.n,"base64url").length*8}var Da=8192,Na=class{_key;constructor(e){this._key=e}verify(e,t){return aw(this._key,t,e)}marshal(){return mi.jwkToPkix(this._key)}get bytes(){return Fr.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}hash(){let e=ae.digest(this.bytes);return or(e)?e.then(({bytes:t})=>t):e.bytes}},ss=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return eo(16)}sign(e){return sw(this._key,e)}get public(){if(this._publicKey==null)throw new O("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new Na(this._publicKey)}marshal(){return mi.jwkToPkcs1(this._key)}get bytes(){return zr.encode({Type:Be.RSA,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}hash(){let e=ae.digest(this.bytes);return or(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return ie(e,"base58btc")}async export(e,t="pkcs-8"){if(t==="pkcs-8")return mi.exportToPem(this,e);if(t==="libp2p-key")return es(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};async function ch(r){let e=mi.pkcs1ToJwk(r);if(Su(e)>Da)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await lh(e);return new ss(t.privateKey,t.publicKey)}function UB(r){let e=mi.pkixToJwk(r);if(Su(e)>Da)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new Na(e)}async function NB(r){if(Su(r)>Da)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await lh(r);return new ss(e.privateKey,e.publicKey)}async function DB(r){if(r>Da)throw new O("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await ow(r);return new ss(e.privateKey,e.publicKey)}var mh={};j(mh,{Secp256k1PrivateKey:()=>Pa,Secp256k1PublicKey:()=>La,generateKeyPair:()=>YB,unmarshalSecp256k1PrivateKey:()=>GB,unmarshalSecp256k1PublicKey:()=>WB});var LB=(r,e,t)=>r&e^~r&t,PB=(r,e,t)=>r&e^r&t^e&t,OB=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),gi=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),xi=new Uint32Array(64),ph=class extends Xo{constructor(){super(64,32,8,!1),this.A=gi[0]|0,this.B=gi[1]|0,this.C=gi[2]|0,this.D=gi[3]|0,this.E=gi[4]|0,this.F=gi[5]|0,this.G=gi[6]|0,this.H=gi[7]|0}get(){let{A:e,B:t,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,t,n,i,o,s,a,c]}set(e,t,n,i,o,s,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,t){for(let p=0;p<16;p++,t+=4)xi[p]=e.getUint32(t,!1);for(let p=16;p<64;p++){let m=xi[p-15],d=xi[p-2],f=gr(m,7)^gr(m,18)^m>>>3,h=gr(d,17)^gr(d,19)^d>>>10;xi[p]=h+xi[p-7]+f+xi[p-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:u,H:l}=this;for(let p=0;p<64;p++){let m=gr(a,6)^gr(a,11)^gr(a,25),d=l+m+LB(a,c,u)+OB[p]+xi[p]|0,h=(gr(n,2)^gr(n,13)^gr(n,22))+PB(n,i,o)|0;l=u,u=c,c=a,a=s+d|0,s=o,o=i,i=n,n=d+h|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,i,o,s,a,c,u,l)}roundClean(){xi.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var lw=Sl(()=>new ph);function FB(r){let e=va(r);Or(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:n,a:i}=e;if(t){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:zB,hexToBytes:VB}=Il,ro={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=ro;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:zB(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=ro,t=typeof r=="string"?VB(r):r;if(!xr(t))throw new Error("ui8a expected");let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=ro._parseInt(t.subarray(2)),{d:s,l:a}=ro._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(r){let e=u=>Number.parseInt(u[0],16)&8?"00"+u:u,t=u=>{let l=u.toString(16);return l.length&1?`0${l}`:l},n=e(t(r.s)),i=e(t(r.r)),o=n.length/2,s=i.length/2,a=t(o),c=t(s);return`30${t(s+o+4)}02${c}${i}02${a}${n}`}},En=BigInt(0),ar=BigInt(1),EV=BigInt(2),uw=BigInt(3),AV=BigInt(4);function MB(r){let e=FB(r),{Fp:t}=e,n=e.toBytes||((f,h,x)=>{let g=h.toAffine();return fn(Uint8Array.from([4]),t.toBytes(g.x),t.toBytes(g.y))}),i=e.fromBytes||(f=>{let h=f.subarray(1),x=t.fromBytes(h.subarray(0,t.BYTES)),g=t.fromBytes(h.subarray(t.BYTES,2*t.BYTES));return{x,y:g}});function o(f){let{a:h,b:x}=e,g=t.sqr(f),y=t.mul(g,f);return t.add(t.add(y,t.mul(f,h)),x)}if(!t.eql(t.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(f){return typeof f=="bigint"&&En<f&&f<e.n}function a(f){if(!s(f))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(f){let{allowedPrivateKeyLengths:h,nByteLength:x,wrapPrivateKey:g,n:y}=e;if(h&&typeof f!="bigint"){if(xr(f)&&(f=pn(f)),typeof f!="string"||!h.includes(f.length))throw new Error("Invalid key");f=f.padStart(x*2,"0")}let w;try{w=typeof f=="bigint"?f:dn(Re("private key",f,x))}catch{throw new Error(`private key must be ${x} bytes, hex or bigint, not ${typeof f}`)}return g&&(w=be(w,y)),a(w),w}let u=new Map;function l(f){if(!(f instanceof p))throw new Error("ProjectivePoint expected")}class p{constructor(h,x,g){if(this.px=h,this.py=x,this.pz=g,h==null||!t.isValid(h))throw new Error("x required");if(x==null||!t.isValid(x))throw new Error("y required");if(g==null||!t.isValid(g))throw new Error("z required")}static fromAffine(h){let{x,y:g}=h||{};if(!h||!t.isValid(x)||!t.isValid(g))throw new Error("invalid affine point");if(h instanceof p)throw new Error("projective point not allowed");let y=w=>t.eql(w,t.ZERO);return y(x)&&y(g)?p.ZERO:new p(x,g,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(h){let x=t.invertBatch(h.map(g=>g.pz));return h.map((g,y)=>g.toAffine(x[y])).map(p.fromAffine)}static fromHex(h){let x=p.fromAffine(i(Re("pointHex",h)));return x.assertValidity(),x}static fromPrivateKey(h){return p.BASE.multiply(c(h))}_setWindowSize(h){this._WINDOW_SIZE=h,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:h,y:x}=this.toAffine();if(!t.isValid(h)||!t.isValid(x))throw new Error("bad point: x or y not FE");let g=t.sqr(x),y=o(h);if(!t.eql(g,y))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:h}=this.toAffine();if(t.isOdd)return!t.isOdd(h);throw new Error("Field doesn't support isOdd")}equals(h){l(h);let{px:x,py:g,pz:y}=this,{px:w,py:E,pz:B}=h,S=t.eql(t.mul(x,B),t.mul(w,y)),b=t.eql(t.mul(g,B),t.mul(E,y));return S&&b}negate(){return new p(this.px,t.neg(this.py),this.pz)}double(){let{a:h,b:x}=e,g=t.mul(x,uw),{px:y,py:w,pz:E}=this,B=t.ZERO,S=t.ZERO,b=t.ZERO,v=t.mul(y,y),k=t.mul(w,w),U=t.mul(E,E),R=t.mul(y,w);return R=t.add(R,R),b=t.mul(y,E),b=t.add(b,b),B=t.mul(h,b),S=t.mul(g,U),S=t.add(B,S),B=t.sub(k,S),S=t.add(k,S),S=t.mul(B,S),B=t.mul(R,B),b=t.mul(g,b),U=t.mul(h,U),R=t.sub(v,U),R=t.mul(h,R),R=t.add(R,b),b=t.add(v,v),v=t.add(b,v),v=t.add(v,U),v=t.mul(v,R),S=t.add(S,v),U=t.mul(w,E),U=t.add(U,U),v=t.mul(U,R),B=t.sub(B,v),b=t.mul(U,k),b=t.add(b,b),b=t.add(b,b),new p(B,S,b)}add(h){l(h);let{px:x,py:g,pz:y}=this,{px:w,py:E,pz:B}=h,S=t.ZERO,b=t.ZERO,v=t.ZERO,k=e.a,U=t.mul(e.b,uw),R=t.mul(x,w),M=t.mul(g,E),L=t.mul(y,B),ce=t.add(x,g),_=t.add(w,E);ce=t.mul(ce,_),_=t.add(R,M),ce=t.sub(ce,_),_=t.add(x,y);let D=t.add(w,B);return _=t.mul(_,D),D=t.add(R,L),_=t.sub(_,D),D=t.add(g,y),S=t.add(E,B),D=t.mul(D,S),S=t.add(M,L),D=t.sub(D,S),v=t.mul(k,_),S=t.mul(U,L),v=t.add(S,v),S=t.sub(M,v),v=t.add(M,v),b=t.mul(S,v),M=t.add(R,R),M=t.add(M,R),L=t.mul(k,L),_=t.mul(U,_),M=t.add(M,L),L=t.sub(R,L),L=t.mul(k,L),_=t.add(_,L),R=t.mul(M,_),b=t.add(b,R),R=t.mul(D,_),S=t.mul(ce,S),S=t.sub(S,R),R=t.mul(ce,M),v=t.mul(D,v),v=t.add(v,R),new p(S,b,v)}subtract(h){return this.add(h.negate())}is0(){return this.equals(p.ZERO)}wNAF(h){return d.wNAFCached(this,u,h,x=>{let g=t.invertBatch(x.map(y=>y.pz));return x.map((y,w)=>y.toAffine(g[w])).map(p.fromAffine)})}multiplyUnsafe(h){let x=p.ZERO;if(h===En)return x;if(a(h),h===ar)return this;let{endo:g}=e;if(!g)return d.unsafeLadder(this,h);let{k1neg:y,k1:w,k2neg:E,k2:B}=g.splitScalar(h),S=x,b=x,v=this;for(;w>En||B>En;)w&ar&&(S=S.add(v)),B&ar&&(b=b.add(v)),v=v.double(),w>>=ar,B>>=ar;return y&&(S=S.negate()),E&&(b=b.negate()),b=new p(t.mul(b.px,g.beta),b.py,b.pz),S.add(b)}multiply(h){a(h);let x=h,g,y,{endo:w}=e;if(w){let{k1neg:E,k1:B,k2neg:S,k2:b}=w.splitScalar(x),{p:v,f:k}=this.wNAF(B),{p:U,f:R}=this.wNAF(b);v=d.constTimeNegate(E,v),U=d.constTimeNegate(S,U),U=new p(t.mul(U.px,w.beta),U.py,U.pz),g=v.add(U),y=k.add(R)}else{let{p:E,f:B}=this.wNAF(x);g=E,y=B}return p.normalizeZ([g,y])[0]}multiplyAndAddUnsafe(h,x,g){let y=p.BASE,w=(B,S)=>S===En||S===ar||!B.equals(y)?B.multiplyUnsafe(S):B.multiply(S),E=w(this,x).add(w(h,g));return E.is0()?void 0:E}toAffine(h){let{px:x,py:g,pz:y}=this,w=this.is0();h==null&&(h=w?t.ONE:t.inv(y));let E=t.mul(x,h),B=t.mul(g,h),S=t.mul(y,h);if(w)return{x:t.ZERO,y:t.ZERO};if(!t.eql(S,t.ONE))throw new Error("invZ was invalid");return{x:E,y:B}}isTorsionFree(){let{h,isTorsionFree:x}=e;if(h===ar)return!0;if(x)return x(p,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h,clearCofactor:x}=e;return h===ar?this:x?x(p,this):this.multiplyUnsafe(e.h)}toRawBytes(h=!0){return this.assertValidity(),n(p,this,h)}toHex(h=!0){return pn(this.toRawBytes(h))}}p.BASE=new p(e.Gx,e.Gy,t.ONE),p.ZERO=new p(t.ZERO,t.ONE,t.ZERO);let m=e.nBitLength,d=Cl(p,e.endo?Math.ceil(m/2):m);return{CURVE:e,ProjectivePoint:p,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function jB(r){let e=va(r);return Or(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function pw(r){let e=jB(r),{Fp:t,n}=e,i=t.BYTES+1,o=2*t.BYTES+1;function s(_){return En<_&&_<t.ORDER}function a(_){return be(_,n)}function c(_){return _l(_,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:l,weierstrassEquation:p,isWithinCurveOrder:m}=MB({...e,toBytes(_,D,J){let N=D.toAffine(),T=t.toBytes(N.x),H=fn;return J?H(Uint8Array.from([D.hasEvenY()?2:3]),T):H(Uint8Array.from([4]),T,t.toBytes(N.y))},fromBytes(_){let D=_.length,J=_[0],N=_.subarray(1);if(D===i&&(J===2||J===3)){let T=dn(N);if(!s(T))throw new Error("Point is not on curve");let H=p(T),Y=t.sqrt(H),Q=(Y&ar)===ar;return(J&1)===1!==Q&&(Y=t.neg(Y)),{x:T,y:Y}}else if(D===o&&J===4){let T=t.fromBytes(N.subarray(0,t.BYTES)),H=t.fromBytes(N.subarray(t.BYTES,2*t.BYTES));return{x:T,y:H}}else throw new Error(`Point of length ${D} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),d=_=>pn(pi(_,e.nByteLength));function f(_){let D=n>>ar;return _>D}function h(_){return f(_)?a(-_):_}let x=(_,D,J)=>dn(_.slice(D,J));class g{constructor(D,J,N){this.r=D,this.s=J,this.recovery=N,this.assertValidity()}static fromCompact(D){let J=e.nByteLength;return D=Re("compactSignature",D,J*2),new g(x(D,0,J),x(D,J,2*J))}static fromDER(D){let{r:J,s:N}=ro.toSig(Re("DER",D));return new g(J,N)}assertValidity(){if(!m(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!m(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(D){return new g(this.r,this.s,D)}recoverPublicKey(D){let{r:J,s:N,recovery:T}=this,H=b(Re("msgHash",D));if(T==null||![0,1,2,3].includes(T))throw new Error("recovery id invalid");let Y=T===2||T===3?J+e.n:J;if(Y>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let Q=T&1?"03":"02",se=u.fromHex(Q+d(Y)),le=c(Y),we=a(-H*le),de=a(N*le),he=u.BASE.multiplyAndAddUnsafe(se,we,de);if(!he)throw new Error("point at infinify");return he.assertValidity(),he}hasHighS(){return f(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return Xi(this.toDERHex())}toDERHex(){return ro.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return Xi(this.toCompactHex())}toCompactHex(){return d(this.r)+d(this.s)}}let y={isValidPrivateKey(_){try{return l(_),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{let _=Gf(e.n);return oy(e.randomBytes(_),e.n)},precompute(_=8,D=u.BASE){return D._setWindowSize(_),D.multiply(BigInt(3)),D}};function w(_,D=!0){return u.fromPrivateKey(_).toRawBytes(D)}function E(_){let D=xr(_),J=typeof _=="string",N=(D||J)&&_.length;return D?N===i||N===o:J?N===2*i||N===2*o:_ instanceof u}function B(_,D,J=!0){if(E(_))throw new Error("first arg must be private key");if(!E(D))throw new Error("second arg must be public key");return u.fromHex(D).multiply(l(_)).toRawBytes(J)}let S=e.bits2int||function(_){let D=dn(_),J=_.length*8-e.nBitLength;return J>0?D>>BigInt(J):D},b=e.bits2int_modN||function(_){return a(S(_))},v=ba(e.nBitLength);function k(_){if(typeof _!="bigint")throw new Error("bigint expected");if(!(En<=_&&_<v))throw new Error(`bigint expected < 2^${e.nBitLength}`);return pi(_,e.nByteLength)}function U(_,D,J=R){if(["recovered","canonical"].some(_e=>_e in J))throw new Error("sign() legacy options not supported");let{hash:N,randomBytes:T}=e,{lowS:H,prehash:Y,extraEntropy:Q}=J;H==null&&(H=!0),_=Re("msgHash",_),Y&&(_=Re("prehashed msgHash",N(_)));let se=b(_),le=l(D),we=[k(le),k(se)];if(Q!=null){let _e=Q===!0?T(t.BYTES):Q;we.push(Re("extraEntropy",_e))}let de=fn(...we),he=se;function je(_e){let tt=S(_e);if(!m(tt))return;let rt=c(tt),We=u.BASE.multiply(tt).toAffine(),ut=a(We.x);if(ut===En)return;let cn=a(rt*a(he+ut*le));if(cn===En)return;let Mi=(We.x===ut?0:2)|Number(We.y&ar),ca=cn;return H&&f(cn)&&(ca=h(cn),Mi^=1),new g(ut,ca,Mi)}return{seed:de,k2sig:je}}let R={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function L(_,D,J=R){let{seed:N,k2sig:T}=U(_,D,J),H=e;return $f(H.hash.outputLen,H.nByteLength,H.hmac)(N,T)}u.BASE._setWindowSize(8);function ce(_,D,J,N=M){let T=_;if(D=Re("msgHash",D),J=Re("publicKey",J),"strict"in N)throw new Error("options.strict was renamed to lowS");let{lowS:H,prehash:Y}=N,Q,se;try{if(typeof T=="string"||xr(T))try{Q=g.fromDER(T)}catch(We){if(!(We instanceof ro.Err))throw We;Q=g.fromCompact(T)}else if(typeof T=="object"&&typeof T.r=="bigint"&&typeof T.s=="bigint"){let{r:We,s:ut}=T;Q=new g(We,ut)}else throw new Error("PARSE");se=u.fromHex(J)}catch(We){if(We.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(H&&Q.hasHighS())return!1;Y&&(D=e.hash(D));let{r:le,s:we}=Q,de=b(D),he=c(we),je=a(de*he),_e=a(le*he),tt=u.BASE.multiplyAndAddUnsafe(se,je,_e)?.toAffine();return tt?a(tt.x)===le:!1}return{CURVE:e,getPublicKey:w,getSharedSecret:B,sign:L,verify:ce,ProjectivePoint:u,Signature:g,utils:y}}function $B(r){return{hash:r,hmac:(e,...t)=>Aa(r,e,Al(...t)),randomBytes:Yo}}function dw(r,e){let t=n=>pw({...r,...$B(n)});return Object.freeze({...t(e),create:t})}var mw=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),fw=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),HB=BigInt(1),dh=BigInt(2),hw=(r,e)=>(r+e/dh)/e;function qB(r){let e=mw,t=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,l=u*u*r%e,p=Se(l,t,e)*l%e,m=Se(p,t,e)*l%e,d=Se(m,dh,e)*u%e,f=Se(d,i,e)*d%e,h=Se(f,o,e)*f%e,x=Se(h,a,e)*h%e,g=Se(x,c,e)*x%e,y=Se(g,a,e)*h%e,w=Se(y,t,e)*l%e,E=Se(w,s,e)*f%e,B=Se(E,n,e)*u%e,S=Se(B,dh,e);if(!fh.eql(fh.sqr(S),r))throw new Error("Cannot find square root");return S}var fh=Tl(mw,void 0,void 0,{sqrt:qB}),vr=dw({a:BigInt(0),b:BigInt(7),Fp:fh,n:fw,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=fw,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-HB*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=t,s=BigInt("0x100000000000000000000000000000000"),a=hw(o*r,e),c=hw(-n*r,e),u=be(r-a*t-c*i,e),l=be(-a*n-c*o,e),p=u>s,m=l>s;if(p&&(u=e-u),m&&(l=e-l),u>s||l>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:p,k1:u,k2neg:m,k2:l}}}},lw),UV=BigInt(0);var NV=vr.ProjectivePoint;function gw(){return vr.utils.randomPrivateKey()}function xw(r,e){let t=ae.digest(e instanceof Uint8Array?e:e.subarray());if(or(t))return t.then(({digest:n})=>vr.sign(n,r).toDERRawBytes()).catch(n=>{throw new O(String(n),"ERR_INVALID_INPUT")});try{return vr.sign(t.digest,r).toDERRawBytes()}catch(n){throw new O(String(n),"ERR_INVALID_INPUT")}}function yw(r,e,t){let n=ae.digest(t instanceof Uint8Array?t:t.subarray());if(or(n))return n.then(({digest:i})=>vr.verify(e,i,r)).catch(i=>{throw new O(String(i),"ERR_INVALID_INPUT")});try{return vr.verify(e,n.digest,r)}catch(i){throw new O(String(i),"ERR_INVALID_INPUT")}}function ww(r){return vr.ProjectivePoint.fromHex(r).toRawBytes(!0)}function bw(r){try{vr.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}function hh(r){try{vr.ProjectivePoint.fromHex(r)}catch(e){throw new O(String(e),"ERR_INVALID_PUBLIC_KEY")}}function vw(r){try{return vr.getPublicKey(r,!0)}catch(e){throw new O(String(e),"ERR_INVALID_PRIVATE_KEY")}}var La=class{_key;constructor(e){hh(e),this._key=e}verify(e,t){return yw(this._key,t,e)}marshal(){return ww(this._key)}get bytes(){return Fr.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}async hash(){let e=ae.digest(this.bytes),t;return or(e)?{bytes:t}=await e:t=e.bytes,t}},Pa=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t??vw(e),bw(this._key),hh(this._publicKey)}sign(e){return xw(this._key,e)}get public(){return new La(this._publicKey)}marshal(){return this._key}get bytes(){return zr.encode({Type:Be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return ge(this.bytes,e.bytes)}hash(){let e=ae.digest(this.bytes);return or(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return ie(e,"base58btc")}async export(e,t="libp2p-key"){if(t==="libp2p-key")return es(this.bytes,e);throw new O(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function GB(r){return new Pa(r)}function WB(r){return new La(r)}async function YB(){let r=gw();return new Pa(r)}var no={rsa:uh,ed25519:eh,secp256k1:mh};function Ew(r){let e=Object.keys(no).join(" / ");return new O(`invalid or unsupported key type ${r}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function gh(r){let e=Fr.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return no.rsa.unmarshalRsaPublicKey(t);case Be.Ed25519:return no.ed25519.unmarshalEd25519PublicKey(t);case Be.Secp256k1:return no.secp256k1.unmarshalSecp256k1PublicKey(t);default:throw Ew(e.Type??"unknown")}}async function Aw(r){let e=zr.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case Be.RSA:return no.rsa.unmarshalRsaPrivateKey(t);case Be.Ed25519:return no.ed25519.unmarshalEd25519PrivateKey(t);case Be.Secp256k1:return no.secp256k1.unmarshalSecp256k1PrivateKey(t);default:throw Ew(e.Type??"RSA")}}var Ch=ee(Ce(),1);var An="/",Sw=new TextEncoder().encode(An),Bu=Sw[0],Xe=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=Z(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]!==Bu)throw new Error("Invalid key")}toString(e="utf8"){return ie(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(An))}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=Sw),this._buf[0]!==Bu){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Bu,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Bu;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(An).slice(1)}type(){return XB(this.baseNamespace())}name(){return JB(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(An)||(e+=An),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(An):new r(e.slice(0,-1).join(An))}child(e){return this.toString()===An?e:e.toString()===An?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(),...ZB(e.map(t=>t.namespaces()))])}};function XB(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function JB(r){let e=r.split(":");return e[e.length-1]}function ZB(r){return[].concat(...r)}var Mb=ee(ku(),1);var Bw="ERR_IPNS_EXPIRED_RECORD",Oa="ERR_UNRECOGNIZED_VALIDITY",kw="ERR_SIGNATURE_CREATION",Sn="ERR_SIGNATURE_VERIFICATION";var yh="ERR_UNDEFINED_PARAMETER",Iw="ERR_INVALID_RECORD_DATA",_w="ERR_INVALID_VALUE",Tw="ERR_INVALID_EMBEDDED_KEY",Cw="ERR_MISSING_PRIVATE_KEY",Rw="ERR_RECORD_TOO_LARGE";var ot;(function(r){let e;(function(i){i.EOL="EOL"})(e=r.ValidityType||(r.ValidityType={}));let t;(function(i){i[i.EOL=0]="EOL"})(t||(t={})),function(i){i.codec=()=>Gi(t)}(e=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=nr((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.value!=null&&(o.uint32(10),o.bytes(i.value)),i.signatureV1!=null&&(o.uint32(18),o.bytes(i.signatureV1)),i.validityType!=null&&(o.uint32(24),r.ValidityType.codec().encode(i.validityType,o)),i.validity!=null&&(o.uint32(34),o.bytes(i.validity)),i.sequence!=null&&(o.uint32(40),o.uint64(i.sequence)),i.ttl!=null&&(o.uint32(48),o.uint64(i.ttl)),i.pubKey!=null&&(o.uint32(58),o.bytes(i.pubKey)),i.signatureV2!=null&&(o.uint32(66),o.bytes(i.signatureV2)),i.data!=null&&(o.uint32(74),o.bytes(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.value=i.bytes();break;case 2:s.signatureV1=i.bytes();break;case 3:s.validityType=r.ValidityType.codec().decode(i);break;case 4:s.validity=i.bytes();break;case 5:s.sequence=i.uint64();break;case 6:s.ttl=i.uint64();break;case 7:s.pubKey=i.bytes();break;case 8:s.signatureV2=i.bytes();break;case 9:s.data=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>rr(i,r.codec()),r.decode=i=>er(i,r.codec())})(ot||(ot={}));var QB=["string","number","bigint","symbol"],ek=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function Uw(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(QB.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(tk(r))return"Buffer";let t=rk(r);return t||"Object"}function tk(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function rk(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(ek.includes(e))return e}var A=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};A.uint=new A(0,"uint",!0);A.negint=new A(1,"negint",!0);A.bytes=new A(2,"bytes",!0);A.string=new A(3,"string",!0);A.array=new A(4,"array",!1);A.map=new A(5,"map",!1);A.tag=new A(6,"tag",!1);A.float=new A(7,"float",!0);A.false=new A(7,"false",!0);A.true=new A(7,"true",!0);A.null=new A(7,"null",!0);A.undefined=new A(7,"undefined",!0);A.break=new A(7,"break",!0);var C=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var as=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",nk=new TextDecoder,ik=new TextEncoder;function Iu(r){return as&&globalThis.Buffer.isBuffer(r)}function Fa(r){return r instanceof Uint8Array?Iu(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var Pw=as?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):Dw(r,e,t):(r,e,t)=>t-e>64?nk.decode(r.subarray(e,t)):Dw(r,e,t),_u=as?r=>r.length>64?globalThis.Buffer.from(r):Nw(r):r=>r.length>64?ik.encode(r):Nw(r),$r=r=>Uint8Array.from(r),cs=as?(r,e,t)=>Iu(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),Ow=as?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),Fa(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},Fw=as?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function zw(r,e){if(Iu(r)&&Iu(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function Nw(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function Dw(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,u,l;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(l=(i&31)<<6|a&63,l>127&&(o=l));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(l=(i&15)<<12|(a&63)<<6|c&63,l>2047&&(l<55296||l>57343)&&(o=l));break;case 4:a=r[e+1],c=r[e+2],u=r[e+3],(a&192)===128&&(c&192)===128&&(u&192)===128&&(l=(i&15)<<18|(a&63)<<12|(c&63)<<6|u&63,l>65535&&l<1114112&&(o=l))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return bh(n)}var Lw=4096;function bh(r){let e=r.length;if(e<=Lw)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=Lw));return t}var ok=256,za=class{constructor(e=ok){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=Fw(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=cs(n,0,this.cursor)}else t=Ow(this.chunks,this.cursor);return e&&this.reset(),t}};var q="CBOR decode error:",Bn="CBOR encode error:",Va=[];Va[23]=1;Va[24]=2;Va[25]=3;Va[26]=5;Va[27]=9;function kn(r,e,t){if(r.length-e<t)throw new Error(`${q} not enough data for type`)}var Ze=[24,256,65536,4294967296,BigInt("18446744073709551616")];function jt(r,e,t){kn(r,e,1);let n=r[e];if(t.strict===!0&&n<Ze[0])throw new Error(`${q} integer encoded in more bytes than necessary (strict decode)`);return n}function $t(r,e,t){kn(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<Ze[1])throw new Error(`${q} integer encoded in more bytes than necessary (strict decode)`);return n}function Ht(r,e,t){kn(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<Ze[2])throw new Error(`${q} integer encoded in more bytes than necessary (strict decode)`);return n}function qt(r,e,t){kn(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<Ze[3])throw new Error(`${q} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${q} integers outside of the safe integer range are not supported`)}function Vw(r,e,t,n){return new C(A.uint,jt(r,e+1,n),2)}function Mw(r,e,t,n){return new C(A.uint,$t(r,e+1,n),3)}function jw(r,e,t,n){return new C(A.uint,Ht(r,e+1,n),5)}function $w(r,e,t,n){return new C(A.uint,qt(r,e+1,n),9)}function cr(r,e){return st(r,0,e.value)}function st(r,e,t){if(t<Ze[0]){let n=Number(t);r.push([e|n])}else if(t<Ze[1]){let n=Number(t);r.push([e|24,n])}else if(t<Ze[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<Ze[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<Ze[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${q} encountered BigInt larger than allowable range`)}}cr.encodedSize=function(e){return st.encodedSize(e.value)};st.encodedSize=function(e){return e<Ze[0]?1:e<Ze[1]?2:e<Ze[2]?3:e<Ze[3]?5:9};cr.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Hw(r,e,t,n){return new C(A.negint,-1-jt(r,e+1,n),2)}function qw(r,e,t,n){return new C(A.negint,-1-$t(r,e+1,n),3)}function Kw(r,e,t,n){return new C(A.negint,-1-Ht(r,e+1,n),5)}var vh=BigInt(-1),Gw=BigInt(1);function Ww(r,e,t,n){let i=qt(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new C(A.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${q} integers outside of the safe integer range are not supported`);return new C(A.negint,vh-BigInt(i),9)}function Tu(r,e){let t=e.value,n=typeof t=="bigint"?t*vh-Gw:t*-1-1;st(r,e.type.majorEncoded,n)}Tu.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*vh-Gw:t*-1-1;return n<Ze[0]?1:n<Ze[1]?2:n<Ze[2]?3:n<Ze[3]?5:9};Tu.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function Ma(r,e,t,n){kn(r,e,t+n);let i=cs(r,e+t,e+t+n);return new C(A.bytes,i,t+n)}function Yw(r,e,t,n){return Ma(r,e,1,t)}function Xw(r,e,t,n){return Ma(r,e,2,jt(r,e+1,n))}function Jw(r,e,t,n){return Ma(r,e,3,$t(r,e+1,n))}function Zw(r,e,t,n){return Ma(r,e,5,Ht(r,e+1,n))}function Qw(r,e,t,n){let i=qt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${q} 64-bit integer bytes lengths not supported`);return Ma(r,e,9,i)}function Cu(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===A.string?_u(r.value):r.value),r.encodedBytes}function ls(r,e){let t=Cu(e);st(r,e.type.majorEncoded,t.length),r.push(t)}ls.encodedSize=function(e){let t=Cu(e);return st.encodedSize(t.length)+t.length};ls.compareTokens=function(e,t){return ak(Cu(e),Cu(t))};function ak(r,e){return r.length<e.length?-1:r.length>e.length?1:zw(r,e)}function ja(r,e,t,n,i){let o=t+n;kn(r,e,o);let s=new C(A.string,Pw(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=cs(r,e+t,e+o)),s}function eb(r,e,t,n){return ja(r,e,1,t,n)}function tb(r,e,t,n){return ja(r,e,2,jt(r,e+1,n),n)}function rb(r,e,t,n){return ja(r,e,3,$t(r,e+1,n),n)}function nb(r,e,t,n){return ja(r,e,5,Ht(r,e+1,n),n)}function ib(r,e,t,n){let i=qt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${q} 64-bit integer string lengths not supported`);return ja(r,e,9,i,n)}var ob=ls;function us(r,e,t,n){return new C(A.array,n,t)}function sb(r,e,t,n){return us(r,e,1,t)}function ab(r,e,t,n){return us(r,e,2,jt(r,e+1,n))}function cb(r,e,t,n){return us(r,e,3,$t(r,e+1,n))}function lb(r,e,t,n){return us(r,e,5,Ht(r,e+1,n))}function ub(r,e,t,n){let i=qt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${q} 64-bit integer array lengths not supported`);return us(r,e,9,i)}function pb(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${q} indefinite length items not allowed`);return us(r,e,1,1/0)}function Ru(r,e){st(r,A.array.majorEncoded,e.value)}Ru.compareTokens=cr.compareTokens;Ru.encodedSize=function(e){return st.encodedSize(e.value)};function ps(r,e,t,n){return new C(A.map,n,t)}function db(r,e,t,n){return ps(r,e,1,t)}function fb(r,e,t,n){return ps(r,e,2,jt(r,e+1,n))}function hb(r,e,t,n){return ps(r,e,3,$t(r,e+1,n))}function mb(r,e,t,n){return ps(r,e,5,Ht(r,e+1,n))}function gb(r,e,t,n){let i=qt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${q} 64-bit integer map lengths not supported`);return ps(r,e,9,i)}function xb(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${q} indefinite length items not allowed`);return ps(r,e,1,1/0)}function Uu(r,e){st(r,A.map.majorEncoded,e.value)}Uu.compareTokens=cr.compareTokens;Uu.encodedSize=function(e){return st.encodedSize(e.value)};function yb(r,e,t,n){return new C(A.tag,t,1)}function wb(r,e,t,n){return new C(A.tag,jt(r,e+1,n),2)}function bb(r,e,t,n){return new C(A.tag,$t(r,e+1,n),3)}function vb(r,e,t,n){return new C(A.tag,Ht(r,e+1,n),5)}function Eb(r,e,t,n){return new C(A.tag,qt(r,e+1,n),9)}function Nu(r,e){st(r,A.tag.majorEncoded,e.value)}Nu.compareTokens=cr.compareTokens;Nu.encodedSize=function(e){return st.encodedSize(e.value)};var fk=20,hk=21,mk=22,gk=23;function Ab(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${q} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new C(A.null,null,1):new C(A.undefined,void 0,1)}function Sb(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${q} indefinite length items not allowed`);return new C(A.break,void 0,1)}function Eh(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${q} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${q} Infinity values are not supported`)}return new C(A.float,r,e)}function Bb(r,e,t,n){return Eh(Ah(r,e+1),3,n)}function kb(r,e,t,n){return Eh(Sh(r,e+1),5,n)}function Ib(r,e,t,n){return Eh(Rb(r,e+1),9,n)}function Du(r,e,t){let n=e.value;if(n===!1)r.push([A.float.majorEncoded|fk]);else if(n===!0)r.push([A.float.majorEncoded|hk]);else if(n===null)r.push([A.float.majorEncoded|mk]);else if(n===void 0)r.push([A.float.majorEncoded|gk]);else{let i,o=!1;(!t||t.float64!==!0)&&(Tb(n),i=Ah(Er,1),n===i||Number.isNaN(n)?(Er[0]=249,r.push(Er.slice(0,3)),o=!0):(Cb(n),i=Sh(Er,1),n===i&&(Er[0]=250,r.push(Er.slice(0,5)),o=!0))),o||(xk(n),i=Rb(Er,1),Er[0]=251,r.push(Er.slice(0,9)))}}Du.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){Tb(n);let i=Ah(Er,1);if(n===i||Number.isNaN(n))return 3;if(Cb(n),i=Sh(Er,1),n===i)return 5}return 9};var _b=new ArrayBuffer(9),lr=new DataView(_b,1),Er=new Uint8Array(_b,0);function Tb(r){if(r===1/0)lr.setUint16(0,31744,!1);else if(r===-1/0)lr.setUint16(0,64512,!1);else if(Number.isNaN(r))lr.setUint16(0,32256,!1);else{lr.setFloat32(0,r);let e=lr.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)lr.setUint16(0,31744,!1);else if(t===0)lr.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?lr.setUint16(0,0):i<-14?lr.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):lr.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function Ah(r,e){if(r.length-e<2)throw new Error(`${q} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function Cb(r){lr.setFloat32(0,r,!1)}function Sh(r,e){if(r.length-e<4)throw new Error(`${q} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function xk(r){lr.setFloat64(0,r,!1)}function Rb(r,e){if(r.length-e<8)throw new Error(`${q} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Du.compareTokens=cr.compareTokens;function me(r,e,t){throw new Error(`${q} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Lu(r){return()=>{throw new Error(`${q} ${r}`)}}var F=[];for(let r=0;r<=23;r++)F[r]=me;F[24]=Vw;F[25]=Mw;F[26]=jw;F[27]=$w;F[28]=me;F[29]=me;F[30]=me;F[31]=me;for(let r=32;r<=55;r++)F[r]=me;F[56]=Hw;F[57]=qw;F[58]=Kw;F[59]=Ww;F[60]=me;F[61]=me;F[62]=me;F[63]=me;for(let r=64;r<=87;r++)F[r]=Yw;F[88]=Xw;F[89]=Jw;F[90]=Zw;F[91]=Qw;F[92]=me;F[93]=me;F[94]=me;F[95]=Lu("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)F[r]=eb;F[120]=tb;F[121]=rb;F[122]=nb;F[123]=ib;F[124]=me;F[125]=me;F[126]=me;F[127]=Lu("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)F[r]=sb;F[152]=ab;F[153]=cb;F[154]=lb;F[155]=ub;F[156]=me;F[157]=me;F[158]=me;F[159]=pb;for(let r=160;r<=183;r++)F[r]=db;F[184]=fb;F[185]=hb;F[186]=mb;F[187]=gb;F[188]=me;F[189]=me;F[190]=me;F[191]=xb;for(let r=192;r<=215;r++)F[r]=yb;F[216]=wb;F[217]=bb;F[218]=vb;F[219]=Eb;F[220]=me;F[221]=me;F[222]=me;F[223]=me;for(let r=224;r<=243;r++)F[r]=Lu("simple values are not supported");F[244]=me;F[245]=me;F[246]=me;F[247]=Ab;F[248]=Lu("simple values are not supported");F[249]=Bb;F[250]=kb;F[251]=Ib;F[252]=me;F[253]=me;F[254]=me;F[255]=Sb;var Ar=[];for(let r=0;r<24;r++)Ar[r]=new C(A.uint,r,1);for(let r=-1;r>=-24;r--)Ar[31-r]=new C(A.negint,r,1);Ar[64]=new C(A.bytes,new Uint8Array(0),1);Ar[96]=new C(A.string,"",1);Ar[128]=new C(A.array,0,1);Ar[160]=new C(A.map,0,1);Ar[244]=new C(A.false,!1,1);Ar[245]=new C(A.true,!0,1);Ar[246]=new C(A.null,null,1);function Ub(r){switch(r.type){case A.false:return $r([244]);case A.true:return $r([245]);case A.null:return $r([246]);case A.bytes:return r.value.length?void 0:$r([64]);case A.string:return r.value===""?$r([96]):void 0;case A.array:return r.value===0?$r([128]):void 0;case A.map:return r.value===0?$r([160]):void 0;case A.uint:return r.value<24?$r([Number(r.value)]):void 0;case A.negint:if(r.value>=-24)return $r([31-Number(r.value)])}}var wk={float64:!1,mapSorter:Ek,quickEncodeToken:Ub};function bk(){let r=[];return r[A.uint.major]=cr,r[A.negint.major]=Tu,r[A.bytes.major]=ls,r[A.string.major]=ob,r[A.array.major]=Ru,r[A.map.major]=Uu,r[A.tag.major]=Nu,r[A.float.major]=Du,r}var Nb=bk(),Bh=new za,Ou=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${Bn} object contains circular references`);return new r(t,e)}},yi={null:new C(A.null,null),undefined:new C(A.undefined,void 0),true:new C(A.true,!0),false:new C(A.false,!1),emptyArray:new C(A.array,0),emptyMap:new C(A.map,0)},wi={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new C(A.float,r):r>=0?new C(A.uint,r):new C(A.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new C(A.uint,r):new C(A.negint,r)},Uint8Array(r,e,t,n){return new C(A.bytes,r)},string(r,e,t,n){return new C(A.string,r)},boolean(r,e,t,n){return r?yi.true:yi.false},null(r,e,t,n){return yi.null},undefined(r,e,t,n){return yi.undefined},ArrayBuffer(r,e,t,n){return new C(A.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new C(A.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[yi.emptyArray,new C(A.break)]:yi.emptyArray;n=Ou.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=Pu(s,t,n);return t.addBreakTokens?[new C(A.array,r.length),i,new C(A.break)]:[new C(A.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[yi.emptyMap,new C(A.break)]:yi.emptyMap;n=Ou.createCheck(n,r);let a=[],c=0;for(let u of o)a[c++]=[Pu(u,t,n),Pu(i?r.get(u):r[u],t,n)];return vk(a,t),t.addBreakTokens?[new C(A.map,s),a,new C(A.break)]:[new C(A.map,s),a]}};wi.Map=wi.Object;wi.Buffer=wi.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))wi[`${r}Array`]=wi.DataView;function Pu(r,e={},t){let n=Uw(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||wi[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=wi[n];if(!o)throw new Error(`${Bn} unsupported type: ${n}`);return o(r,n,e,t)}function vk(r,e){e.mapSorter&&r.sort(e.mapSorter)}function Ek(r,e){let t=Array.isArray(r[0])?r[0][0]:r[0],n=Array.isArray(e[0])?e[0][0]:e[0];if(t.type!==n.type)return t.type.compare(n.type);let i=t.type.major,o=Nb[i].compareTokens(t,n);return o===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),o}function Db(r,e,t,n){if(Array.isArray(e))for(let i of e)Db(r,i,t,n);else t[e.type.major](r,e,n)}function kh(r,e,t){let n=Pu(r,t);if(!Array.isArray(n)&&t.quickEncodeToken){let i=t.quickEncodeToken(n);if(i)return i;let o=e[n.type.major];if(o.encodedSize){let s=o.encodedSize(n,t),a=new za(s);if(o(a,n,t),a.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${n} was wrong`);return Fa(a.chunks[0])}}return Bh.reset(),Db(Bh,n,e,t),Bh.toBytes(!0)}function bi(r,e){return e=Object.assign({},wk,e),kh(r,Nb,e)}var Ak={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Ih=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=Ar[e];if(t===void 0){let n=F[e];if(!n)throw new Error(`${q} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},$a=Symbol.for("DONE"),Fu=Symbol.for("BREAK");function Sk(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=Ha(e,t);if(o===Fu){if(r.value===1/0)break;throw new Error(`${q} got unexpected break to lengthed array`)}if(o===$a)throw new Error(`${q} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function Bk(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=Ha(e,t);if(a===Fu){if(r.value===1/0)break;throw new Error(`${q} got unexpected break to lengthed map`)}if(a===$a)throw new Error(`${q} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${q} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${q} found repeat map key "${a}"`);let c=Ha(e,t);if(c===$a)throw new Error(`${q} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function Ha(r,e){if(r.done())return $a;let t=r.next();if(t.type===A.break)return Fu;if(t.type.terminal)return t.value;if(t.type===A.array)return Sk(t,r,e);if(t.type===A.map)return Bk(t,r,e);if(t.type===A.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=Ha(r,e);return e.tags[t.value](n)}throw new Error(`${q} tag not supported (${t.value})`)}throw new Error("unsupported")}function _h(r,e){if(!(r instanceof Uint8Array))throw new Error(`${q} data to decode must be a Uint8Array`);e=Object.assign({},Ak,e);let t=e.tokenizer||new Ih(r,e),n=Ha(t,e);if(n===$a)throw new Error(`${q} did not find any content to decode`);if(n===Fu)throw new Error(`${q} got unexpected break`);return[n,r.subarray(t.pos())]}function Kt(r,e){let[t,n]=_h(r,e);if(n.length>0)throw new Error(`${q} too many terminals, data makes no sense`);return t}var Tt=ee(Ce(),1);var Lb=ue("ipns:utils"),Pb=Z("/ipns/"),kk=114,Ob=async(r,e)=>{if(e==null||r==null){let n=new Error("one or more of the provided parameters are not defined");throw Lb.error(n),(0,Tt.default)(n,yh)}let t;if(e.pubKey!=null){try{t=gh(e.pubKey)}catch(i){throw Lb.error(i),i}if(!(await C1(e.pubKey)).equals(r))throw(0,Tt.default)(new Error("Embedded public key did not match PeerID"),Tw)}else r.publicKey!=null&&(t=gh(r.publicKey));if(t!=null)return t;throw(0,Tt.default)(new Error("no public key is available"),yh)},Fb=(r,e,t)=>{let n=Z(e);return ze([r,t,n])},Vu=r=>{let e=Z("ipns-signature:");return ze([e,r])},In=r=>"signatureV1"in r?ot.encode({value:Z(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:Z(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):ot.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data});function wt(r){let e=ot.decode(r);if(e.sequence!=null&&(e.sequence=BigInt(e.sequence)),e.ttl!=null&&(e.ttl=BigInt(e.ttl)),e.signatureV2==null||e.data==null)throw(0,Tt.default)(new Error("missing data or signatureV2"),Sn);let t=Vb(e.data),n=Th(t.Value),i=ie(t.Validity);if(e.value!=null&&e.signatureV1!=null)return Ik(e),{value:n,validityType:ot.ValidityType.EOL,validity:i,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV1:e.signatureV1,signatureV2:e.signatureV2,data:e.data};if(e.signatureV2!=null)return{value:n,validityType:ot.ValidityType.EOL,validity:i,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}var ds=r=>ze([Pb,r.toBytes()]),fs=r=>wa(r.slice(Pb.length)),zb=(r,e,t,n,i)=>{let o;if(e===ot.ValidityType.EOL)o=0;else throw(0,Tt.default)(new Error("Unknown validity type"),Oa);return bi({Value:r,Validity:t,ValidityType:o,Sequence:n,TTL:i})},Vb=r=>{let e=Kt(r);if(e.ValidityType===0)e.ValidityType=ot.ValidityType.EOL;else throw(0,Tt.default)(new Error("Unknown validity type"),Oa);return Number.isInteger(e.Sequence)&&(e.Sequence=BigInt(e.Sequence)),Number.isInteger(e.TTL)&&(e.TTL=BigInt(e.TTL)),e},Th=r=>{if(r!=null){if($x(r))return`/ipns/${r.toCID().toString(ni)}`;if(r instanceof Uint8Array){let n=ie(r);n.startsWith("/")&&(r=n)}let e=r.toString().trim();if(e.startsWith("/")&&e.length>1)return e;let t=V.asCID(r);if(t!=null)return t.code===kk?`/ipns/${t.toString(ni)}`:`/ipfs/${t.toV1().toString()}`;try{return r instanceof Uint8Array?`/ipfs/${V.decode(r).toV1().toString()}`:`/ipfs/${V.parse(e).toV1().toString()}`}catch{}}throw(0,Tt.default)(new Error("Value must be a valid content path starting with /"),_w)},Ik=r=>{if(r.data==null)throw(0,Tt.default)(new Error("Record data is missing"),Iw);let e=Vb(r.data);if(!ge(e.Value,r.value??new Uint8Array(0)))throw(0,Tt.default)(new Error('Field "value" did not match between protobuf and CBOR'),Sn);if(!ge(e.Validity,r.validity??new Uint8Array(0)))throw(0,Tt.default)(new Error('Field "validity" did not match between protobuf and CBOR'),Sn);if(e.ValidityType!==r.validityType)throw(0,Tt.default)(new Error('Field "validityType" did not match between protobuf and CBOR'),Sn);if(e.Sequence!==r.sequence)throw(0,Tt.default)(new Error('Field "sequence" did not match between protobuf and CBOR'),Sn);if(e.TTL!==r.ttl)throw(0,Tt.default)(new Error('Field "ttl" did not match between protobuf and CBOR'),Sn)};var _k=ue("ipns"),Tk=It.code,Ck="/ipns/",yj=Ck.length,jb={v1Compatible:!0};async function $b(r,e,t,n,i=jb){let o=new Mb.default(Date.now()+Number(n)),s=ot.ValidityType.EOL,[a,c]=n.toString().split("."),u=BigInt(a)*BigInt(1e5)+BigInt(c??"0");return Rk(r,e,t,s,o.toString(),u,i)}var Rk=async(r,e,t,n,i,o,s=jb)=>{t=BigInt(t);let a=Z(i),c=Th(e),u=Z(c);if(r.privateKey==null)throw(0,Ch.default)(new Error("Missing private key"),Cw);let l=await Aw(r.privateKey),p=zb(u,n,a,t,o),m=Vu(p),d=await l.sign(m),f;if(r.publicKey!=null){let h=Ot(r.toBytes());(h.code!==Tk||!ge(r.publicKey,h.digest))&&(f=r.publicKey)}if(s.v1Compatible===!0){let h=await Uk(l,u,n,a),x={value:c,signatureV1:h,validity:i,validityType:n,sequence:t,ttl:o,signatureV2:d,data:p};return f!=null&&(x.pubKey=f),x}else{let h={value:c,validity:i,validityType:n,sequence:t,ttl:o,signatureV2:d,data:p};return f!=null&&(h.pubKey=f),h}};var Uk=async(r,e,t,n)=>{try{let i=Fb(e,t,n);return await r.sign(i)}catch(i){throw _k.error("record signature creation failed",i),(0,Ch.default)(new Error("record signature creation failed"),kw)}};var qa=ee(Ce(),1),Hb=ee(ku(),1);var Mu=ue("ipns:validator"),Nk=1024*10,Dk=async(r,e)=>{let t=wt(e),n;try{let i=Vu(t.data);n=await r.verify(i,t.signatureV2)}catch{n=!1}if(!n)throw Mu.error("record signature verification failed"),(0,qa.default)(new Error("record signature verification failed"),Sn);if(t.validityType===ot.ValidityType.EOL){if(Hb.default.fromString(t.validity).toDate().getTime()<Date.now())throw Mu.error("record has expired"),(0,qa.default)(new Error("record has expired"),Bw)}else if(t.validityType!=null)throw Mu.error("unrecognized validity type"),(0,qa.default)(new Error("unrecognized validity type"),Oa);Mu("ipns record for %s is valid",t.value)};async function ju(r,e){if(e.byteLength>Nk)throw(0,qa.default)(new Error("record too large"),Rw);let t=fs(r),n=wt(e),i=await Ob(t,n);await Dk(i,e)}async function*Ka(r){let e=/\r?\n/,t=new TextDecoder("utf8"),n="";for await(let i of r){typeof i=="string"&&(i=new TextEncoder().encode(i)),n+=t.decode(i,{stream:!0});let o=n.split(e);n=o.pop()??"";for(let s=0;s<o.length;s++)yield JSON.parse(o[s])}n+=t.decode(),n!==""&&(yield JSON.parse(n))}var Uh=ee(Kb(),1);var Wa=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},Nh=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Gb=r=>globalThis.DOMException===void 0?new Nh(r):new DOMException(r),Wb=r=>{let e=r.reason===void 0?Gb("This operation was aborted."):r.reason;return e instanceof Error?e:Gb(e)};function Ya(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((u,l)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:m}=e;m.aborted&&l(Wb(m)),m.addEventListener("abort",()=>{l(Wb(m))})}if(t===Number.POSITIVE_INFINITY){r.then(u,l);return}let p=new Wa;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(m){l(m)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?u():i instanceof Error?l(i):(p.message=i??`Promise timed out after ${t} milliseconds`,l(p))},t),(async()=>{try{u(await r)}catch(m){l(m)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function Dh(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var Xa=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=Dh(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var Ct=class extends Uh.default{#e;#t;#r=0;#n;#c;#h=0;#o;#l;#i;#m;#s=0;#u;#a;#g;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Xa,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#t=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#n=e.intervalCap,this.#c=e.interval,this.#i=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#g=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#w(){return this.#t||this.#r<this.#n}get#b(){return this.#s<this.#u}#v(){this.#s--,this.#p(),this.emit("next")}#E(){this.#y(),this.#x(),this.#l=void 0}get#A(){let e=Date.now();if(this.#o===void 0){let t=this.#h-e;if(t<0)this.#r=this.#e?this.#s:0;else return this.#l===void 0&&(this.#l=setTimeout(()=>{this.#E()},t)),!0}return!1}#p(){if(this.#i.size===0)return this.#o&&clearInterval(this.#o),this.#o=void 0,this.emit("empty"),this.#s===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#A;if(this.#w&&this.#b){let t=this.#i.dequeue();return t?(this.emit("active"),t(),e&&this.#x(),!0):!1}}return!1}#x(){this.#t||this.#o!==void 0||(this.#o=setInterval(()=>{this.#y()},this.#c),this.#h=Date.now()+this.#c)}#y(){this.#r===0&&this.#s===0&&this.#o&&(clearInterval(this.#o),this.#o=void 0),this.#r=this.#e?this.#s:0,this.#d()}#d(){for(;this.#p(););}get concurrency(){return this.#u}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#d()}async#S(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#g,...t},new Promise((n,i)=>{this.#i.enqueue(async()=>{this.#s++,this.#r++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Ya(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#S(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof Wa&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#v()}},t),this.emit("add"),this.#p()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#i=new this.#m}async onEmpty(){this.#i.size!==0&&await this.#f("empty")}async onSizeLessThan(e){this.#i.size<e||await this.#f("next",()=>this.#i.size<e)}async onIdle(){this.#s===0&&this.#i.size===0||await this.#f("idle")}async#f(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#i.size}sizeBy(e){return this.#i.filter(e).length}get pending(){return this.#s}get isPaused(){return this.#a}};function Ok(r){return r[Symbol.asyncIterator]!=null}function Fk(r){if(Ok(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var oo=Fk;var Lh=Z("/ipns/");function Yb(r){return ge(r.subarray(0,Lh.byteLength),Lh)}var Xb=r=>wa(r.slice(Lh.length)),Hu=class{client;constructor(e){this.client=e}async*findProviders(e,t={}){yield*fr(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async put(e,t,n){if(!Yb(e))return;let i=Xb(e),o=wt(t);await this.client.putIPNS(i,o,n)}async get(e,t){if(!Yb(e))throw new O("Not found","ERR_NOT_FOUND");let n=Xb(e);try{let i=await this.client.getIPNS(n,t);return In(i)}catch(i){throw i.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):i}}},qu=class{client;constructor(e){this.client=e}async findPeer(e,t={}){let n=await oo(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){}};var Rt=ue("delegated-routing-v1-http-api-client"),Jb={concurrentRequests:4,timeout:3e4},Ku=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;constructor(e,t={}){this.started=!1,this.shutDownController=new AbortController,rl(1/0,this.shutDownController.signal),this.httpQueue=new Ct({concurrency:t.concurrentRequests??Jb.concurrentRequests}),this.clientUrl=e instanceof URL?e:new URL(e),this.timeout=t.timeout??Jb.timeout,this.contentRouting=new Hu(this),this.peerRouting=new qu(this)}get[da](){return this.contentRouting}get[fa](){return this.peerRouting}isStarted(){return this.started}start(){this.started=!0}stop(){this.httpQueue.clear(),this.shutDownController.abort(),this.started=!1}async*getProviders(e,t={}){Rt("getProviders starts: %c",e);let n=ji([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=He(),o=He();this.httpQueue.add(async()=>(i.resolve(),o.promise));try{await i.promise;let s=`${this.clientUrl}routing/v1/providers/${e.toString()}`,c=await fetch(s,{headers:{Accept:"application/x-ndjson"},signal:n});if(c.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(c.headers.get("Content-Type")==="application/json"){let l=await c.json();for(let p of l.Providers){let m=this.#e(p);m!=null&&(yield m)}}else for await(let l of Ka(bl(c.body))){let p=this.#e(l);p!=null&&(yield p)}}catch(s){Rt.error("getProviders errored:",s)}finally{n.clear(),o.resolve(),Rt("getProviders finished: %c",e)}}async*getPeers(e,t={}){Rt("getPeers starts: %c",e);let n=ji([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=He(),o=He();this.httpQueue.add(async()=>(i.resolve(),o.promise));try{await i.promise;let s=`${this.clientUrl}routing/v1/peers/${e.toCID().toString()}`,c=await fetch(s,{headers:{Accept:"application/x-ndjson"},signal:n});if(c.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new O("Routing response had no body","ERR_BAD_RESPONSE");if(c.headers.get("Content-Type")==="application/json"){let l=await c.json();for(let p of l.Peers){let m=this.#e(p);m!=null&&(yield m)}}else for await(let l of Ka(bl(c.body))){let p=this.#e(l);p!=null&&(yield p)}}catch(s){Rt.error("getPeers errored:",s)}finally{n.clear(),o.resolve(),Rt("getPeers finished: %c",e)}}async getIPNS(e,t={}){Rt("getIPNS starts: %c",e);let n=ji([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=He(),o=He();this.httpQueue.add(async()=>(i.resolve(),o.promise));let s=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await i.promise;let c=await fetch(s,{headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:n});if(Rt("getIPNS GET %s %d",s,c.status),c.status===404)throw new O("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new O("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new O("GET ipns response had no body","ERR_BAD_RESPONSE");let u=await c.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return t.validate!==!1&&await ju(ds(e),l),wt(l)}catch(a){throw Rt.error("getIPNS GET %s error:",s,a),a}finally{n.clear(),o.resolve(),Rt("getIPNS finished: %c",e)}}async putIPNS(e,t,n={}){Rt("putIPNS starts: %c",e);let i=ji([this.shutDownController.signal,n.signal,AbortSignal.timeout(this.timeout)]),o=He(),s=He();this.httpQueue.add(async()=>(o.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await o.promise;let c=In(t),l=await fetch(a,{method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:c,signal:i});if(Rt("putIPNS PUT %s %d",a,l.status),l.status!==200)throw new O("PUT ipns response had status other than 200","ERR_BAD_RESPONSE")}catch(c){throw Rt.error("putIPNS PUT %s error:",a,c.stack),c}finally{i.clear(),s.resolve(),Rt("putIPNS finished: %c",e)}}#e(e){let t=[],n=e.Addrs?.map(Pf)??[];return e.Protocols!=null&&t.push(...e.Protocols),e.Protocol!=null&&(t.push(e.Protocol),delete e.Protocol),{...e,Schema:"peer",ID:mr(e.ID),Addrs:n,Protocols:t}}};function Zb(r,e={}){return new Ku(new URL(r),e)}var Qb=Z("/ipns/");function ev(r){return ge(r.subarray(0,Qb.byteLength),Qb)}var Ph=class{client;constructor(e){this.client=Zb(e)}async provide(e,t){}async*findProviders(e,t){yield*fr(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(e,t,n){if(!ev(e))return;let i=fs(e),o=wt(t);await this.client.putIPNS(i,o,n)}async get(e,t){if(!ev(e))throw new O("Not found","ERR_NOT_FOUND");let n=fs(e);try{let i=await this.client.getIPNS(n,t);return In(i)}catch(i){throw i.code==="ERR_BAD_RESPONSE"?new O("Not found","ERR_NOT_FOUND"):i}}async findPeer(e,t){let n=await oo(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new O("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t){}};function Ja(r){return new Ph(new URL(r))}var Oh=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=t??"ABORT_ERR"}};async function Gu(r,e,t,n){let i=new Oh(n?.errorMessage,n?.errorCode);return t?.aborted===!0?Promise.reject(i):new Promise((o,s)=>{let a=u=>{n?.filter?.(u)!==!1&&(r.removeEventListener(e,a),t?.removeEventListener("abort",c),o(u))},c=()=>{r.removeEventListener(e,a),t?.removeEventListener("abort",c),s(i)};r.addEventListener(e,a),t?.addEventListener("abort",c)})}var Wu=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=t??"ABORT_ERR"}};async function tv(r,e,t){if(e==null)return r;if(e.aborted)return Promise.reject(new Wu(t?.errorMessage,t?.errorCode));let n,i=new Wu(t?.errorMessage,t?.errorCode);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var Yu=class{deferred;signal;where;constructor(e,t){this.signal=t,this.deferred=He(),this.where=e,this.onAbort=this.onAbort.bind(this),this.signal?.addEventListener("abort",this.onAbort)}onAbort(){this.deferred.reject(new Zn)}cleanup(){this.signal?.removeEventListener("abort",this.onAbort)}};function zk(){return`${parseInt(String(Math.random()*1e9),10).toString()}${Date.now()}`}var Xu=class{id;fn;options;priority;recipients;status;timeline;controller;constructor(e,t,n=0){this.id=zk(),this.status="queued",this.fn=e,this.priority=n,this.options=t,this.recipients=[],this.timeline={created:Date.now()},this.controller=new AbortController,rl(1/0,this.controller.signal),this.onAbort=this.onAbort.bind(this)}abort(e){this.controller.abort(e)}onAbort(){this.recipients.reduce((t,n)=>t&&n.signal?.aborted===!0,!0)&&this.controller.abort(new Zn)}async join(e={}){let t=new Yu(new Error("where").stack,e.signal);return this.recipients.push(t),e.signal?.addEventListener("abort",this.onAbort),t.deferred.promise}async run(){this.status="running",this.timeline.started=Date.now();try{this.controller.signal.throwIfAborted();let e=await tv(this.fn({...this.options??{},signal:this.controller.signal}),this.controller.signal);this.recipients.forEach(t=>{t.deferred.resolve(e)}),this.status="complete"}catch(e){this.recipients.forEach(t=>{t.deferred.reject(e)}),this.status="errored"}finally{this.timeline.finished=Date.now(),this.cleanup()}}cleanup(){this.recipients.forEach(e=>{e.signal?.removeEventListener("abort",this.onAbort)})}};function Vk(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var Za=class extends tl{concurrency;queue;pending;constructor(e={}){super(),this.concurrency=e.concurrency??Number.POSITIVE_INFINITY,this.pending=0,e.metricName!=null&&e.metrics?.registerMetricGroup(e.metricName,{calculate:()=>({size:this.queue.length,running:this.pending,queued:this.queue.length-this.pending})}),this.queue=[]}tryToStartAnother(){if(this.size===0)return queueMicrotask(()=>{this.safeDispatchEvent("empty")}),this.running===0&&queueMicrotask(()=>{this.safeDispatchEvent("idle")}),!1;if(this.pending<this.concurrency){let e;for(let t of this.queue)if(t.status==="queued"){e=t;break}return e==null?!1:(this.safeDispatchEvent("active"),this.pending++,e.run().finally(()=>{for(let t=0;t<this.queue.length;t++)if(this.queue[t]===e){this.queue.splice(t,1);break}this.pending--,this.tryToStartAnother(),this.safeDispatchEvent("next")}),!0)}return!1}enqueue(e){if(this.queue[this.size-1]?.priority>=e.priority){this.queue.push(e);return}let t=Vk(this.queue,e,(n,i)=>i.priority-n.priority);this.queue.splice(t,0,e)}async add(e,t){t?.signal?.throwIfAborted();let n=new Xu(e,t,t?.priority),i=n.join(t).then(o=>(this.safeDispatchEvent("completed",{detail:o}),o)).catch(o=>{throw this.safeDispatchEvent("error",{detail:o}),o});return this.enqueue(n),this.safeDispatchEvent("add"),this.tryToStartAnother(),i}clear(){this.queue.splice(0,this.queue.length)}abort(){this.queue.forEach(e=>{e.abort(new Zn)}),this.clear()}async onEmpty(e){this.size!==0&&await Gu(this,"empty",e?.signal)}async onSizeLessThan(e,t){this.size<e||await Gu(this,"next",t?.signal,{filter:()=>this.size<e})}async onIdle(e){this.pending===0&&this.size===0||await Gu(this,"idle",e?.signal)}get size(){return this.queue.length}get queued(){return this.queue.length-this.pending}get running(){return this.pending}async*toGenerator(e){e?.signal?.throwIfAborted();let t=Pr({objectMode:!0}),n=c=>{c!=null?this.abort():this.clear(),t.end(c)},i=c=>{c.detail!=null&&t.push(c.detail)},o=c=>{n(c.detail)},s=()=>{n()},a=()=>{n(new O("Queue aborted","ERR_QUEUE_ABORTED"))};this.addEventListener("completed",i),this.addEventListener("error",o),this.addEventListener("idle",s),e?.signal?.addEventListener("abort",a);try{yield*t}finally{this.removeEventListener("completed",i),this.removeEventListener("error",o),this.removeEventListener("idle",s),e?.signal?.removeEventListener("abort",a),n()}}};var ov="/pin/",rv="/pinned-block/",Fh=ni,nv=1;function iv(r){return r.version===0&&(r=r.toV1()),new Xe(`${ov}${r.toString(Fh)}`)}var Ju=class{datastore;blockstore;dagWalkers;constructor(e,t,n){this.datastore=e,this.blockstore=t,this.dagWalkers=n}async*add(e,t={}){let n=iv(e);if(await this.datastore.has(n))throw new Error("Already pinned");let i=Math.round(t.depth??1/0);if(i<0)throw new Error("Depth must be greater than or equal to 0");let o=new Za({concurrency:nv});for await(let a of this.#e(e,o,{...t,depth:i}))await this.#t(a,c=>c.pinnedBy.find(u=>ge(u,e.bytes))!=null?!1:(c.pinCount++,c.pinnedBy.push(e.bytes),!0),t),yield a;let s={depth:i,metadata:t.metadata??{}};await this.datastore.put(n,bi(s),t)}async*#e(e,t,n){if(n.depth===-1)return;let i=this.dagWalkers[e.code];if(i==null)throw new Error(`No dag walker found for cid codec ${e.code}`);let o=await this.blockstore.get(e,n);yield e;for await(let s of i.walk(o))yield*await t.add(async()=>this.#e(s,t,{...n,depth:n.depth-1}))}async#t(e,t,n){let i=new Xe(`${rv}${Fh.encode(e.multihash.bytes)}`),o={pinCount:0,pinnedBy:[]};try{o=Kt(await this.datastore.get(i,n))}catch(a){if(a.code!=="ERR_NOT_FOUND")throw a}if(t(o)){if(o.pinCount===0&&await this.datastore.has(i)){await this.datastore.delete(i);return}await this.datastore.put(i,bi(o),n),n.onProgress?.(new P("helia:pin:add",e))}}async*rm(e,t={}){let n=iv(e),i=await this.datastore.get(n,t),o=Kt(i);await this.datastore.delete(n,t);let s=new Za({concurrency:nv});for await(let a of this.#e(e,s,{...t,depth:o.depth}))await this.#t(a,c=>(c.pinCount--,c.pinnedBy=c.pinnedBy.filter(u=>ge(u,e.bytes)),!0),{...t,depth:o.depth}),yield a}async*ls(e={}){for await(let{key:t,value:n}of this.datastore.query({prefix:ov+(e.cid!=null?`${e.cid.toString(ni)}`:"")},e)){let i=V.parse(t.toString().substring(5),ni),o=Kt(n);yield{cid:i,...o}}}async isPinned(e,t={}){let n=new Xe(`${rv}${Fh.encode(e.multihash.bytes)}`);return this.datastore.has(n,t)}};function zh(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 hs=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 zh(this.set.entries(),e=>{let t=mr(e[0]);return[t,t]})}forEach(e){this.set.forEach(t=>{let n=mr(t);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return zh(this.set.values(),e=>mr(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 Zu=class{log;routers;constructor(e,t){this.log=e.logger.forComponent("helia:routing"),this.routers=t.routers??[]}async start(){await Qn(...this.routers)}async stop(){await ei(...this.routers)}async*findProviders(e,t={}){if(this.routers.length===0)throw new O("No content routers available","ERR_NO_ROUTERS_AVAILABLE");let n=new hs;for await(let i of si(...ms(this.routers,"findProviders").map(o=>o.findProviders(e,t))))i!=null&&(n.has(i.id)||(n.add(i.id),yield i))}async provide(e,t={}){if(this.routers.length===0)throw new O("No content routers available","ERR_NO_ROUTERS_AVAILABLE");await Promise.all(ms(this.routers,"provide").map(async n=>{await n.provide(e,t)}))}async put(e,t,n){await Promise.all(ms(this.routers,"put").map(async i=>{await i.put(e,t,n)}))}async get(e,t){return Promise.any(ms(this.routers,"get").map(async n=>n.get(e,t)))}async findPeer(e,t){if(this.routers.length===0)throw new O("No peer routers available","ERR_NO_ROUTERS_AVAILABLE");let n=this,i=si(...ms(this.routers,"findPeer").map(o=>async function*(){try{yield await o.findPeer(e,t)}catch(s){n.log.error(s)}}()));for await(let o of i)if(o!=null)return o;throw new O("Could not find peer in routing","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){if(this.routers.length===0)throw new O("No peer routers available","ERR_NO_ROUTERS_AVAILABLE");let n=new hs;for await(let i of si(...ms(this.routers,"getClosestPeers").map(o=>o.getClosestPeers(e,t))))i!=null&&(n.has(i.id)||(n.add(i.id),yield i))}};function ms(r,e){return r.filter(t=>t[e]!=null)}var vi={},gs=r=>{r.addEventListener("message",e=>{gs.dispatchEvent("message",r,e)}),r.port!=null&&r.port.addEventListener("message",e=>{gs.dispatchEvent("message",r,e)})};gs.addEventListener=(r,e)=>{vi[r]==null&&(vi[r]=[]),vi[r].push(e)};gs.removeEventListener=(r,e)=>{vi[r]!=null&&(vi[r]=vi[r].filter(t=>t===e))};gs.dispatchEvent=function(r,e,t){vi[r]!=null&&vi[r].forEach(n=>n(e,t))};var Vh=gs;var Mh="lock:worker:request-read",jh="lock:worker:release-read",$h="lock:master:grant-read",Hh="lock:worker:request-write",qh="lock:worker:release-write",Kh="lock:master:grant-write";var sv=(r=21)=>Math.random().toString().substring(2);var av=(r,e,t,n,i)=>(o,s)=>{if(s.data.type!==t)return;let a={type:s.data.type,name:s.data.name,identifier:s.data.identifier};r.dispatchEvent(new MessageEvent(e,{data:{name:a.name,handler:async()=>{o.postMessage({type:i,name:a.name,identifier:a.identifier}),await new Promise(c=>{let u=l=>{if(l==null||l.data==null)return;let p={type:l.data.type,name:l.data.name,identifier:l.data.identifier};p.type===n&&p.identifier===a.identifier&&(o.removeEventListener("message",u),c())};o.addEventListener("message",u)})}}}))},cv=(r,e,t,n)=>async()=>{let i=sv();return globalThis.postMessage({type:e,identifier:i,name:r}),new Promise(o=>{let s=a=>{if(a==null||a.data==null)return;let c={type:a.data.type,identifier:a.data.identifier};c.type===t&&c.identifier===i&&(globalThis.removeEventListener("message",s),o(()=>{globalThis.postMessage({type:n,identifier:i,name:r})}))};globalThis.addEventListener("message",s)})},Mk={singleProcess:!1},lv=r=>{if(r=Object.assign({},Mk,r),!!globalThis.document||r.singleProcess){let t=new EventTarget;return Vh.addEventListener("message",av(t,"requestReadLock",Mh,jh,$h)),Vh.addEventListener("message",av(t,"requestWriteLock",Hh,qh,Kh)),t}return{isWorker:!0,readLock:t=>cv(t,Mh,$h,jh),writeLock:t=>cv(t,Hh,Kh,qh)}};var so={},Ei;async function Gh(r,e){let t,n=new Promise(i=>{t=i});return r.add(async()=>Ya((async()=>{await new Promise(i=>{t(()=>{i()})})})(),{milliseconds:e.timeout})),n}var jk=(r,e)=>{if(Ei.isWorker===!0)return{readLock:Ei.readLock(r,e),writeLock:Ei.writeLock(r,e)};let t=new Ct({concurrency:1}),n;return{async readLock(){if(n!=null)return Gh(n,e);n=new Ct({concurrency:e.concurrency,autoStart:!1});let i=n,o=Gh(n,e);return t.add(async()=>{i.start(),await i.onIdle().then(()=>{n===i&&(n=null)})}),o},async writeLock(){return n=null,Gh(t,e)}}},$k={name:"lock",concurrency:1/0,timeout:846e5,singleProcess:!1};function Wh(r){let e=Object.assign({},$k,r);return Ei==null&&(Ei=lv(e),Ei.isWorker!==!0&&(Ei.addEventListener("requestReadLock",t=>{so[t.data.name]!=null&&so[t.data.name].readLock().then(async n=>t.data.handler().finally(()=>{n()}))}),Ei.addEventListener("requestWriteLock",async t=>{so[t.data.name]!=null&&so[t.data.name].writeLock().then(async n=>t.data.handler().finally(()=>{n()}))}))),so[e.name]==null&&(so[e.name]=jk(e.name,e)),so[e.name]}var Qu=class{lock;child;pins;started;constructor(e,t,n={}){this.child=e,this.pins=t,this.lock=Wh({singleProcess:n.holdGcLock}),this.started=!1}isStarted(){return this.started}async start(){await Qn(this.child),this.started=!0}async stop(){await ei(this.child),this.started=!1}unwrap(){return this.child}async put(e,t,n={}){let i=await this.lock.readLock();try{return await this.child.put(e,t,n)}finally{i()}}async*putMany(e,t={}){let n=await this.lock.readLock();try{yield*this.child.putMany(e,t)}finally{n()}}async get(e,t={}){let n=await this.lock.readLock();try{return await this.child.get(e,t)}finally{n()}}async*getMany(e,t={}){let n=await this.lock.readLock();try{yield*this.child.getMany(e,t)}finally{n()}}async delete(e,t={}){let n=await this.lock.writeLock();try{if(await this.pins.isPinned(e))throw new Error("CID was pinned");await this.child.delete(e,t)}finally{n()}}async*deleteMany(e,t={}){let n=await this.lock.writeLock();try{let i=this;yield*this.child.deleteMany(async function*(){for await(let o of e){if(await i.pins.isPinned(o))throw new Error("CID was pinned");yield o}}(),t)}finally{n()}}async has(e,t={}){let n=await this.lock.readLock();try{return await this.child.has(e,t)}finally{n()}}async*getAll(e={}){let t=await this.lock.readLock();try{yield*this.child.getAll(e)}finally{t()}}};var uv=42;function Hk(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=V.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new C(A.tag,uv),new C(A.bytes,t)]}function qk(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Kk(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var Yh={float64:!0,typeEncoders:{Object:Hk,undefined:qk,number:Kk}},wH={...Yh,typeEncoders:{...Yh.typeEncoders}};function Gk(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return V.decode(r.subarray(1))}var ep={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};ep.tags[uv]=Gk;var bH={...ep,tags:ep.tags.slice()};var Ai=113,pv=r=>bi(r,Yh),tp=r=>Kt(r,ep);var Xh=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===A.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===A.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[A.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[A.negint.major](e,t){this[A.uint.major](e,t)}[A.bytes.major](e,t){throw new Error(`${Bn} unsupported type: Uint8Array`)}[A.string.major](e,t){this.prefix(e);let n=_u(JSON.stringify(t.value));e.push(n.length>32?Fa(n):n)}[A.array.major](e,t){this.prefix(e),this.inRecursive.push({type:A.array,elements:0}),e.push([91])}[A.map.major](e,t){this.prefix(e),this.inRecursive.push({type:A.map,elements:0}),e.push([123])}[A.tag.major](e,t){}[A.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===A.array)e.push([93]);else if(s.type===A.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${Bn} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};function Wk(r,e){if(Array.isArray(r[0])||Array.isArray(e[0]))throw new Error(`${Bn} complex map keys are not supported`);let t=r[0],n=e[0];if(t.type!==A.string||n.type!==A.string)throw new Error(`${Bn} non-string map keys are not supported`);if(t<n)return-1;if(t>n)return 1;throw new Error(`${Bn} unexpected duplicate map keys, this is not supported`)}var Yk={addBreakTokens:!0,mapSorter:Wk};function Jh(r,e){return e=Object.assign({},Yk,e),kh(r,new Xh,e)}var Si=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${q} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${q} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new C(A.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${q} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${q} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new C(A.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new C(s>=0?A.uint:A.negint,s,this._pos-e):new C(s>=0?A.uint:A.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${q} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new C(A.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${q} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${q} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${q} unexpected unicode sequence at position ${this._pos}`);let c,u,l,p;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(p=(o&31)<<6|c&63,p>127&&(s=p));break;case 3:c=this.data[this._pos+1],u=this.data[this._pos+2],(c&192)===128&&(u&192)===128&&(p=(o&15)<<12|(c&63)<<6|u&63,p>2047&&(p<55296||p>57343)&&(s=p));break;case 4:c=this.data[this._pos+1],u=this.data[this._pos+2],l=this.data[this._pos+3],(c&192)===128&&(u&192)===128&&(l&192)===128&&(p=(o&15)<<18|(c&63)<<12|(u&63)<<6|l&63,p>65535&&p<1114112&&(s=p))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${q} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${q} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new C(A.string,bh(t),this._pos-e);default:if(o<32)throw new Error(`${q} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${q} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new C(A.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new C(A.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new C(A.null,null,4);case 102:return this.expect([102,97,108,115,101]),new C(A.false,!1,5);case 116:return this.expect([116,114,117,101]),new C(A.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${q} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new C(A.break,void 0,1);if(this.ch()!==44)throw new Error(`${q} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new C(A.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new C(A.break,void 0,1);if(this.ch()!==44)throw new Error(`${q} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new C(A.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${q} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${q} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Qa(r,e){return e=Object.assign({tokenizer:new Si(r,e)},e),Kt(r,e)}function Xk(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=V.asCID(r);if(!e)return null;let t=e.toString();return[new C(A.map,1/0,1),new C(A.string,"/",1),new C(A.string,t,t.length),new C(A.break,void 0,1)]}function np(r){let e=Lr.encode(r).slice(1);return[new C(A.map,1/0,1),new C(A.string,"/",1),new C(A.map,1/0,1),new C(A.string,"bytes",5),new C(A.string,e,e.length),new C(A.break,void 0,1),new C(A.break,void 0,1)]}function Sr(r){return np(new Uint8Array(r.buffer,r.byteOffset,r.byteLength))}function Jk(r){return np(new Uint8Array(r))}function Zk(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function Qk(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var eI={typeEncoders:{Object:Xk,Buffer:np,Uint8Array:np,Int8Array:Sr,Uint16Array:Sr,Int16Array:Sr,Uint32Array:Sr,Int32Array:Sr,Float32Array:Sr,Float64Array:Sr,Uint8ClampedArray:Sr,BigInt64Array:Sr,BigUint64Array:Sr,DataView:Sr,ArrayBuffer:Jk,undefined:Zk,number:Qk}},Zh=class extends Si{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===A.map){let t=this._next();if(t.type===A.string&&t.value==="/"){let n=this._next();if(n.type===A.string){if(this._next().type!==A.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new C(A.tag,42,0)}if(n.type===A.map){let i=this._next();if(i.type===A.string&&i.value==="bytes"){let o=this._next();if(o.type===A.string){for(let a=0;a<2;a++)if(this._next().type!==A.break)throw new Error("Invalid encoded Bytes form");let s=Lr.decode(`m${o.value}`);return new C(A.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},Qh={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};Qh.tags[42]=V.parse;var Bi=297,fv=r=>Jh(r,eI),ip=r=>{let e=Object.assign(Qh,{tokenizer:new Zh(r,Qh)});return Qa(r,e)};var OH=new TextDecoder;var FH=new TextEncoder;var Ke={};j(Ke,{code:()=>Ve,createLink:()=>Av,createNode:()=>Ev,decode:()=>ke,encode:()=>fe,name:()=>pI,prepare:()=>Ue,validate:()=>rm});var tI=new TextDecoder;function em(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function sp(r,e){let t;[t,e]=em(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function hv(r,e){let t;return[t,e]=em(r,e),[t&7,t>>3,e]}function rI(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=hv(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=sp(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=sp(r,n),e.Name=tI.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=em(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function mv(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=hv(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=sp(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let u;[u,t]=sp(r,t),n.push(rI(u))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var xv=new TextEncoder,gv=2**32,nI=2**31;function iI(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=ec(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=xv.encode(r.Name);t-=n.length,e.set(n,t),t=ec(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=ec(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function yv(r){let e=sI(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=ec(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=iI(r.Links[i],t.subarray(0,n));n-=o,n=ec(t,n,o)-1,t[n]=18}return t}function oI(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+xs(t)}if(typeof r.Name=="string"){let t=xv.encode(r.Name).length;e+=1+t+xs(t)}return typeof r.Tsize=="number"&&(e+=1+xs(r.Tsize)),e}function sI(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+xs(t)}if(r.Links)for(let t of r.Links){let n=oI(t);e+=1+n+xs(n)}return e}function ec(r,e,t){e-=xs(t);let n=e;for(;t>=nI;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function xs(r){return r%2===0&&r++,Math.floor((aI(r)+6)/7)}function aI(r){let e=0;return r>=gv&&(r=Math.floor(r/gv),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+cI[r]}var cI=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var lI=["Data","Links"],uI=["Hash","Name","Tsize"],tm=new TextEncoder;function bv(r,e){if(r===e)return 0;let t=r.Name?tm.encode(r.Name):[],n=e.Name?tm.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function wv(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function vv(r){if(typeof r.asCID=="object"){let t=V.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=V.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=V.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=V.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function Ue(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=tm.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(vv),e.Links.sort(bv);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function rm(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!wv(r,lI))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!wv(t,uI))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&bv(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function Ev(r,e=[]){return Ue({Data:r,Links:e})}function Av(r,e,t){return vv({Hash:t,Name:r,Tsize:e})}var pI="dag-pb",Ve=112;function fe(r){rm(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),yv(e)}function ke(r){let e=mv(r),t={};return e.Data&&(t.Data=e.Data),e.Links&&(t.Links=e.Links.map(n=>{let i={};try{i.Hash=V.decode(n.Hash)}catch{}if(!i.Hash)throw new Error("Invalid Hash field found in link, expected CID");return n.Name!==void 0&&(i.Name=n.Name),n.Tsize!==void 0&&(i.Tsize=n.Tsize),i})),t}var dI={codec:Ve,*walk(r){yield*ke(r).Links.map(t=>t.Hash)}},fI={codec:$e,*walk(){}},Sv=42,hI={codec:Ai,*walk(r){let e=[],t=[];t[Sv]=n=>{if(n[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");let i=V.decode(n.subarray(1));return e.push(i),i},Kt(r,{tags:t}),yield*e}},nm=class extends Si{tokenBuffer;constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===A.map){let t=this._next();if(t.type===A.string&&t.value==="/"){let n=this._next();if(n.type===A.string){if(this._next().type!==A.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new C(A.tag,42,0)}if(n.type===A.map){let i=this._next();if(i.type===A.string&&i.value==="bytes"){let o=this._next();if(o.type===A.string){for(let a=0;a<2;a++)if(this._next().type!==A.break)throw new Error("Invalid encoded Bytes form");let s=Lr.decode(`m${o.value}`);return new C(A.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},mI={codec:Bi,*walk(r){let e=[],t=[];t[Sv]=n=>{let i=V.parse(n);return e.push(i),i},Qa(r,{tags:t,tokenizer:new nm(r,{tags:t,allowIndefinite:!0,allowUndefined:!0,allowNaN:!0,allowInfinity:!0,allowBigInt:!0,strict:!1,rejectDuplicateMapKeys:!1})}),yield*e}},gI={codec:ii,*walk(){}};function Bv(r=[]){let e={};return[dI,fI,hI,mI,gI,...r].forEach(t=>{e[t.codec]=t}),e}var im=new Xe("/version"),kv=1;async function Iv(r){if(!await r.has(im)){await r.put(im,Z(`${kv}`));return}let e=await r.get(im),t=ie(e);if(parseInt(t,10)!==kv)throw new Error("Unknown datastore version, a datastore migration may be required")}function _v(r=[]){let e={};return[ae,Fd,It,...r].forEach(t=>{e[t.code]=t}),e}function xI(r){return r[Symbol.asyncIterator]!=null}function yI(r,e){if(xI(r))return async function*(){for await(let a of r)await e(a)&&(yield a)}();let t=Io(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){await o&&(yield n);for await(let a of t)await e(a)&&(yield a)}();let s=e;return function*(){o===!0&&(yield n);for(let a of t)s(a)&&(yield a)}()}var Gt=yI;function wI(r){return typeof r.retrieve=="function"}function bI(r){return typeof r.announce=="function"}var ap=class{child;blockRetrievers;blockAnnouncers;hashers;started;log;constructor(e){this.log=e.logger.forComponent("helia:networked-storage"),this.child=e.blockstore,this.blockRetrievers=(e.blockBrokers??[]).filter(wI),this.blockAnnouncers=(e.blockBrokers??[]).filter(bI),this.hashers=e.hashers??{},this.started=!1}isStarted(){return this.started}async start(){await Qn(this.child,...new Set([...this.blockRetrievers,...this.blockAnnouncers])),this.started=!0}async stop(){await ei(this.child,...new Set([...this.blockRetrievers,...this.blockAnnouncers])),this.started=!1}unwrap(){return this.child}async put(e,t,n={}){return await this.child.has(e)?(n.onProgress?.(new P("blocks:put:duplicate",e)),e):(n.onProgress?.(new P("blocks:put:providers:notify",e)),this.blockAnnouncers.forEach(i=>{i.announce(e,t,n)}),n.onProgress?.(new P("blocks:put:blockstore:put",e)),this.child.put(e,t,n))}async*putMany(e,t={}){let n=Gt(e,async({cid:o})=>{let s=await this.child.has(o);return s&&t.onProgress?.(new P("blocks:put-many:duplicate",o)),!s}),i=Ad(n,({cid:o,block:s})=>{t.onProgress?.(new P("blocks:put-many:providers:notify",o)),this.blockAnnouncers.forEach(a=>{a.announce(o,s,t)})});t.onProgress?.(new P("blocks:put-many:blockstore:put-many")),yield*this.child.putMany(i,t)}async get(e,t={}){if(t.offline!==!0&&!await this.child.has(e)){t.onProgress?.(new P("blocks:get:providers:get",e));let n=await Tv(e,this.blockRetrievers,this.hashers[e.multihash.code],{...t,log:this.log});return t.onProgress?.(new P("blocks:get:blockstore:put",e)),await this.child.put(e,n,t),t.onProgress?.(new P("blocks:get:providers:notify",e)),this.blockAnnouncers.forEach(i=>{i.announce(e,n,t)}),n}return t.onProgress?.(new P("blocks:get:blockstore:get",e)),this.child.get(e,t)}async*getMany(e,t={}){t.onProgress?.(new P("blocks:get-many:blockstore:get-many")),yield*this.child.getMany(Ad(e,async n=>{if(t.offline!==!0&&!await this.child.has(n)){t.onProgress?.(new P("blocks:get-many:providers:get",n));let i=await Tv(n,this.blockRetrievers,this.hashers[n.multihash.code],{...t,log:this.log});t.onProgress?.(new P("blocks:get-many:blockstore:put",n)),await this.child.put(n,i,t),t.onProgress?.(new P("blocks:get-many:providers:notify",n)),this.blockAnnouncers.forEach(o=>{o.announce(n,i,t)})}}))}async delete(e,t={}){t.onProgress?.(new P("blocks:delete:blockstore:delete",e)),await this.child.delete(e,t)}async*deleteMany(e,t={}){t.onProgress?.(new P("blocks:delete-many:blockstore:delete-many")),yield*this.child.deleteMany(async function*(){for await(let n of e)yield n}(),t)}async has(e,t={}){return this.child.has(e,t)}async*getAll(e={}){e.onProgress?.(new P("blocks:get-all:blockstore:get-many")),yield*this.child.getAll(e)}},vI=(r,e)=>{if(e==null)throw new O(`No hasher configured for multihash code 0x${r.multihash.code.toString(16)}, please configure one. You can look up which hash this is at https://github.com/multiformats/multicodec/blob/master/table.csv`,"ERR_UNKNOWN_HASH_ALG");return async t=>{let n=await e.digest(t);if(!ge(n.digest,r.multihash.digest))throw new O("Hash of downloaded block did not match multihash from passed CID","ERR_HASH_MISMATCH")}};async function Tv(r,e,t,n){let i=vI(r,t),o=new AbortController,s=ji([o.signal,n.signal]);try{return await Promise.any(e.map(async a=>{try{let c=!1,u=await a.retrieve(r,{...n,signal:s,validateFn:async l=>{await i(l),c=!0}});return c||await i(u),u}catch(c){throw n.log.error("could not retrieve verified block for %c",r,c),c}}))}finally{s.clear()}}var cp=class{blockstore;datastore;pins;logger;routing;dagWalkers;hashers;log;constructor(e){this.logger=e.logger??Jx(),this.log=this.logger.forComponent("helia"),this.hashers=_v(e.hashers),this.dagWalkers=Bv(e.dagWalkers);let t={blockstore:e.blockstore,datastore:e.datastore,hashers:this.hashers,dagWalkers:this.dagWalkers,logger:this.logger,blockBrokers:[],...e.components??{}};t.blockBrokers=e.blockBrokers.map(i=>i(t));let n=new ap(t);this.pins=new Ju(e.datastore,n,this.dagWalkers),this.blockstore=new Qu(n,this.pins,{holdGcLock:e.holdGcLock??!0}),this.datastore=e.datastore,this.routing=new Zu(t,{routers:(e.routers??[]).flatMap(i=>{let o=[i];return i[da]!=null&&o.push(i[da]),i[fa]!=null&&o.push(i[fa]),o})})}async start(){await Iv(this.datastore),await Qn(this.blockstore,this.datastore,this.routing)}async stop(){await ei(this.blockstore,this.datastore,this.routing)}async gc(e={}){let t=await this.blockstore.lock.writeLock();try{let n=this,i=this.blockstore.unwrap();this.log("gc start"),await Wi(i.deleteMany(async function*(){for await(let{cid:o}of i.getAll())try{if(await n.pins.isPinned(o,e))continue;yield o,e.onProgress?.(new P("helia:gc:deleted",o))}catch(s){n.log.error("Error during gc",s),e.onProgress?.(new P("helia:gc:error",s))}}()))}finally{t()}this.log("gc finished")}};var ys={};j(ys,{abortedError:()=>kI,closeFailedError:()=>AI,deleteFailedError:()=>Rv,getFailedError:()=>SI,hasFailedError:()=>BI,notFoundError:()=>tc,openFailedError:()=>EI,putFailedError:()=>Cv});var _n=ee(Ce(),1);function EI(r){return r=r??new Error("Open failed"),(0,_n.default)(r,"ERR_OPEN_FAILED")}function AI(r){return r=r??new Error("Close failed"),(0,_n.default)(r,"ERR_CLOSE_FAILED")}function Cv(r){return r=r??new Error("Put failed"),(0,_n.default)(r,"ERR_PUT_FAILED")}function SI(r){return r=r??new Error("Get failed"),(0,_n.default)(r,"ERR_GET_FAILED")}function Rv(r){return r=r??new Error("Delete failed"),(0,_n.default)(r,"ERR_DELETE_FAILED")}function BI(r){return r=r??new Error("Has failed"),(0,_n.default)(r,"ERR_HAS_FAILED")}function tc(r){return r=r??new Error("Not Found"),(0,_n.default)(r,"ERR_NOT_FOUND")}function kI(r){return r=r??new Error("Aborted"),(0,_n.default)(r,"ERR_ABORTED")}var ao=class{has(e,t){return Promise.reject(new Error(".has is not implemented"))}put(e,t,n){return Promise.reject(new Error(".put is not implemented"))}async*putMany(e,t){for await(let{cid:n,block:i}of e)await this.put(n,i,t),yield n}get(e,t){return Promise.reject(new Error(".get is not implemented"))}async*getMany(e,t){for await(let n of e)yield{cid:n,block:await this.get(n,t)}}async delete(e,t){await Promise.reject(new Error(".delete is not implemented"))}async*deleteMany(e,t){for await(let n of e)await this.delete(n,t),yield n}async*getAll(e){throw new Error(".getAll is not implemented")}};var rc=class extends ao{data;constructor(){super(),this.data=new Map}put(e,t){return this.data.set(nt.encode(e.multihash.bytes),t),e}get(e){let t=this.data.get(nt.encode(e.multihash.bytes));if(t==null)throw tc();return t}has(e){return this.data.has(nt.encode(e.multihash.bytes))}async delete(e){this.data.delete(nt.encode(e.multihash.bytes))}async*getAll(){for(let[e,t]of this.data.entries())yield{cid:V.createV1($e,Ot(nt.decode(e))),block:t}}};var Fq=ue("blockstore:core:tiered");var jq={...ys};var Uv=ee(Ce(),1);function lp(r){return r=r??new Error("Not Found"),(0,Uv.default)(r,"ERR_NOT_FOUND")}var Nv="SHARDING";function _I(r){return r[Symbol.asyncIterator]!=null}function TI(r){if(_I(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var up=TI;function CI(r){return r[Symbol.asyncIterator]!=null}function RI(r,e){return CI(r)?async function*(){yield*(await up(r)).sort(e)}():function*(){yield*up(r).sort(e)}()}var pp=RI;var Tn=class{put(e,t,n){return Promise.reject(new Error(".put is not implemented"))}get(e,t){return Promise.reject(new Error(".get is not implemented"))}has(e,t){return Promise.reject(new Error(".has is not implemented"))}delete(e,t){return Promise.reject(new Error(".delete is not implemented"))}async*putMany(e,t={}){for await(let{key:n,value:i}of e)await this.put(n,i,t),yield n}async*getMany(e,t={}){for await(let n of e)yield{key:n,value:await this.get(n,t)}}async*deleteMany(e,t={}){for await(let n of e)await this.delete(n,t),yield n}batch(){let e=[],t=[];return{put(n,i){e.push({key:n,value:i})},delete(n){t.push(n)},commit:async n=>{await Wi(this.putMany(e,n)),e=[],await Wi(this.deleteMany(t,n)),t=[]}}}async*_all(e,t){throw new Error("._all is not implemented")}async*_allKeys(e,t){throw new Error("._allKeys is not implemented")}query(e,t){let n=this._all(e,t);if(e.prefix!=null){let i=e.prefix;n=Gt(n,o=>o.key.toString().startsWith(i))}if(Array.isArray(e.filters)&&(n=e.filters.reduce((i,o)=>Gt(i,o),n)),Array.isArray(e.orders)&&(n=e.orders.reduce((i,o)=>pp(i,o),n)),e.offset!=null){let i=0,o=e.offset;n=Gt(n,()=>i++>=o)}return e.limit!=null&&(n=hl(n,e.limit)),n}queryKeys(e,t){let n=this._allKeys(e,t);if(e.prefix!=null){let i=e.prefix;n=Gt(n,o=>o.toString().startsWith(i))}if(Array.isArray(e.filters)&&(n=e.filters.reduce((i,o)=>Gt(i,o),n)),Array.isArray(e.orders)&&(n=e.orders.reduce((i,o)=>pp(i,o),n)),e.offset!=null){let i=e.offset,o=0;n=Gt(n,()=>o++>=i)}return e.limit!=null&&(n=hl(n,e.limit)),n}};var ic=class extends Tn{data;constructor(){super(),this.data=new Map}put(e,t){return this.data.set(e.toString(),t),e}get(e){let t=this.data.get(e.toString());if(t==null)throw lp();return t}has(e){return this.data.has(e.toString())}delete(e){this.data.delete(e.toString())}*_all(){for(let[e,t]of this.data.entries())yield{key:new Xe(e),value:t}}*_allKeys(){for(let e of this.data.keys())yield new Xe(e)}};var gK=new Xe(Nv);var _K=ue("datastore:core:tiered");async function Lv(r={}){let e=r.datastore??new ic,t=r.blockstore??new rc,n=new cp({...r,datastore:e,blockstore:t,blockBrokers:r.blockBrokers??[xa()],routers:r.routers??[Ja("https://delegated-ipfs.dev")]});return r.start!==!1&&await n.start(),n}var om=class{components;constructor(e){this.components=e}async add(e,t={}){let n=pv(e),i=await(t.hasher??ae).digest(n),o=V.createV1(Ai,i);return await this.components.blockstore.put(o,n,t),o}async get(e,t={}){let n=await this.components.blockstore.get(e,t);return tp(n)}};function Pv(r){return new om(r)}var sm=class{components;constructor(e){this.components=e}async add(e,t={}){let n=fv(e),i=await(t.hasher??ae).digest(n),o=V.createV1(Bi,i);return await this.components.blockstore.put(o,n,t),o}async get(e,t={}){let n=await this.components.blockstore.get(e,t);return ip(n)}};function Ov(r){return new sm(r)}var am=ee(ku(),1);function Fv(r,e){let t=e.map((n,i)=>({record:wt(n),index:i}));return t.sort((n,i)=>{let o=n.record.sequence,s=i.record.sequence;if(o>s)return-1;if(o<s)return 1;if(n.record.validityType===ot.ValidityType.EOL&&i.record.validityType===ot.ValidityType.EOL){let a=am.default.fromString(n.record.validity).toDate(),c=am.default.fromString(i.record.validity).toDate();if(a.getTime()>c.getTime())return-1;if(a.getTime()<c.getTime())return 1}return 0}),t[0].index}var dm={};j(dm,{base58btc:()=>vt,base58flickr:()=>zI});function DI(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function p(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var h=0,x=0,g=0,y=f.length;g!==y&&f[g]===0;)g++,h++;for(var w=(y-g)*l+1>>>0,E=new Uint8Array(w);g!==y;){for(var B=f[g],S=0,b=w-1;(B!==0||S<x)&&b!==-1;b--,S++)B+=256*E[b]>>>0,E[b]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=S,g++}for(var v=w-x;v!==w&&E[v]===0;)v++;for(var k=c.repeat(h);v<w;++v)k+=r.charAt(E[v]);return k}function m(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var h=0;if(f[h]!==" "){for(var x=0,g=0;f[h]===c;)x++,h++;for(var y=(f.length-h)*u+1>>>0,w=new Uint8Array(y);f[h];){var E=t[f.charCodeAt(h)];if(E===255)return;for(var B=0,S=y-1;(E!==0||B<g)&&S!==-1;S--,B++)E+=a*w[S]>>>0,w[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=B,h++}if(f[h]!==" "){for(var b=y-g;b!==y&&w[b]===0;)b++;for(var v=new Uint8Array(x+(y-b)),k=x;b!==y;)v[k++]=w[b++];return v}}}function d(f){var h=m(f);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:m,decode:d}}var LI=DI,PI=LI,zv=PI;var pG=new Uint8Array(0);var Vv=(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},Cn=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")};var Mv=r=>new TextEncoder().encode(r),jv=r=>new TextDecoder().decode(r);var cm=class{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")}},lm=class{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 Hv(this,e)}},um=class{constructor(e){this.decoders=e}or(e){return Hv(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},Hv=(r,e)=>new um({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),pm=class{constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new cm(e,t,n),this.decoder=new lm(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},ws=({name:r,prefix:e,encode:t,decode:n})=>new pm(r,e,t,n),ki=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:i}=zv(t,e);return ws({prefix:r,name:e,encode:n,decode:o=>Cn(i(o))})},OI=(r,e,t,n)=>{let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let p=i[r[l]];if(p===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|p,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},FI=(r,e,t)=>{let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o},Ne=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>ws({prefix:e,name:r,encode(i){return FI(i,n,t)},decode(i){return OI(i,n,t,r)}});var vt=ki({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),zI=ki({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var fm={};j(fm,{base32:()=>Hr,base32hex:()=>$I,base32hexpad:()=>qI,base32hexpadupper:()=>KI,base32hexupper:()=>HI,base32pad:()=>MI,base32padupper:()=>jI,base32upper:()=>VI,base32z:()=>GI});var Hr=Ne({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),VI=Ne({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),MI=Ne({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),jI=Ne({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),$I=Ne({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),HI=Ne({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),qI=Ne({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),KI=Ne({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),GI=Ne({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var WI=Gv,qv=128,YI=127,XI=~YI,JI=Math.pow(2,31);function Gv(r,e,t){e=e||[],t=t||0;for(var n=t;r>=JI;)e[t++]=r&255|qv,r/=128;for(;r&XI;)e[t++]=r&255|qv,r>>>=7;return e[t]=r|0,Gv.bytes=t-n+1,e}var ZI=hm,QI=128,Kv=127;function hm(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw hm.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&Kv)<<i:(s&Kv)*Math.pow(2,i),i+=7}while(s>=QI);return hm.bytes=o-n,t}var e_=Math.pow(2,7),t_=Math.pow(2,14),r_=Math.pow(2,21),n_=Math.pow(2,28),i_=Math.pow(2,35),o_=Math.pow(2,42),s_=Math.pow(2,49),a_=Math.pow(2,56),c_=Math.pow(2,63),l_=function(r){return r<e_?1:r<t_?2:r<r_?3:r<n_?4:r<i_?5:r<o_?6:r<s_?7:r<a_?8:r<c_?9:10},u_={encode:WI,decode:ZI,encodingLength:l_},p_=u_,oc=p_;var sc=(r,e=0)=>[oc.decode(r,e),oc.decode.bytes],bs=(r,e,t=0)=>(oc.encode(r,e,t),e),vs=r=>oc.encodingLength(r);var co=(r,e)=>{let t=e.byteLength,n=vs(r),i=n+vs(t),o=new Uint8Array(i+t);return bs(r,o,0),bs(t,o,n),o.set(e,i),new Es(r,t,e,o)},ac=r=>{let e=Cn(r),[t,n]=sc(e),[i,o]=sc(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Es(t,i,s,e)},Wv=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Vv(r.bytes,t.bytes)}},Es=class{constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};var wm={};j(wm,{base10:()=>x_});function d_(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function p(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var h=0,x=0,g=0,y=f.length;g!==y&&f[g]===0;)g++,h++;for(var w=(y-g)*l+1>>>0,E=new Uint8Array(w);g!==y;){for(var B=f[g],S=0,b=w-1;(B!==0||S<x)&&b!==-1;b--,S++)B+=256*E[b]>>>0,E[b]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=S,g++}for(var v=w-x;v!==w&&E[v]===0;)v++;for(var k=c.repeat(h);v<w;++v)k+=r.charAt(E[v]);return k}function m(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var h=0;if(f[h]!==" "){for(var x=0,g=0;f[h]===c;)x++,h++;for(var y=(f.length-h)*u+1>>>0,w=new Uint8Array(y);f[h];){var E=t[f.charCodeAt(h)];if(E===255)return;for(var B=0,S=y-1;(E!==0||B<g)&&S!==-1;S--,B++)E+=a*w[S]>>>0,w[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=B,h++}if(f[h]!==" "){for(var b=y-g;b!==y&&w[b]===0;)b++;for(var v=new Uint8Array(x+(y-b)),k=x;b!==y;)v[k++]=w[b++];return v}}}function d(f){var h=m(f);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:m,decode:d}}var f_=d_,h_=f_,Yv=h_;var vG=new Uint8Array(0);var Xv=(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},Rn=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")};var Jv=r=>new TextEncoder().encode(r),Zv=r=>new TextDecoder().decode(r);var mm=class{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")}},gm=class{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 e2(this,e)}},xm=class{constructor(e){this.decoders=e}or(e){return e2(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},e2=(r,e)=>new xm({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),ym=class{constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new mm(e,t,n),this.decoder=new gm(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},As=({name:r,prefix:e,encode:t,decode:n})=>new ym(r,e,t,n),Ii=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:i}=Yv(t,e);return As({prefix:r,name:e,encode:n,decode:o=>Rn(i(o))})},m_=(r,e,t,n)=>{let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let p=i[r[l]];if(p===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|p,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},g_=(r,e,t)=>{let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o},De=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>As({prefix:e,name:r,encode(i){return g_(i,n,t)},decode(i){return m_(i,n,t,r)}});var x_=Ii({prefix:"9",name:"base10",alphabet:"0123456789"});var bm={};j(bm,{base16:()=>y_,base16upper:()=>w_});var y_=De({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),w_=De({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var vm={};j(vm,{base2:()=>b_});var b_=De({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Em={};j(Em,{base256emoji:()=>B_});var t2=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}"),v_=t2.reduce((r,e,t)=>(r[t]=e,r),[]),E_=t2.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function A_(r){return r.reduce((e,t)=>(e+=v_[t],e),"")}function S_(r){let e=[];for(let t of r){let n=E_[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var B_=As({prefix:"\u{1F680}",name:"base256emoji",encode:A_,decode:S_});var Am={};j(Am,{base32:()=>Ss,base32hex:()=>T_,base32hexpad:()=>R_,base32hexpadupper:()=>U_,base32hexupper:()=>C_,base32pad:()=>I_,base32padupper:()=>__,base32upper:()=>k_,base32z:()=>N_});var Ss=De({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),k_=De({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),I_=De({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),__=De({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),T_=De({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),C_=De({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),R_=De({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),U_=De({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),N_=De({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Sm={};j(Sm,{base36:()=>D_,base36upper:()=>L_});var D_=Ii({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),L_=Ii({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Bm={};j(Bm,{base58btc:()=>qr,base58flickr:()=>P_});var qr=Ii({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),P_=Ii({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var km={};j(km,{base64:()=>O_,base64pad:()=>F_,base64url:()=>z_,base64urlpad:()=>V_});var O_=De({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),F_=De({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),z_=De({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),V_=De({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Im={};j(Im,{base8:()=>M_});var M_=De({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var _m={};j(_m,{identity:()=>j_});var j_=As({prefix:"\0",name:"identity",encode:r=>Zv(r),decode:r=>Jv(r)});var PG=new TextEncoder,OG=new TextDecoder;var Cm={};j(Cm,{identity:()=>pT});var q_=i2,r2=128,K_=127,G_=~K_,W_=Math.pow(2,31);function i2(r,e,t){e=e||[],t=t||0;for(var n=t;r>=W_;)e[t++]=r&255|r2,r/=128;for(;r&G_;)e[t++]=r&255|r2,r>>>=7;return e[t]=r|0,i2.bytes=t-n+1,e}var Y_=Tm,X_=128,n2=127;function Tm(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Tm.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&n2)<<i:(s&n2)*Math.pow(2,i),i+=7}while(s>=X_);return Tm.bytes=o-n,t}var J_=Math.pow(2,7),Z_=Math.pow(2,14),Q_=Math.pow(2,21),eT=Math.pow(2,28),tT=Math.pow(2,35),rT=Math.pow(2,42),nT=Math.pow(2,49),iT=Math.pow(2,56),oT=Math.pow(2,63),sT=function(r){return r<J_?1:r<Z_?2:r<Q_?3:r<eT?4:r<tT?5:r<rT?6:r<nT?7:r<iT?8:r<oT?9:10},aT={encode:q_,decode:Y_,encodingLength:sT},cT=aT,cc=cT;var lc=(r,e=0)=>[cc.decode(r,e),cc.decode.bytes],Bs=(r,e,t=0)=>(cc.encode(r,e,t),e),ks=r=>cc.encodingLength(r);var uo=(r,e)=>{let t=e.byteLength,n=ks(r),i=n+ks(t),o=new Uint8Array(i+t);return Bs(r,o,0),Bs(t,o,n),o.set(e,i),new Is(r,t,e,o)},o2=r=>{let e=Rn(r),[t,n]=lc(e),[i,o]=lc(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Is(t,i,s,e)},s2=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&Xv(r.bytes,t.bytes)}},Is=class{constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};var a2=0,lT="identity",c2=Rn,uT=r=>uo(a2,c2(r)),pT={code:a2,name:lT,encode:c2,digest:uT};var Nm={};j(Nm,{sha256:()=>dT,sha512:()=>fT});var Um=({name:r,code:e,encode:t})=>new Rm(r,e,t),Rm=class{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?uo(this.code,t):t.then(n=>uo(this.code,n))}else throw Error("Unknown type, must be binary type")}};var u2=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),dT=Um({name:"sha2-256",code:18,encode:u2("SHA-256")}),fT=Um({name:"sha2-512",code:19,encode:u2("SHA-512")});var p2=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return mT(t,Dm(r),e||qr.encoder);default:return gT(t,Dm(r),e||Ss.encoder)}};var d2=new WeakMap,Dm=r=>{let e=d2.get(r);if(e==null){let t=new Map;return d2.set(r,t),t}return e},hp=class r{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!==pc)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==xT)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=uo(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&&e.code===n.code&&e.version===n.version&&s2(e.multihash,n.multihash)}toString(e){return p2(this,e)}toJSON(){return{"/":p2(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s||f2(n,i,o.bytes))}else if(t[yT]===!0){let{version:n,multihash:i,code:o}=t,s=o2(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==pc)throw new Error(`Version 0 CID must use dag-pb (code: ${pc}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=f2(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,pc,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=Rn(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Is(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[p,m]=lc(e.subarray(t));return t+=m,p},i=n(),o=pc;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=hT(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Dm(o).set(n,e),o}},hT=(r,e)=>{switch(r[0]){case"Q":{let t=e||qr;return[qr.prefix,t.decode(`${qr.prefix}${r}`)]}case qr.prefix:{let t=e||qr;return[qr.prefix,t.decode(r)]}case Ss.prefix:{let t=e||Ss;return[Ss.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)]}}},mT=(r,e,t)=>{let{prefix:n}=t;if(n!==qr.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i},gT=(r,e,t)=>{let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i},pc=112,xT=18,f2=(r,e,t)=>{let n=ks(r),i=n+ks(e),o=new Uint8Array(i+t.byteLength);return Bs(r,o,0),Bs(e,o,n),o.set(t,i),o},yT=Symbol.for("@ipld/js-cid/CID");var Lm={..._m,...vm,...Im,...wm,...bm,...Am,...Sm,...Bm,...km,...Em},QG={...Nm,...Cm};function _s(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function mp(r=0){return globalThis.Buffer?.allocUnsafe!=null?_s(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function m2(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var h2=m2("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Pm=m2("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=mp(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),wT={utf8:h2,"utf-8":h2,hex:Lm.base16,latin1:Pm,ascii:Pm,binary:Pm,...Lm},gp=wT;function Et(r,e="utf8"){let t=gp[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}var g2=jo,bT=$o,Om=function(r){let e=0;if(r=r.toString().trim(),g2(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(bT(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let o=g2(t[n]),s;o&&(s=Om(t[n]),t[n]=Et(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,Et(s.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let o=[n,1];for(n=9-t.length;n>0;n--)o.push("0");t.splice.apply(t,o)}let i=new Uint8Array(e+16);for(n=0;n<t.length;n++){let o=parseInt(t[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},x2=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let i=[];for(let o=0;o<t;o++)i.push(r[e+o]);return i.join(".")}if(t===16){let i=[];for(let o=0;o<t;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var dc={},Fm={},ET=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc"],[281,0,"webrtc-w3c"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];ET.forEach(r=>{let e=AT(...r);Fm[e.code]=e,dc[e.name]=e});function AT(r,e,t,n,i){return{code:r,size:e,name:t,resolvable:!!n,path:!!i}}function Ie(r){if(typeof r=="number"){if(Fm[r]!=null)return Fm[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(dc[r]!=null)return dc[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var y2=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return BT(t,zm(r),e||vt.encoder);default:return kT(t,zm(r),e||Hr.encoder)}};var w2=new WeakMap,zm=r=>{let e=w2.get(r);if(e==null){let t=new Map;return w2.set(r,t),t}return e},ur=class r{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!==fc)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==IT)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=co(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&&e.code===n.code&&e.version===n.version&&Wv(e.multihash,n.multihash)}toString(e){return y2(this,e)}toJSON(){return{"/":y2(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s||b2(n,i,o.bytes))}else if(t[_T]===!0){let{version:n,multihash:i,code:o}=t,s=ac(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==fc)throw new Error(`Version 0 CID must use dag-pb (code: ${fc}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=b2(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,fc,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=Cn(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Es(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[p,m]=sc(e.subarray(t));return t+=m,p},i=n(),o=fc;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=ST(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return zm(o).set(n,e),o}},ST=(r,e)=>{switch(r[0]){case"Q":{let t=e||vt;return[vt.prefix,t.decode(`${vt.prefix}${r}`)]}case vt.prefix:{let t=e||vt;return[vt.prefix,t.decode(r)]}case Hr.prefix:{let t=e||Hr;return[Hr.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)]}}},BT=(r,e,t)=>{let{prefix:n}=t;if(n!==vt.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i},kT=(r,e,t)=>{let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i},fc=112,IT=18,b2=(r,e,t)=>{let n=vs(r),i=n+vs(e),o=new Uint8Array(i+t.byteLength);return bs(r,o,0),bs(e,o,n),o.set(t,i),o},_T=Symbol.for("@ipld/js-cid/CID");var Vm={};j(Vm,{identity:()=>TT});var TT=ws({prefix:"\0",name:"identity",encode:r=>jv(r),decode:r=>Mv(r)});var Mm={};j(Mm,{base2:()=>CT});var CT=Ne({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var jm={};j(jm,{base8:()=>RT});var RT=Ne({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var $m={};j($m,{base10:()=>UT});var UT=ki({prefix:"9",name:"base10",alphabet:"0123456789"});var Hm={};j(Hm,{base16:()=>NT,base16upper:()=>DT});var NT=Ne({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),DT=Ne({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qm={};j(qm,{base36:()=>LT,base36upper:()=>PT});var LT=ki({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),PT=ki({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Km={};j(Km,{base64:()=>OT,base64pad:()=>FT,base64url:()=>zT,base64urlpad:()=>VT});var OT=Ne({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),FT=Ne({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),zT=Ne({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),VT=Ne({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gm={};j(Gm,{base256emoji:()=>qT});var v2=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}"),MT=v2.reduce((r,e,t)=>(r[t]=e,r),[]),jT=v2.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function $T(r){return r.reduce((e,t)=>(e+=MT[t],e),"")}function HT(r){let e=[];for(let t of r){let n=jT[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var qT=ws({prefix:"\u{1F680}",name:"base256emoji",encode:$T,decode:HT});var Xm={};j(Xm,{sha256:()=>KT,sha512:()=>GT});var Ym=({name:r,code:e,encode:t})=>new Wm(r,e,t),Wm=class{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?co(this.code,t):t.then(n=>co(this.code,n))}else throw Error("Unknown type, must be binary type")}};var A2=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),KT=Ym({name:"sha2-256",code:18,encode:A2("SHA-256")}),GT=Ym({name:"sha2-512",code:19,encode:A2("SHA-512")});var Jm={};j(Jm,{identity:()=>XT});var S2=0,WT="identity",B2=Cn,YT=r=>co(S2,B2(r)),XT={code:S2,name:WT,encode:B2,digest:YT};var CW=new TextEncoder,RW=new TextDecoder;var k2={...Vm,...Mm,...jm,...$m,...Hm,...fm,...qm,...dm,...Km,...Gm},PW={...Xm,...Jm};var Kr=ee(ol(),1);function Zm(r,e="utf8"){let t=gp[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?_s(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}function Un(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=mp(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return _s(t)}function R2(r,e){switch(Ie(r).code){case 4:case 41:return eC(e);case 42:return T2(e);case 6:case 273:case 33:case 132:return N2(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return T2(e);case 421:return iC(e);case 444:return C2(e);case 445:return C2(e);case 466:return nC(e);default:return Et(e,"base16")}}function U2(r,e){switch(Ie(r).code){case 4:return I2(e);case 41:return I2(e);case 42:return _2(e);case 6:case 273:case 33:case 132:return e0(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return _2(e);case 421:return tC(e);case 444:return oC(e);case 445:return sC(e);case 466:return rC(e);default:return Zm(e,"base16")}}var Qm=Object.values(k2).map(r=>r.decoder),QT=function(){let r=Qm[0].or(Qm[1]);return Qm.slice(2).forEach(e=>r=r.or(e)),r}();function I2(r){if(!ir(r))throw new Error("invalid ip address");return Om(r)}function eC(r){let e=x2(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!ir(e))throw new Error("invalid ip address");return e}function e0(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function N2(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function _2(r){let e=Zm(r),t=Uint8Array.from(Kr.default.encode(e.length));return Un([t,e],t.length+e.length)}function T2(r){let e=Kr.default.decode(r);if(r=r.slice(Kr.default.decode.bytes),r.length!==e)throw new Error("inconsistent lengths");return Et(r)}function tC(r){let e;r[0]==="Q"||r[0]==="1"?e=ac(vt.decode(`z${r}`)).bytes:e=ur.parse(r).multihash.bytes;let t=Uint8Array.from(Kr.default.encode(e.length));return Un([t,e],t.length+e.length)}function rC(r){let e=QT.decode(r),t=Uint8Array.from(Kr.default.encode(e.length));return Un([t,e],t.length+e.length)}function nC(r){let e=Kr.default.decode(r),t=r.slice(Kr.default.decode.bytes);if(t.length!==e)throw new Error("inconsistent lengths");return"u"+Et(t,"base64url")}function iC(r){let e=Kr.default.decode(r),t=r.slice(Kr.default.decode.bytes);if(t.length!==e)throw new Error("inconsistent lengths");return Et(t,"base58btc")}function oC(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=Hr.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=e0(n);return Un([t,i],t.length+i.length)}function sC(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=Hr.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=e0(n);return Un([t,i],t.length+i.length)}function C2(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=Et(e,"base32"),i=N2(t);return`${n}:${i}`}var Ts=ee(ol(),1);function aC(r){let e=[],t=r.split("/").slice(1);if(t.length===1&&t[0]==="")return[];for(let n=0;n<t.length;n++){let i=t[n],o=Ie(i);if(o.size===0){e.push([i]);continue}if(n++,n>=t.length)throw L2("invalid address: "+r);if(o.path===!0){e.push([i,o0(t.slice(n).join("/"))]);break}e.push([i,t[n]])}return e}function cC(r){let e=[];return r.map(t=>{let n=wp(t);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),o0(e.join("/"))}function lC(r){return r.map(e=>{Array.isArray(e)||(e=[e]);let t=wp(e);return e.length>1?[t.code,U2(t.code,e[1])]:[t.code]})}function t0(r){return r.map(e=>{let t=wp(e);return e[1]!=null?[t.code,R2(t.code,e[1])]:[t.code]})}function r0(r){return yp(Un(r.map(e=>{let t=wp(e),n=Uint8Array.from(Ts.default.encode(t.code));return e.length>1&&e[1]!=null&&(n=Un([n,e[1]])),n})))}function n0(r,e){return r.size>0?r.size/8:r.size===0?0:Ts.default.decode(e)+(Ts.default.decode.bytes??0)}function xp(r){let e=[],t=0;for(;t<r.length;){let n=Ts.default.decode(r,t),i=Ts.default.decode.bytes??0,o=Ie(n),s=n0(o,r.slice(t+i));if(s===0){e.push([n]),t+=i;continue}let a=r.slice(t+i,t+i+s);if(t+=s+i,t>r.length)throw L2("Invalid address Uint8Array: "+Et(r,"base16"));e.push([n,a])}return e}function i0(r){let e=xp(r),t=t0(e);return cC(t)}function uC(r){r=o0(r);let e=aC(r),t=lC(e);return r0(t)}function D2(r){return uC(r)}function yp(r){let e=pC(r);if(e!=null)throw e;return Uint8Array.from(r)}function pC(r){try{xp(r)}catch(e){return e}}function o0(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function L2(r){return new Error("Error parsing address: "+r)}function wp(r){return Ie(r[0])}var a0=ee(ol(),1);var z2=ee(Ce(),1);function P2(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 Cs=function(r,e,t,n){if(t==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?n:t==="a"?n.call(r):n?n.value:e.get(r)},s0=function(r,e,t,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t},hc,mc,gc,O2,fC=Symbol.for("nodejs.util.inspect.custom"),hC=[Ie("dns").code,Ie("dns4").code,Ie("dns6").code,Ie("dnsaddr").code],mC=new Map,V2=Symbol.for("@multiformats/js-multiaddr/multiaddr");function gC(r){return!!r?.[V2]}var F2=class r{constructor(e){if(hc.set(this,void 0),mc.set(this,void 0),gc.set(this,void 0),this[O2]=!0,e==null&&(e=""),e instanceof Uint8Array)this.bytes=yp(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);this.bytes=D2(e)}else if(gC(e))this.bytes=yp(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr")}toString(){return Cs(this,hc,"f")==null&&s0(this,hc,i0(this.bytes),"f"),Cs(this,hc,"f")}toJSON(){return this.toString()}toOptions(){let e,t,n,i,o="",s=Ie("tcp"),a=Ie("udp"),c=Ie("ip4"),u=Ie("ip6"),l=Ie("dns6"),p=Ie("ip6zone");for(let[d,f]of this.stringTuples())d===p.code&&(o=`%${f??""}`),hC.includes(d)&&(t=s.name,i=443,n=`${f??""}${o}`,e=d===l.code?6:4),(d===s.code||d===a.code)&&(t=Ie(d).name,i=parseInt(f??"")),(d===c.code||d===u.code)&&(t=Ie(d).name,n=`${f??""}${o}`,e=d===u.code?6:4);if(e==null||t==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:i}}protos(){return this.protoCodes().map(e=>Object.assign({},Ie(e)))}protoCodes(){let e=[],t=this.bytes,n=0;for(;n<t.length;){let i=a0.default.decode(t,n),o=a0.default.decode.bytes??0,s=Ie(i),a=n0(s,t.slice(n+o));n+=a+o,e.push(i)}return e}protoNames(){return this.protos().map(e=>e.name)}tuples(){return Cs(this,mc,"f")==null&&s0(this,mc,xp(this.bytes),"f"),Cs(this,mc,"f")}stringTuples(){return Cs(this,gc,"f")==null&&s0(this,gc,t0(this.tuples()),"f"),Cs(this,gc,"f")}encapsulate(e){return e=new r(e),new r(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),i=n.lastIndexOf(t);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new r(n.slice(0,i))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new r(r0(t.slice(0,n)));return this}getPeerId(){try{let t=this.stringTuples().filter(n=>n[0]===dc.ipfs.code).pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?Et(vt.decode(`z${n}`),"base58btc"):Et(ur.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){let e=null;try{e=this.stringTuples().filter(t=>Ie(t[0]).path===!0)[0][1],e==null&&(e=null)}catch{e=null}return e}equals(e){return P2(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(o=>o.resolvable);if(t==null)return[this];let n=mC.get(t.name);if(n==null)throw(0,z2.default)(new Error(`no available resolver for ${t.name}`),"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new r(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[(hc=new WeakMap,mc=new WeakMap,gc=new WeakMap,O2=V2,fC)](){return`Multiaddr(${i0(this.bytes)})`}};var d0={};j(d0,{base58btc:()=>Ut,base58flickr:()=>EC});var uY=new Uint8Array(0);function M2(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 Nn(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 j2(r){return new TextEncoder().encode(r)}function $2(r){return new TextDecoder().decode(r)}function xC(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function p(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var h=0,x=0,g=0,y=f.length;g!==y&&f[g]===0;)g++,h++;for(var w=(y-g)*l+1>>>0,E=new Uint8Array(w);g!==y;){for(var B=f[g],S=0,b=w-1;(B!==0||S<x)&&b!==-1;b--,S++)B+=256*E[b]>>>0,E[b]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=S,g++}for(var v=w-x;v!==w&&E[v]===0;)v++;for(var k=c.repeat(h);v<w;++v)k+=r.charAt(E[v]);return k}function m(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var h=0;if(f[h]!==" "){for(var x=0,g=0;f[h]===c;)x++,h++;for(var y=(f.length-h)*u+1>>>0,w=new Uint8Array(y);f[h];){var E=t[f.charCodeAt(h)];if(E===255)return;for(var B=0,S=y-1;(E!==0||B<g)&&S!==-1;S--,B++)E+=a*w[S]>>>0,w[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=B,h++}if(f[h]!==" "){for(var b=y-g;b!==y&&w[b]===0;)b++;for(var v=new Uint8Array(x+(y-b)),k=x;b!==y;)v[k++]=w[b++];return v}}}function d(f){var h=m(f);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:m,decode:d}}var yC=xC,wC=yC,q2=wC;var c0=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")}},l0=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 K2(this,e)}},u0=class{decoders;constructor(e){this.decoders=e}or(e){return K2(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 K2(r,e){return new u0({...r.decoders??{[r.prefix]:r},...e.decoders??{[e.prefix]:e}})}var p0=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 c0(e,t,n),this.decoder=new l0(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}};function Rs({name:r,prefix:e,encode:t,decode:n}){return new p0(r,e,t,n)}function _i({name:r,prefix:e,alphabet:t}){let{encode:n,decode:i}=q2(t,r);return Rs({prefix:e,name:r,encode:n,decode:o=>Nn(i(o))})}function bC(r,e,t,n){let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let p=i[r[l]];if(p===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|p,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s}function vC(r,e,t){let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s!==0&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o}function Le({name:r,prefix:e,bitsPerChar:t,alphabet:n}){return Rs({prefix:e,name:r,encode(i){return vC(i,n,t)},decode(i){return bC(i,n,t,r)}})}var Ut=_i({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),EC=_i({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var f0={};j(f0,{base32:()=>Dn,base32hex:()=>kC,base32hexpad:()=>_C,base32hexpadupper:()=>TC,base32hexupper:()=>IC,base32pad:()=>SC,base32padupper:()=>BC,base32upper:()=>AC,base32z:()=>CC});var Dn=Le({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),AC=Le({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),SC=Le({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),BC=Le({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),kC=Le({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),IC=Le({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),_C=Le({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),TC=Le({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),CC=Le({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var RC=Y2,G2=128,UC=127,NC=~UC,DC=Math.pow(2,31);function Y2(r,e,t){e=e||[],t=t||0;for(var n=t;r>=DC;)e[t++]=r&255|G2,r/=128;for(;r&NC;)e[t++]=r&255|G2,r>>>=7;return e[t]=r|0,Y2.bytes=t-n+1,e}var LC=h0,PC=128,W2=127;function h0(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw h0.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&W2)<<i:(s&W2)*Math.pow(2,i),i+=7}while(s>=PC);return h0.bytes=o-n,t}var OC=Math.pow(2,7),FC=Math.pow(2,14),zC=Math.pow(2,21),VC=Math.pow(2,28),MC=Math.pow(2,35),jC=Math.pow(2,42),$C=Math.pow(2,49),HC=Math.pow(2,56),qC=Math.pow(2,63),KC=function(r){return r<OC?1:r<FC?2:r<zC?3:r<VC?4:r<MC?5:r<jC?6:r<$C?7:r<HC?8:r<qC?9:10},GC={encode:RC,decode:LC,encodingLength:KC},WC=GC,xc=WC;function yc(r,e=0){return[xc.decode(r,e),xc.decode.bytes]}function Us(r,e,t=0){return xc.encode(r,e,t),e}function Ns(r){return xc.encodingLength(r)}function po(r,e){let t=e.byteLength,n=Ns(r),i=n+Ns(t),o=new Uint8Array(i+t);return Us(r,o,0),Us(t,o,n),o.set(e,i),new Ds(r,t,e,o)}function vp(r){let e=Nn(r),[t,n]=yc(e),[i,o]=yc(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Ds(t,i,s,e)}function X2(r,e){if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&M2(r.bytes,t.bytes)}}var Ds=class{code;size;digest;bytes;constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};function J2(r,e){let{bytes:t,version:n}=r;switch(n){case 0:return XC(t,m0(r),e??Ut.encoder);default:return JC(t,m0(r),e??Dn.encoder)}}var Z2=new WeakMap;function m0(r){let e=Z2.get(r);if(e==null){let t=new Map;return Z2.set(r,t),t}return e}var Ti=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!==wc)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==ZC)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=po(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&&X2(e.multihash,n.multihash)}toString(e){return J2(this,e)}toJSON(){return{"/":J2(this)}}link(){return this}[Symbol.toStringTag]="CID";[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s??Q2(n,i,o.bytes))}else if(t[QC]===!0){let{version:n,multihash:i,code:o}=t,s=vp(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==wc)throw new Error(`Version 0 CID must use dag-pb (code: ${wc}) 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,wc,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=Nn(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Ds(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[p,m]=yc(e.subarray(t));return t+=m,p},i=n(),o=wc;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=YC(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return m0(o).set(n,e),o}};function YC(r,e){switch(r[0]){case"Q":{let t=e??Ut;return[Ut.prefix,t.decode(`${Ut.prefix}${r}`)]}case Ut.prefix:{let t=e??Ut;return[Ut.prefix,t.decode(r)]}case Dn.prefix:{let t=e??Dn;return[Dn.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 XC(r,e,t){let{prefix:n}=t;if(n!==Ut.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i}function JC(r,e,t){let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i}var wc=112,ZC=18;function Q2(r,e,t){let n=Ns(r),i=n+Ns(e),o=new Uint8Array(i+t.byteLength);return Us(r,o,0),Us(e,o,n),o.set(t,i),o}var QC=Symbol.for("@ipld/js-cid/CID");function eE(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 g0={};j(g0,{base10:()=>eR});var eR=_i({prefix:"9",name:"base10",alphabet:"0123456789"});var x0={};j(x0,{base16:()=>tR,base16upper:()=>rR});var tR=Le({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),rR=Le({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var y0={};j(y0,{base2:()=>nR});var nR=Le({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var w0={};j(w0,{base256emoji:()=>cR});var tE=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),iR=tE.reduce((r,e,t)=>(r[t]=e,r),[]),oR=tE.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function sR(r){return r.reduce((e,t)=>(e+=iR[t],e),"")}function aR(r){let e=[];for(let t of r){let n=oR[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var cR=Rs({prefix:"\u{1F680}",name:"base256emoji",encode:sR,decode:aR});var b0={};j(b0,{base36:()=>lR,base36upper:()=>uR});var lR=_i({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),uR=_i({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var v0={};j(v0,{base64:()=>pR,base64pad:()=>dR,base64url:()=>fR,base64urlpad:()=>hR});var pR=Le({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),dR=Le({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),fR=Le({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),hR=Le({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var E0={};j(E0,{base8:()=>mR});var mR=Le({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var A0={};j(A0,{identity:()=>gR});var gR=Rs({prefix:"\0",name:"identity",encode:r=>$2(r),decode:r=>j2(r)});var LY=new TextEncoder,PY=new TextDecoder;var S0={};j(S0,{identity:()=>vR});var rE=0,wR="identity",nE=Nn;function bR(r){return po(rE,nE(r))}var vR={code:rE,name:wR,encode:nE,digest:bR};var I0={};j(I0,{sha256:()=>ER,sha512:()=>AR});function k0({name:r,code:e,encode:t}){return new B0(r,e,t)}var B0=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?po(this.code,t):t.then(n=>po(this.code,n))}else throw Error("Unknown type, must be binary type")}};function oE(r){return async e=>new Uint8Array(await crypto.subtle.digest(r,e))}var ER=k0({name:"sha2-256",code:18,encode:oE("SHA-256")}),AR=k0({name:"sha2-512",code:19,encode:oE("SHA-512")});var bc={...A0,...y0,...E0,...g0,...x0,...f0,...b0,...d0,...v0,...w0},YY={...I0,...S0};function fo(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}function Ep(r=0){return globalThis.Buffer?.allocUnsafe!=null?fo(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function aE(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var sE=aE("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),_0=aE("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=Ep(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),SR={utf8:sE,"utf-8":sE,hex:bc.base16,latin1:_0,ascii:_0,binary:_0,...bc},Ap=SR;function Nt(r,e="utf8"){let t=Ap[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(r.buffer,r.byteOffset,r.byteLength).toString("utf8"):t.encoder.encode(r).substring(1)}function Ln(r,e){if(globalThis.Buffer!=null)return fo(globalThis.Buffer.concat(r,e));e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=Ep(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return fo(t)}function T0(r,e="utf8"){let t=Ap[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?fo(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}var cE=jo,BR=$o,C0=function(r){let e=0;if(r=r.toString().trim(),cE(r)){let t=new Uint8Array(e+4);return r.split(/\./g).forEach(n=>{t[e++]=parseInt(n,10)&255}),t}if(BR(r)){let t=r.split(":",8),n;for(n=0;n<t.length;n++){let o=cE(t[n]),s;o&&(s=C0(t[n]),t[n]=Nt(s.slice(0,2),"base16")),s!=null&&++n<8&&t.splice(n,0,Nt(s.slice(2,4),"base16"))}if(t[0]==="")for(;t.length<8;)t.unshift("0");else if(t[t.length-1]==="")for(;t.length<8;)t.push("0");else if(t.length<8){for(n=0;n<t.length&&t[n]!=="";n++);let o=[n,1];for(n=9-t.length;n>0;n--)o.push("0");t.splice.apply(t,o)}let i=new Uint8Array(e+16);for(n=0;n<t.length;n++){let o=parseInt(t[n],16);i[e++]=o>>8&255,i[e++]=o&255}return i}throw new Error("invalid ip address")},lE=function(r,e=0,t){e=~~e,t=t??r.length-e;let n=new DataView(r.buffer);if(t===4){let i=[];for(let o=0;o<t;o++)i.push(r[e+o]);return i.join(".")}if(t===16){let i=[];for(let o=0;o<t;o+=2)i.push(n.getUint16(e+o).toString(16));return i.join(":").replace(/(^|:)0(:0)*:0(:|$)/,"$1::$3").replace(/:{3,4}/,"::")}return""};var Ps={},R0={},IR=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,-1,"ip6zone"],[43,8,"ipcidr"],[53,-1,"dns",!0],[54,-1,"dns4",!0],[55,-1,"dns6",!0],[56,-1,"dnsaddr",!0],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[280,0,"webrtc-direct"],[281,0,"webrtc"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,-1,"unix",!1,!0],[421,-1,"ipfs"],[421,-1,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,-1,"garlic64"],[448,0,"tls"],[449,-1,"sni"],[460,0,"quic"],[461,0,"quic-v1"],[465,0,"webtransport"],[466,-1,"certhash"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,-1,"memory"]];IR.forEach(r=>{let e=_R(...r);R0[e.code]=e,Ps[e.name]=e});function _R(r,e,t,n,i){return{code:r,size:e,name:t,resolvable:!!n,path:!!i}}function Ee(r){if(typeof r=="number"){if(R0[r]!=null)return R0[r];throw new Error(`no protocol with code: ${r}`)}else if(typeof r=="string"){if(Ps[r]!=null)return Ps[r];throw new Error(`no protocol with name: ${r}`)}throw new Error(`invalid protocol id type: ${typeof r}`)}var SX=Ee("ip4"),BX=Ee("ip6"),kX=Ee("ipcidr");function N0(r,e){switch(Ee(r).code){case 4:case 41:return CR(e);case 42:return dE(e);case 6:case 273:case 33:case 132:return hE(e).toString();case 53:case 54:case 55:case 56:case 400:case 449:case 777:return dE(e);case 421:return DR(e);case 444:return fE(e);case 445:return fE(e);case 466:return NR(e);default:return Nt(e,"base16")}}function D0(r,e){switch(Ee(r).code){case 4:return uE(e);case 41:return uE(e);case 42:return pE(e);case 6:case 273:case 33:case 132:return L0(parseInt(e,10));case 53:case 54:case 55:case 56:case 400:case 449:case 777:return pE(e);case 421:return RR(e);case 444:return LR(e);case 445:return PR(e);case 466:return UR(e);default:return T0(e,"base16")}}var U0=Object.values(bc).map(r=>r.decoder),TR=function(){let r=U0[0].or(U0[1]);return U0.slice(2).forEach(e=>r=r.or(e)),r}();function uE(r){if(!ir(r))throw new Error("invalid ip address");return C0(r)}function CR(r){let e=lE(r,0,r.length);if(e==null)throw new Error("ipBuff is required");if(!ir(e))throw new Error("invalid ip address");return e}function L0(r){let e=new ArrayBuffer(2);return new DataView(e).setUint16(0,r),new Uint8Array(e)}function hE(r){return new DataView(r.buffer).getUint16(r.byteOffset)}function pE(r){let e=T0(r),t=Uint8Array.from(Qt(e.length));return Ln([t,e],t.length+e.length)}function dE(r){let e=kt(r);if(r=r.slice(Fe(e)),r.length!==e)throw new Error("inconsistent lengths");return Nt(r)}function RR(r){let e;r[0]==="Q"||r[0]==="1"?e=vp(Ut.decode(`z${r}`)).bytes:e=Ti.parse(r).multihash.bytes;let t=Uint8Array.from(Qt(e.length));return Ln([t,e],t.length+e.length)}function UR(r){let e=TR.decode(r),t=Uint8Array.from(Qt(e.length));return Ln([t,e],t.length+e.length)}function NR(r){let e=kt(r),t=r.slice(Fe(e));if(t.length!==e)throw new Error("inconsistent lengths");return"u"+Nt(t,"base64url")}function DR(r){let e=kt(r),t=r.slice(Fe(e));if(t.length!==e)throw new Error("inconsistent lengths");return Nt(t,"base58btc")}function LR(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==16)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion address.`);let t=Dn.decode("b"+e[0]),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=L0(n);return Ln([t,i],t.length+i.length)}function PR(r){let e=r.split(":");if(e.length!==2)throw new Error(`failed to parse onion addr: ["'${e.join('", "')}'"]' does not contain a port number`);if(e[0].length!==56)throw new Error(`failed to parse onion addr: ${e[0]} not a Tor onion3 address.`);let t=Dn.decode(`b${e[0]}`),n=parseInt(e[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");let i=L0(n);return Ln([t,i],t.length+i.length)}function fE(r){let e=r.slice(0,r.length-2),t=r.slice(r.length-2),n=Nt(e,"base32"),i=hE(t);return`${n}:${i}`}function mE(r){r=P0(r);let e=[],t=[],n=null,i=r.split("/").slice(1);if(i.length===1&&i[0]==="")return{bytes:new Uint8Array,string:"/",tuples:[],stringTuples:[],path:null};for(let o=0;o<i.length;o++){let s=i[o],a=Ee(s);if(a.size===0){e.push([a.code]),t.push([a.code]);continue}if(o++,o>=i.length)throw xE("invalid address: "+r);if(a.path===!0){n=P0(i.slice(o).join("/")),e.push([a.code,D0(a.code,n)]),t.push([a.code,n]);break}let c=D0(a.code,i[o]);e.push([a.code,c]),t.push([a.code,N0(a.code,c)])}return{string:gE(t),bytes:F0(e),tuples:e,stringTuples:t,path:n}}function O0(r){let e=[],t=[],n=null,i=0;for(;i<r.length;){let o=kt(r,i),s=Fe(o),a=Ee(o),c=OR(a,r.slice(i+s));if(c===0){e.push([o]),t.push([o]),i+=s;continue}let u=r.slice(i+s,i+s+c);if(i+=c+s,i>r.length)throw xE("Invalid address Uint8Array: "+Nt(r,"base16"));e.push([o,u]);let l=N0(o,u);if(t.push([o,l]),a.path===!0){n=l;break}}return{bytes:Uint8Array.from(r),string:gE(t),tuples:e,stringTuples:t,path:n}}function gE(r){let e=[];return r.map(t=>{let n=Ee(t[0]);return e.push(n.name),t.length>1&&t[1]!=null&&e.push(t[1]),null}),P0(e.join("/"))}function F0(r){return Ln(r.map(e=>{let t=Ee(e[0]),n=Uint8Array.from(Qt(t.code));return e.length>1&&e[1]!=null&&(n=Ln([n,e[1]])),n}))}function OR(r,e){if(r.size>0)return r.size/8;if(r.size===0)return 0;{let t=kt(e instanceof Uint8Array?e:Uint8Array.from(e));return t+Fe(t)}}function P0(r){return"/"+r.trim().split("/").filter(e=>e).join("/")}function xE(r){return new Error("Error parsing address: "+r)}var FR=Symbol.for("nodejs.util.inspect.custom"),z0=Symbol.for("@multiformats/js-multiaddr/multiaddr"),zR=[Ee("dns").code,Ee("dns4").code,Ee("dns6").code,Ee("dnsaddr").code],Sp=class r{bytes;#e;#t;#r;#n;[z0]=!0;constructor(e){e==null&&(e="");let t;if(e instanceof Uint8Array)t=O0(e);else if(typeof e=="string"){if(e.length>0&&e.charAt(0)!=="/")throw new Error(`multiaddr "${e}" must start with a "/"`);t=mE(e)}else if(wE(e))t=O0(e.bytes);else throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=t.bytes,this.#e=t.string,this.#t=t.tuples,this.#r=t.stringTuples,this.#n=t.path}toString(){return this.#e}toJSON(){return this.toString()}toOptions(){let e,t,n,i,o="",s=Ee("tcp"),a=Ee("udp"),c=Ee("ip4"),u=Ee("ip6"),l=Ee("dns6"),p=Ee("ip6zone");for(let[d,f]of this.stringTuples())d===p.code&&(o=`%${f??""}`),zR.includes(d)&&(t=s.name,i=443,n=`${f??""}${o}`,e=d===l.code?6:4),(d===s.code||d===a.code)&&(t=Ee(d).name,i=parseInt(f??"")),(d===c.code||d===u.code)&&(t=Ee(d).name,n=`${f??""}${o}`,e=d===u.code?6:4);if(e==null||t==null||n==null||i==null)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6, dnsaddr}/{address}/{tcp, udp}/{port}".');return{family:e,host:n,transport:t,port:i}}protos(){return this.#t.map(([e])=>Object.assign({},Ee(e)))}protoCodes(){return this.#t.map(([e])=>e)}protoNames(){return this.#t.map(([e])=>Ee(e).name)}tuples(){return this.#t}stringTuples(){return this.#r}encapsulate(e){return e=new r(e),new r(this.toString()+e.toString())}decapsulate(e){let t=e.toString(),n=this.toString(),i=n.lastIndexOf(t);if(i<0)throw new Error(`Address ${this.toString()} does not contain subaddress: ${e.toString()}`);return new r(n.slice(0,i))}decapsulateCode(e){let t=this.tuples();for(let n=t.length-1;n>=0;n--)if(t[n][0]===e)return new r(F0(t.slice(0,n)));return this}getPeerId(){try{let e=[];this.stringTuples().forEach(([n,i])=>{n===Ps.p2p.code&&e.push([n,i]),n===Ps["p2p-circuit"].code&&(e=[])});let t=e.pop();if(t?.[1]!=null){let n=t[1];return n[0]==="Q"||n[0]==="1"?Nt(Ut.decode(`z${n}`),"base58btc"):Nt(Ti.parse(n).multihash.bytes,"base58btc")}return null}catch{return null}}getPath(){return this.#n}equals(e){return eE(this.bytes,e.bytes)}async resolve(e){let t=this.protos().find(o=>o.resolvable);if(t==null)return[this];let n=yE.get(t.name);if(n==null)throw new O(`no available resolver for ${t.name}`,"ERR_NO_AVAILABLE_RESOLVER");return(await n(this,e)).map(o=>new r(o))}nodeAddress(){let e=this.toOptions();if(e.transport!=="tcp"&&e.transport!=="udp")throw new Error(`multiaddr must have a valid format - no protocol with name: "${e.transport}". Must have a valid transport protocol: "{tcp, udp}"`);return{family:e.family,address:e.host,port:e.port}}isThinWaistAddress(e){let t=(e??this).protos();return!(t.length!==2||t[0].code!==4&&t[0].code!==41||t[1].code!==6&&t[1].code!==273)}[FR](){return`Multiaddr(${this.#e})`}};var yE=new Map;function wE(r){return!!r?.[z0]}function Bp(r){return new Sp(r)}var VR=K("dns4"),MR=K("dns6"),jR=K("dnsaddr"),ho=at(K("dns"),jR,VR,MR),kp=at(K("ip4"),K("ip6")),Os=at(te(kp,K("tcp")),te(ho,K("tcp"))),j0=te(kp,K("udp")),$R=te(j0,K("utp")),HR=te(j0,K("quic")),Ec=at(te(Os,K("ws")),te(ho,K("ws"))),Ac=at(te(Os,K("wss")),te(ho,K("wss")),te(Os,K("tls"),K("ws")),te(ho,K("tls"),K("ws"))),V0=at(te(Os,K("http")),te(kp,K("http")),te(ho,K("http"))),M0=at(te(Os,K("https")),te(kp,K("https")),te(ho,K("https"))),bE=te(j0,K("webrtc"),K("certhash")),EE=at(te(bE,K("p2p")),bE),AE=at(te(Ec,K("p2p-webrtc-star"),K("p2p")),te(Ac,K("p2p-webrtc-star"),K("p2p")),te(Ec,K("p2p-webrtc-star")),te(Ac,K("p2p-webrtc-star"))),ZX=at(te(Ec,K("p2p-websocket-star"),K("p2p")),te(Ac,K("p2p-websocket-star"),K("p2p")),te(Ec,K("p2p-websocket-star")),te(Ac,K("p2p-websocket-star"))),SE=at(te(V0,K("p2p-webrtc-direct"),K("p2p")),te(M0,K("p2p-webrtc-direct"),K("p2p")),te(V0,K("p2p-webrtc-direct")),te(M0,K("p2p-webrtc-direct"))),Sc=at(Ec,Ac,V0,M0,AE,SE,Os,$R,HR,ho,EE),QX=at(te(Sc,K("p2p-stardust"),K("p2p")),te(Sc,K("p2p-stardust"))),Ci=at(te(Sc,K("p2p")),AE,SE,EE,K("p2p")),vE=at(te(Ci,K("p2p-circuit"),Ci),te(Ci,K("p2p-circuit")),te(K("p2p-circuit"),Ci),te(Sc,K("p2p-circuit")),te(K("p2p-circuit"),Sc),K("p2p-circuit")),BE=()=>at(te(vE,BE),vE),vc=BE(),qR=at(te(vc,Ci,vc),te(Ci,vc),te(vc,Ci),vc,Ci);function kE(r){function e(t){let n;try{n=Bp(t)}catch{return!1}let i=r(n.protoNames());return i===null?!1:i===!0||i===!1?i:i.length===0}return e}function te(...r){function e(t){if(t.length<r.length)return null;let n=t;return r.some(i=>(n=typeof i=="function"?i().partialMatch(t):i.partialMatch(t),Array.isArray(n)&&(t=n),n===null)),n}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:kE(e),partialMatch:e}}function at(...r){function e(n){let i=null;return r.some(o=>{let s=typeof o=="function"?o().partialMatch(n):o.partialMatch(n);return s!=null?(i=s,!0):!1}),i}return{toString:function(){return"{ "+r.join(" ")+" }"},input:r,matches:kE(e),partialMatch:e}}function K(r){let e=r;function t(i){let o;try{o=Bp(i)}catch{return!1}let s=o.protoNames();return s.length===1&&s[0]===e}function n(i){return i.length===0?null:i[0]===e?i.slice(1):null}return{toString:function(){return e},matches:t,partialMatch:n}}var rU=ee(NE(),1);function DE(r){try{return nU(r)?!!ur.parse(r):r instanceof Uint8Array?!!ur.decode(r):!!ur.asCID(r)}catch{return!1}}function nU(r){return typeof r=="string"}var oU=r=>{let e=r.data;return e.startsWith('"')&&(e=e.substring(1)),e.endsWith('"')&&(e=e.substring(0,e.length-1)),e.replace("dnslink=","")},q0=(r,e)=>{let t=sU(r,e);return{ipfsPath:oU(t),answer:t}},sU=(r,e)=>{let t=e.Answer?.filter(n=>n.data.includes("dnslink=/ipfs")||n.data.includes("dnslink=/ipns")).pop();if(t==null)throw new O(`No dnslink records found for domain: ${r}`,"ERR_DNSLINK_NOT_FOUND");return t},kc=32,Fs=async(r,e,t,n={})=>{if(e===0)throw new Error("recursion limit exceeded");let i;try{i=await t(r,n)}catch(c){if(c.code!=="ENOTFOUND"&&c.code!=="ERR_DNSLINK_NOT_FOUND"&&c.code!=="ENODATA")throw c;r.startsWith("_dnslink.")?r=r.replace("_dnslink.",""):r=`_dnslink.${r}`,i=await t(r,n)}let o=i.replace("dnslink=",""),s=o.split("/")[2];return DE(s)?o:Fs(s,e-1,t,n)},aU=/^dnslink=.+$/,LE=async(r,e)=>{let i=(await r.resolveTxt(e)).flat().filter(o=>aU.test(o))[0];if(i==null)throw new O(`No dnslink records found for domain: ${e}`,"ERR_DNSLINK_NOT_FOUND");return i};var G0=ee(Md(),1),W0=ee(FE(),1);function Ip(r,e,t){return`${r}?name=${e}&type=${t}`}async function zE(r,e){return await(await fetch(r,{headers:new Headers({accept:"application/dns-json"}),signal:e})).json()}function mo(r,e){return`${e}_${r}`}var K0=Object.assign((0,G0.default)("dns-over-http-resolver"),{error:(0,G0.default)("dns-over-http-resolver:error")}),Y0=class{_cache;_TXTcache;_servers;_request;_abortControllers;constructor(e={}){this._cache=new W0.default({max:e?.maxCache??100}),this._TXTcache=new W0.default({max:e?.maxCache??100}),this._servers=["https://cloudflare-dns.com/dns-query","https://dns.google/resolve"],this._request=e.request??zE,this._abortControllers=[]}cancel(){this._abortControllers.forEach(e=>{e.abort()})}getServers(){return this._servers}_getShuffledServers(){let e=[...this._servers];for(let t=e.length-1;t>0;t--){let n=Math.floor(Math.random()*t),i=e[t];e[t]=e[n],e[n]=i}return e}setServers(e){this._servers=e}async resolve(e,t="A"){switch(t){case"A":return this.resolve4(e);case"AAAA":return this.resolve6(e);case"TXT":return this.resolveTxt(e);default:throw new Error(`${t} is not supported`)}}async resolve4(e){let t="A",n=this._cache.get(mo(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(Ip(o,e,t),s.signal),c=a.Answer.map(l=>l.data),u=Math.min(...a.Answer.map(l=>l.TTL));return this._cache.set(mo(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),K0.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryA ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}async resolve6(e){let t="AAAA",n=this._cache.get(mo(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(Ip(o,e,t),s.signal),c=a.Answer.map(l=>l.data),u=Math.min(...a.Answer.map(l=>l.TTL));return this._cache.set(mo(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),K0.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryAaaa ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}async resolveTxt(e){let t="TXT",n=this._TXTcache.get(mo(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(Ip(o,e,t),s.signal),c=a.Answer.map(l=>[l.data.replace(/['"]+/g,"")]),u=Math.min(...a.Answer.map(l=>l.TTL));return this._TXTcache.set(mo(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),K0.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryTxt ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}clearCache(){this._cache.clear(),this._TXTcache.clear()}},VE=Y0;var jE=ee(X0(),1),Ui=class{lru;constructor(e){this.lru=(0,jE.default)(e)}get(e){let t=this.lru.get(e);if(t!=null){if(t.expire!=null&&t.expire<Date.now()){this.lru.remove(e);return}return t.value}}set(e,t,n){this.lru.set(e,{value:t,expire:Date.now()+n})}has(e){return this.get(e)!=null}remove(e){this.lru.remove(e)}clear(){this.lru.clear()}};var J0=new Ui(1e3),dU=60*1e3,fU=new Ct({concurrency:4}),hU=async function(e,t={}){let n=new VE({maxCache:0});if(t.nocache!==!0&&J0.has(e)){let o=J0.get(e);if(o!=null)return t?.onProgress?.(new P("dnslink:cache",{detail:o})),o}t.onProgress?.(new P("dnslink:query",{detail:e}));let i=await fU.add(async()=>{let o=await LE(n,e);return t.onProgress?.(new P("dnslink:answer",{detail:o})),J0.set(e,o,dU),o},{signal:t?.signal});if(i==null)throw new Error("No DNS response received");return i},$E=hU;function HE(){return async(r,e={})=>Fs(r,kc,$E,e)}var Z0=class{routing;constructor(e){this.routing=e}async put(e,t,n={}){try{await this.routing.put(e,t,n)}catch(i){n.onProgress?.(new P("ipns:routing:helia:error",i))}}async get(e,t={}){try{return await this.routing.get(e,t)}catch(n){t.onProgress?.(new P("ipns:routing:helia:error",n))}throw new Error("Not found")}};function qE(r){return new Z0(r)}var _p=globalThis.CustomEvent??Event;async function*go(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=He(),a=He(),c=!1,u,l=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let f of r){if(o.length===t&&(s=He(),await s.promise),l)break;let h={done:!1};o.push(h),f().then(x=>{h.done=!0,h.ok=!0,h.value=x,i.dispatchEvent(new _p("task-complete"))},x=>{h.done=!0,h.err=x,i.dispatchEvent(new _p("task-complete"))})}c=!0,i.dispatchEvent(new _p("task-complete"))}catch(f){u=f,i.dispatchEvent(new _p("task-complete"))}});function p(){return n?o[0]?.done:!!o.find(f=>f.done)}function*m(){for(;o.length>0&&o[0].done;){let f=o[0];if(o.shift(),f.ok)yield f.value;else throw l=!0,s.resolve(),f.err;s.resolve()}}function*d(){for(;p();)for(let f=0;f<o.length;f++)if(o[f].done){let h=o[f];if(o.splice(f,1),f--,h.ok)yield h.value;else throw l=!0,s.resolve(),h.err;s.resolve()}}for(;;){if(p()||(a=He(),await a.promise),u!=null)throw u;if(n?yield*m():yield*d(),c&&o.length===0)break}}var Ic;(function(r){let e;r.codec=()=>(e==null&&(e=nr((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)=>{let i={key:new Uint8Array(0),value:new Uint8Array(0),timeReceived:""},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.key=t.bytes();break;case 2:i.value=t.bytes();break;case 5:i.timeReceived=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>rr(t,r.codec()),r.decode=t=>er(t,r.codec())})(Ic||(Ic={}));function KE(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"),o=String(r.getUTCMinutes()).padStart(2,"0"),s=String(r.getUTCSeconds()).padStart(2,"0"),a=r.getUTCMilliseconds(),c=String(a*1e3*1e3).padStart(9,"0");return`${e}-${t}-${n}T${i}:${o}:${s}.${c}Z`}function GE(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,o=parseInt(t[3],10),s=parseInt(t[4],10),a=parseInt(t[5],10),c=parseInt(t[6],10),u=parseInt(t[7].slice(0,-6),10);return new Date(Date.UTC(n,i,o,s,a,c,u))}var zs=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 Ic.encode(this.prepareSerialize())}prepareSerialize(){return{key:this.key,value:this.value,timeReceived:KE(this.timeReceived)}}static deserialize(e){let t=Ic.decode(e);return new r(t.key,t.value,new Date(t.timeReceived))}static fromDeserialized(e){let t=GE(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)}};var WE;(function(r){r[r.SEND_QUERY=0]="SEND_QUERY",r[r.PEER_RESPONSE=1]="PEER_RESPONSE",r[r.FINAL_PEER=2]="FINAL_PEER",r[r.QUERY_ERROR=3]="QUERY_ERROR",r[r.PROVIDER=4]="PROVIDER",r[r.VALUE=5]="VALUE",r[r.ADD_PEER=6]="ADD_PEER",r[r.DIAL_PEER=7]="DIAL_PEER"})(WE||(WE={}));var YE;(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"})(YE||(YE={}));function Q0(r){return new Xe("/dht/record/"+ie(r,"base32"),!1)}function XE(r){return{async put(e,t,n={}){try{let i=Q0(e),o=new zs(e,t,new Date);n.onProgress?.(new P("ipns:routing:datastore:put")),await r.put(i,o.serialize(),n)}catch(i){throw n.onProgress?.(new P("ipns:routing:datastore:error",i)),i}},async get(e,t={}){try{let n=Q0(e);t.onProgress?.(new P("ipns:routing:datastore:get"));let i=await r.get(n,t);return zs.deserialize(i).value}catch(n){throw t.onProgress?.(new P("ipns:routing:datastore:error",n)),n}},async has(e,t={}){let n=Q0(e);return r.has(n,t)}}}var xo=ue("helia:ipns"),gU=60*1e3,JE=60*gU,xU=24*JE,eg=23*JE,tg=class{routers;localStore;timeout;defaultResolvers;constructor(e,t=[],n=[]){this.routers=[qE(e.routing),...t],this.localStore=XE(e.datastore),this.defaultResolvers=n.length>0?n:[HE()]}async publish(e,t,n={}){try{let i=1n,o=ds(e);if(await this.localStore.has(o,n)){let c=await this.localStore.get(o,n);i=wt(c).sequence+1n}let s=await $b(e,t,i,n.lifetime??xU,n),a=In(s);return await this.localStore.put(o,a,n),n.offline!==!0&&await Promise.all(this.routers.map(async c=>{await c.put(o,a,n)})),s}catch(i){throw n.onProgress?.(new P("ipns:publish:error",i)),i}}async resolve(e,t={}){let n=ds(e),i=await this.#t(n,t);return this.#e(i.value,t)}async resolveDns(e,t={}){let n=t.resolvers??this.defaultResolvers,i=await Promise.any(n.map(async o=>o(e,t)));return this.#e(i,t)}republish(e={}){if(this.timeout!=null)throw new Error("Republish is already running");e.signal?.addEventListener("abort",()=>{clearTimeout(this.timeout)});async function t(){let n=Date.now();e.onProgress?.(new P("ipns:republish:start"));let o=Date.now()-n,s=eg-o;s<0&&(s=e.interval??eg),setTimeout(()=>{t().catch(a=>{xo.error("error republishing",a)})},s)}this.timeout=setTimeout(()=>{t().catch(n=>{xo.error("error republishing",n)})},e.interval??eg)}async#e(e,t={}){let n=e.split("/");try{let i=n[1];if(i==="ipns"){let{cid:o}=await this.resolve(mr(n[2]),t),s=n.slice(3).join("/");return{cid:o,path:s}}else if(i==="ipfs"){let o=V.parse(n[2]),s=n.slice(3).join("/");return{cid:o,path:s}}}catch(i){xo.error("error parsing ipfs path",i)}throw xo.error("invalid ipfs path %s",e),new Error("Invalid value")}async#t(e,t={}){let n=[this.localStore,...this.routers];t.offline===!0&&(n=[this.localStore]);let i=[],o=0;if(await Promise.all(n.map(async a=>{let c;try{c=await a.get(e,{...t,validate:!1})}catch(u){a===this.localStore&&u.code==="ERR_NOT_FOUND"?xo("did not have record locally"):xo.error("error finding IPNS record",u);return}try{await ju(e,c),i.push(c)}catch(u){o++,xo.error("error finding IPNS record",u)}})),i.length===0)throw o>0?new O(`${o>1?`${o} records`:"Record"} found for routing key ${o>1?"were":"was"} invalid`,"ERR_RECORDS_FAILED_VALIDATION"):new O("Could not find record for routing key","ERR_NOT_FOUND");let s=i[Fv(e,i)];return await this.localStore.put(e,s,t),wt(s)}};function ZE(r,{routers:e=[],resolvers:t=[]}={}){return new tg(r,e,t)}var nN=ee(dg(),1),iN=ee(T3(),1);var dZ=new Ui(1e3),fZ=60*1e3;var Eg=new Ui(1e3),oN=60*1e3;function Dp(r){let e=new Ct({concurrency:4}),t=async(n,i={})=>{let o=new URLSearchParams;o.set("name",n),o.set("type","TXT");let s=o.toString();if(i.nocache!==!0&&Eg.has(s)){let c=Eg.get(s);if(c!=null)return i.onProgress?.(new P("dnslink:cache",{detail:c})),c}i.onProgress?.(new P("dnslink:query",{detail:n}));let a=await e.add(async()=>{let c=await fetch(`${r}?${o}`,{headers:{accept:"application/dns-json"},signal:i.signal});if(c.status!==200)throw new Error(`Unexpected HTTP status: ${c.status} - ${c.statusText}`);let u=new URL(c.url).search.slice(1),l=await c.json();i.onProgress?.(new P("dnslink:answer",{detail:l}));let{ipfsPath:p,answer:m}=q0(n,l);return Eg.set(u,p,m.TTL??oN),p},{signal:i.signal});if(a==null)throw new Error("No DNS response received");return a};return async(n,i={})=>Fs(n,kc,t,i)}var Ag=class{components;constructor(e){this.components=e}async add(e,t={}){let n=g1(e),i=await(t.hasher??ae).digest(n),o=V.createV1(ii,i);return await this.components.blockstore.put(o,n,t),o}async get(e,t={}){let n=await this.components.blockstore.get(e,t);return cl(n)}};function C3(r){return new Ag(r)}var Jg=ee(Ce(),1);function sN(r){return r[Symbol.asyncIterator]!=null}function aN(r,e=1){return e=Number(e),sN(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var Cc=aN;async function*Rc(r,e=1){for await(let t of Cc(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}var cN=262144,Uc=(r={})=>{let e=r.chunkSize??cN;return async function*(n){let i=new Yi,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new Yi,o=0;else{let c=new Yi;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var Sg=ee(Ce(),1);var _r;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>Gi(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=nr((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Lp.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Lp.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>rr(i,r.codec()),r.decode=i=>er(i,r.codec())})(_r||(_r={}));var Lp;(function(r){let e;r.codec=()=>(e==null&&(e=nr((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>rr(t,r.codec()),r.decode=t=>er(t,r.codec())})(Lp||(Lp={}));var R3;(function(r){let e;r.codec=()=>(e==null&&(e=nr((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>rr(t,r.codec()),r.decode=t=>er(t,r.codec())})(R3||(R3={}));var U3={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},lN=["directory","hamt-sharded-directory"],N3=parseInt("0644",8),D3=parseInt("0755",8),X=class r{static unmarshal(e){let t=_r.decode(e),n=new r({type:U3[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=e;if(t!=null&&!Object.values(U3).includes(t))throw(0,Sg.default)(new Error("Type: "+t+" is not valid"),"ERR_INVALID_TYPE");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?D3:N3:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return lN.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=_r.DataType.Raw;break;case"directory":e=_r.DataType.Directory;break;case"file":e=_r.DataType.File;break;case"metadata":e=_r.DataType.Metadata;break;case"symlink":e=_r.DataType.Symlink;break;case"hamt-sharded-directory":e=_r.DataType.HAMTShard;break;default:throw(0,Sg.default)(new Error(`Type: ${e} is not valid`),"ERR_INVALID_TYPE")}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===N3&&!this.isDirectory()&&(n=void 0),n===D3&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),_r.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var Tr=async(r,e,t)=>{t.codec==null&&(t.codec=Ke);let n=await ae.digest(r),i=V.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function L3(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:Ke,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=tr,a.cidVersion=1):(s=new X({type:r.leafType,data:o}),o=fe({Data:s.marshal(),Links:[]}));let c=await Tr(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var Bg=ee(Ce(),1);var P3=async(r,e,t)=>{let n=new X({type:"directory",mtime:r.mtime,mode:r.mode}),i=fe(Ue({Data:n.marshal()})),o=await Tr(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*uN(r,e,t){let n=-1,i;for await(let o of Rc(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function O3(r){return r.single===!0}var pN=(r,e,t)=>async function(i){if(i.length===1&&O3(i[0])&&t.reduceSingleLeafToSelf){let l=i[0],p=l.block;return O3(l)&&(r.mtime!==void 0||r.mode!==void 0)&&(l.unixfs=new X({type:"file",mtime:r.mtime,mode:r.mode,data:l.block}),p={Data:l.unixfs.marshal(),Links:[]},l.block=fe(Ue(p)),l.cid=await Tr(l.block,e,{...t,cidVersion:t.cidVersion}),l.size=BigInt(l.block.length)),t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:l.cid,path:l.originalPath})),{cid:l.cid,path:r.path,unixfs:l.unixfs,size:l.size,originalPath:l.originalPath}}let o=new X({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(l=>l.cid.code===$e&&l.size>0||l.unixfs!=null&&l.unixfs.data==null&&l.unixfs.fileSize()>0n?!0:!!l.unixfs?.data?.length).map(l=>l.cid.code===$e?(o.addBlockSize(l.size),{Name:"",Tsize:Number(l.size),Hash:l.cid}):(l.unixfs==null||l.unixfs.data==null?o.addBlockSize(l.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(l.unixfs.data.length)),{Name:"",Tsize:Number(l.size),Hash:l.cid})),a={Data:o.marshal(),Links:s},c=fe(Ue(a)),u=await Tr(c,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:u,path:r.originalPath})),{cid:u,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((l,p)=>l+(p.Tsize??0),0)),originalPath:r.originalPath,block:c}},F3=async(r,e,t)=>t.layout(uN(r,e,t),pN(r,e,t));function dN(r){return Symbol.iterator in r}function fN(r){return Symbol.asyncIterator in r}function hN(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(dN(r))return async function*(){yield*r}();if(fN(r))return r}catch{throw(0,Bg.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,Bg.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function z3(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),mN(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(hN(i.content)))){let u=BigInt(c.byteLength);a+=u,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:u,path:i.path})),yield c}}(),originalPath:o};yield async()=>F3(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>P3(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function mN(r){return r.content!=null}var kg=ee(Ce(),1);var V3=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,kg.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof t=="string"||t instanceof String)yield Z(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw(0,kg.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var gN=174;function Nc(r){let e=r?.maxChildrenPerNode??gN;return async function t(n,i){let o=[];for await(let s of Cc(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}var rn=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Dc=V.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Lc=V.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var vo=class extends rn{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Lc.bytes.byteLength:Dc.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,u]of this._children.entries()){let l=u;if(u instanceof rn)for await(let p of u.flush(e))l=p,yield p;l.size!=null&&l.cid!=null&&t.push({Name:c,Tsize:Number(l.size),Hash:l.cid})}let n=new X({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=fe(Ue(i)),s=await Tr(o,e,this.options),a=o.length+i.Links.reduce((c,u)=>c+(u.Tsize==null?0:u.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Op=ee($3(),1);function xN(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var IQ=$i({name:"murmur3-32",code:35,encode:r=>xN(Op.default.x86.hash32(r))}),Eo=$i({name:"murmur3-128",code:34,encode:r=>_o.fromHex(Op.default.x64.hash128(r))}),_Q=$i({name:"murmur3-x64-64",code:34,encode:r=>_o.fromHex(Op.default.x64.hash128(r)).subarray(0,8)});var m6=ee(Fp(),1);function qs(r){return globalThis.Buffer!=null?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r}var Rg={};j(Rg,{base10:()=>kN});function vN(r,e){if(r.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<r.length;i++){var o=r.charAt(i),s=o.charCodeAt(0);if(t[s]!==255)throw new TypeError(o+" is ambiguous");t[s]=i}var a=r.length,c=r.charAt(0),u=Math.log(a)/Math.log(256),l=Math.log(256)/Math.log(a);function p(f){if(f instanceof Uint8Array||(ArrayBuffer.isView(f)?f=new Uint8Array(f.buffer,f.byteOffset,f.byteLength):Array.isArray(f)&&(f=Uint8Array.from(f))),!(f instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(f.length===0)return"";for(var h=0,x=0,g=0,y=f.length;g!==y&&f[g]===0;)g++,h++;for(var w=(y-g)*l+1>>>0,E=new Uint8Array(w);g!==y;){for(var B=f[g],S=0,b=w-1;(B!==0||S<x)&&b!==-1;b--,S++)B+=256*E[b]>>>0,E[b]=B%a>>>0,B=B/a>>>0;if(B!==0)throw new Error("Non-zero carry");x=S,g++}for(var v=w-x;v!==w&&E[v]===0;)v++;for(var k=c.repeat(h);v<w;++v)k+=r.charAt(E[v]);return k}function m(f){if(typeof f!="string")throw new TypeError("Expected String");if(f.length===0)return new Uint8Array;var h=0;if(f[h]!==" "){for(var x=0,g=0;f[h]===c;)x++,h++;for(var y=(f.length-h)*u+1>>>0,w=new Uint8Array(y);f[h];){var E=t[f.charCodeAt(h)];if(E===255)return;for(var B=0,S=y-1;(E!==0||B<g)&&S!==-1;S--,B++)E+=a*w[S]>>>0,w[S]=E%256>>>0,E=E/256>>>0;if(E!==0)throw new Error("Non-zero carry");g=B,h++}if(f[h]!==" "){for(var b=y-g;b!==y&&w[b]===0;)b++;for(var v=new Uint8Array(x+(y-b)),k=x;b!==y;)v[k++]=w[b++];return v}}}function d(f){var h=m(f);if(h)return h;throw new Error(`Non-${e} character`)}return{encode:p,decodeUnsafe:m,decode:d}}var EN=vN,AN=EN,K3=AN;var DQ=new Uint8Array(0);var G3=(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},Gn=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")};var W3=r=>new TextEncoder().encode(r),Y3=r=>new TextDecoder().decode(r);var Ig=class{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")}},_g=class{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 J3(this,e)}},Tg=class{constructor(e){this.decoders=e}or(e){return J3(this,e)}decode(e){let t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}},J3=(r,e)=>new Tg({...r.decoders||{[r.prefix]:r},...e.decoders||{[e.prefix]:e}}),Cg=class{constructor(e,t,n,i){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=i,this.encoder=new Ig(e,t,n),this.decoder=new _g(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}},Ks=({name:r,prefix:e,encode:t,decode:n})=>new Cg(r,e,t,n),Li=({prefix:r,name:e,alphabet:t})=>{let{encode:n,decode:i}=K3(t,e);return Ks({prefix:r,name:e,encode:n,decode:o=>Gn(i(o))})},SN=(r,e,t,n)=>{let i={};for(let l=0;l<e.length;++l)i[e[l]]=l;let o=r.length;for(;r[o-1]==="=";)--o;let s=new Uint8Array(o*t/8|0),a=0,c=0,u=0;for(let l=0;l<o;++l){let p=i[r[l]];if(p===void 0)throw new SyntaxError(`Non-${n} character`);c=c<<t|p,a+=t,a>=8&&(a-=8,s[u++]=255&c>>a)}if(a>=t||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s},BN=(r,e,t)=>{let n=e[e.length-1]==="=",i=(1<<t)-1,o="",s=0,a=0;for(let c=0;c<r.length;++c)for(a=a<<8|r[c],s+=8;s>t;)s-=t,o+=e[i&a>>s];if(s&&(o+=e[i&a<<t-s]),n)for(;o.length*t&7;)o+="=";return o},Pe=({name:r,prefix:e,bitsPerChar:t,alphabet:n})=>Ks({prefix:e,name:r,encode(i){return BN(i,n,t)},decode(i){return SN(i,n,t,r)}});var kN=Li({prefix:"9",name:"base10",alphabet:"0123456789"});var Ug={};j(Ug,{base16:()=>IN,base16upper:()=>_N});var IN=Pe({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),_N=Pe({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ng={};j(Ng,{base2:()=>TN});var TN=Pe({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Dg={};j(Dg,{base256emoji:()=>DN});var Z3=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}"),CN=Z3.reduce((r,e,t)=>(r[t]=e,r),[]),RN=Z3.reduce((r,e,t)=>(r[e.codePointAt(0)]=t,r),[]);function UN(r){return r.reduce((e,t)=>(e+=CN[t],e),"")}function NN(r){let e=[];for(let t of r){let n=RN[t.codePointAt(0)];if(n===void 0)throw new Error(`Non-base256emoji character: ${t}`);e.push(n)}return new Uint8Array(e)}var DN=Ks({prefix:"\u{1F680}",name:"base256emoji",encode:UN,decode:NN});var Lg={};j(Lg,{base32:()=>Gs,base32hex:()=>FN,base32hexpad:()=>VN,base32hexpadupper:()=>MN,base32hexupper:()=>zN,base32pad:()=>PN,base32padupper:()=>ON,base32upper:()=>LN,base32z:()=>jN});var Gs=Pe({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),LN=Pe({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),PN=Pe({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ON=Pe({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),FN=Pe({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),zN=Pe({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),VN=Pe({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),MN=Pe({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),jN=Pe({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Pg={};j(Pg,{base36:()=>$N,base36upper:()=>HN});var $N=Li({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),HN=Li({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Og={};j(Og,{base58btc:()=>nn,base58flickr:()=>qN});var nn=Li({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),qN=Li({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Fg={};j(Fg,{base64:()=>KN,base64pad:()=>GN,base64url:()=>WN,base64urlpad:()=>YN});var KN=Pe({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),GN=Pe({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),WN=Pe({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),YN=Pe({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var zg={};j(zg,{base8:()=>XN});var XN=Pe({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Vg={};j(Vg,{identity:()=>JN});var JN=Ks({prefix:"\0",name:"identity",encode:r=>Y3(r),decode:r=>W3(r)});var YQ=new TextEncoder,XQ=new TextDecoder;var jg={};j(jg,{identity:()=>bD});var eD=t6,Q3=128,tD=127,rD=~tD,nD=Math.pow(2,31);function t6(r,e,t){e=e||[],t=t||0;for(var n=t;r>=nD;)e[t++]=r&255|Q3,r/=128;for(;r&rD;)e[t++]=r&255|Q3,r>>>=7;return e[t]=r|0,t6.bytes=t-n+1,e}var iD=Mg,oD=128,e6=127;function Mg(r,n){var t=0,n=n||0,i=0,o=n,s,a=r.length;do{if(o>=a)throw Mg.bytes=0,new RangeError("Could not decode varint");s=r[o++],t+=i<28?(s&e6)<<i:(s&e6)*Math.pow(2,i),i+=7}while(s>=oD);return Mg.bytes=o-n,t}var sD=Math.pow(2,7),aD=Math.pow(2,14),cD=Math.pow(2,21),lD=Math.pow(2,28),uD=Math.pow(2,35),pD=Math.pow(2,42),dD=Math.pow(2,49),fD=Math.pow(2,56),hD=Math.pow(2,63),mD=function(r){return r<sD?1:r<aD?2:r<cD?3:r<lD?4:r<uD?5:r<pD?6:r<dD?7:r<fD?8:r<hD?9:10},gD={encode:eD,decode:iD,encodingLength:mD},xD=gD,Oc=xD;var Fc=(r,e=0)=>[Oc.decode(r,e),Oc.decode.bytes],Ws=(r,e,t=0)=>(Oc.encode(r,e,t),e),Ys=r=>Oc.encodingLength(r);var Ao=(r,e)=>{let t=e.byteLength,n=Ys(r),i=n+Ys(t),o=new Uint8Array(i+t);return Ws(r,o,0),Ws(t,o,n),o.set(e,i),new Xs(r,t,e,o)},r6=r=>{let e=Gn(r),[t,n]=Fc(e),[i,o]=Fc(e.subarray(n)),s=e.subarray(n+o);if(s.byteLength!==i)throw new Error("Incorrect length");return new Xs(t,i,s,e)},n6=(r,e)=>{if(r===e)return!0;{let t=e;return r.code===t.code&&r.size===t.size&&t.bytes instanceof Uint8Array&&G3(r.bytes,t.bytes)}},Xs=class{constructor(e,t,n,i){this.code=e,this.size=t,this.digest=n,this.bytes=i}};var i6=0,yD="identity",o6=Gn,wD=r=>Ao(i6,o6(r)),bD={code:i6,name:yD,encode:o6,digest:wD};var qg={};j(qg,{sha256:()=>vD,sha512:()=>ED});var Hg=({name:r,code:e,encode:t})=>new $g(r,e,t),$g=class{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?Ao(this.code,t):t.then(n=>Ao(this.code,n))}else throw Error("Unknown type, must be binary type")}};var a6=r=>async e=>new Uint8Array(await crypto.subtle.digest(r,e)),vD=Hg({name:"sha2-256",code:18,encode:a6("SHA-256")}),ED=Hg({name:"sha2-512",code:19,encode:a6("SHA-512")});var c6=(r,e)=>{let{bytes:t,version:n}=r;switch(n){case 0:return SD(t,Kg(r),e||nn.encoder);default:return BD(t,Kg(r),e||Gs.encoder)}};var l6=new WeakMap,Kg=r=>{let e=l6.get(r);if(e==null){let t=new Map;return l6.set(r,t),t}return e},Vp=class r{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!==Vc)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==kD)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=Ao(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&&e.code===n.code&&e.version===n.version&&n6(e.multihash,n.multihash)}toString(e){return c6(this,e)}toJSON(){return{"/":c6(this)}}link(){return this}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return`CID(${this.toString()})`}static asCID(e){if(e==null)return null;let t=e;if(t instanceof r)return t;if(t["/"]!=null&&t["/"]===t.bytes||t.asCID===t){let{version:n,code:i,multihash:o,bytes:s}=t;return new r(n,i,o,s||u6(n,i,o.bytes))}else if(t[ID]===!0){let{version:n,multihash:i,code:o}=t,s=r6(i);return r.create(n,o,s)}else return null}static create(e,t,n){if(typeof t!="number")throw new Error("String codecs are no longer supported");if(!(n.bytes instanceof Uint8Array))throw new Error("Invalid digest");switch(e){case 0:{if(t!==Vc)throw new Error(`Version 0 CID must use dag-pb (code: ${Vc}) block encoding`);return new r(e,t,n,n.bytes)}case 1:{let i=u6(e,t,n.bytes);return new r(e,t,n,i)}default:throw new Error("Invalid version")}}static createV0(e){return r.create(0,Vc,e)}static createV1(e,t){return r.create(1,e,t)}static decode(e){let[t,n]=r.decodeFirst(e);if(n.length)throw new Error("Incorrect length");return t}static decodeFirst(e){let t=r.inspectBytes(e),n=t.size-t.multihashSize,i=Gn(e.subarray(n,n+t.multihashSize));if(i.byteLength!==t.multihashSize)throw new Error("Incorrect length");let o=i.subarray(t.multihashSize-t.digestSize),s=new Xs(t.multihashCode,t.digestSize,o,i);return[t.version===0?r.createV0(s):r.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0,n=()=>{let[p,m]=Fc(e.subarray(t));return t+=m,p},i=n(),o=Vc;if(i===18?(i=0,t=0):o=n(),i!==0&&i!==1)throw new RangeError(`Invalid CID version ${i}`);let s=t,a=n(),c=n(),u=t+c,l=u-s;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:l,size:u}}static parse(e,t){let[n,i]=AD(e,t),o=r.decode(i);if(o.version===0&&e[0]!=="Q")throw Error("Version 0 CID string must not include multibase prefix");return Kg(o).set(n,e),o}},AD=(r,e)=>{switch(r[0]){case"Q":{let t=e||nn;return[nn.prefix,t.decode(`${nn.prefix}${r}`)]}case nn.prefix:{let t=e||nn;return[nn.prefix,t.decode(r)]}case Gs.prefix:{let t=e||Gs;return[Gs.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)]}}},SD=(r,e,t)=>{let{prefix:n}=t;if(n!==nn.prefix)throw Error(`Cannot string encode V0 in ${t.name} encoding`);let i=e.get(n);if(i==null){let o=t.encode(r).slice(1);return e.set(n,o),o}else return i},BD=(r,e,t)=>{let{prefix:n}=t,i=e.get(n);if(i==null){let o=t.encode(r);return e.set(n,o),o}else return i},Vc=112,kD=18,u6=(r,e,t)=>{let n=Ys(r),i=n+Ys(e),o=new Uint8Array(i+t.byteLength);return Ws(r,o,0),Ws(e,o,n),o.set(t,i),o},ID=Symbol.for("@ipld/js-cid/CID");var Gg={...Vg,...Ng,...zg,...Rg,...Ug,...Lg,...Pg,...Og,...Fg,...Dg},dee={...qg,...jg};function Mp(r=0){return globalThis.Buffer?.allocUnsafe!=null?qs(globalThis.Buffer.allocUnsafe(r)):new Uint8Array(r)}function d6(r,e,t,n){return{name:r,prefix:e,encoder:{name:r,prefix:e,encode:t},decoder:{decode:n}}}var p6=d6("utf8","u",r=>"u"+new TextDecoder("utf8").decode(r),r=>new TextEncoder().encode(r.substring(1))),Wg=d6("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=Mp(r.length);for(let t=0;t<r.length;t++)e[t]=r.charCodeAt(t);return e}),_D={utf8:p6,"utf-8":p6,hex:Gg.base16,latin1:Wg,ascii:Wg,binary:Wg,...Gg},f6=_D;function h6(r,e="utf8"){let t=f6[e];if(t==null)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?qs(globalThis.Buffer.from(r,"utf-8")):t.decoder.decode(`${t.prefix}${r}`)}var Jt=class r{constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new m6.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);await n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return await g6(this,e,t)}toJSON(){return this.serialize(CD,RD)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?h6(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?await i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),await n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(TD);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function TD(r){return!!r}function CD(r,e){return r.key}function RD(r){return r}async function g6(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof Jt)await g6(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return await t(n)}var UD=[255,254,252,248,240,224,192,128],ND=[1,3,7,15,31,63,127,255],jp=class{constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=DD(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function DD(r,e,t){let n=LD(e,t);return(r&n)>>>e}function LD(r,e){return UD[r]&ND[Math.min(e+r-1,7)]}function x6(r,e){e==null&&(e=r.reduce((i,o)=>i+o.length,0));let t=Mp(e),n=0;for(let i of r)t.set(i,n),n+=i.length;return qs(t)}function y6(r){function e(t){return t instanceof $p?t:new $p(t,r)}return e}var $p=class{constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?x6([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new jp(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function Js(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:y6(r.hashFn)};return new Jt(e)}async function PD(r){return(await Eo.encode(r)).slice(0,8).reverse()}var w6=BigInt(34),OD=8,Yg=class extends rn{_bucket;constructor(e,t){super(e,t),this._bucket=Js({hashFn:PD,bits:t.shardFanoutBits??OD})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=E6(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of v6(this._bucket,e,this,this.options))yield{...t,path:this.path}}},b6=Yg;async function*v6(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let f=0;f<i.length;f++){let h=i.get(f);if(h==null)continue;let x=f.toString(16).toUpperCase().padStart(o,"0");if(h instanceof Jt){let g;for await(let y of v6(h,e,null,n))g=y;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:x,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(FD(h.value)){let g=h.value,y;for await(let E of g.flush(e))y=E,yield y;if(y==null)throw new Error("Did not flush dir");let w=x+h.key;s.push({Name:w,Tsize:Number(y.size),Hash:y.cid}),a+=y.size}else{let g=h.value;if(g.cid==null)continue;let y=x+h.key,w=g.size;s.push({Name:y,Tsize:Number(w),Hash:g.cid}),a+=BigInt(w??0)}}let c=Uint8Array.from(i.bitField().reverse()),u=new X({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:w6,mtime:t?.mtime,mode:t?.mode}),l={Data:u.marshal(),Links:s},p=fe(Ue(l)),m=await Tr(p,e,n),d=BigInt(p.byteLength)+a;yield{cid:m,unixfs:u,size:d}}function FD(r){return typeof r.flush=="function"}function E6(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let u=0;u<n.length;u++){let l=n.get(u);if(l==null)continue;let p=u.toString(16).toUpperCase().padStart(i,"0");if(l instanceof Jt){let m=E6(l,null,t);o.push({Name:p,Tsize:Number(m),Hash:t.cidVersion===0?Dc:Lc})}else if(typeof l.value.flush=="function"){let d=l.value.nodeSize();o.push({Name:p+l.key,Tsize:Number(d),Hash:t.cidVersion===0?Dc:Lc})}else{let m=l.value;if(m.cid==null)continue;let d=p+l.key,f=m.size;o.push({Name:d,Tsize:Number(f),Hash:m.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new X({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:w6,mtime:e?.mtime,mode:e?.mode});return fe(Ue({Data:a.marshal(),Links:o})).length}async function Xg(r,e,t,n){let i=e;e instanceof vo&&e.estimateNodeSize()>t&&(i=await zD(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return Xg(i,o,t,n)}return i}async function zD(r,e){let t=new b6({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var A6=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function VD(r,e,t){let n=A6(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let u=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,u)await o.put(c,r),e=await Xg(null,o,t.shardSplitThresholdBytes,t);else{let l=await o.get(c);(l==null||!(l instanceof rn))&&(l=new vo({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:l?.unixfs?.mtime,mode:l?.unixfs?.mode},t)),await o.put(c,l),o=l}}return e}async function*S6(r,e){if(!(r instanceof rn)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function B6(r){return async function*(t,n){let i=new vo({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await VD(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*S6(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*S6(a.child,n))}}async function*Pi(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,c=t.rawLeaves??!0,u=t.leafType??"file",l=t.fileImportConcurrency??50,p=t.blockWriteConcurrency??10,m=t.reduceSingleLeafToSelf??!0,d=t.chunker??Uc(),f=t.chunkValidator??V3(),h=t.dagBuilder??z3({chunker:d,chunkValidator:f,wrapWithDirectory:i,layout:t.layout??Nc(),bufferImporter:t.bufferImporter??L3({cidVersion:a,rawLeaves:c,leafType:u,onProgress:t.onProgress}),blockWriteConcurrency:p,reduceSingleLeafToSelf:m,cidVersion:a,onProgress:t.onProgress}),x=t.treeBuilder??B6({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of x(Rc(h(n,e),l),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Hp(r,e,t={}){let n=await oo(Pi([r],e,t));if(n==null)throw(0,Jg.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function k6(r,e,t={}){let n=await oo(Pi([r],e,t));if(n==null)throw(0,Jg.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function I6(r,e,t={}){return Hp({content:r},e,t)}async function _6(r,e,t={}){return Hp({content:r},e,t)}var KD=ee(Ce(),1),GD=ee(M6(),1);var Hc={cidVersion:1,rawLeaves:!0,layout:Nc({maxChildrenPerNode:1024}),chunker:Uc({chunkSize:1048576})};async function*j6(r,e,t={}){yield*Pi(r,e,{...Hc,...t})}async function $6(r,e,t={}){let{cid:n}=await I6(r,e,{...Hc,...t});return n}async function H6(r,e,t={}){let{cid:n}=await _6(r,e,{...Hc,...t});return n}async function q6(r,e,t={}){let{cid:n}=await Hp(r,e,{...Hc,...t});return n}async function K6(r,e,t={}){let{cid:n}=await k6({...r,path:r.path??"-"},e,{...Hc,...t});return n}var Kp=ee(Ce(),1);function WD(r){return r[Symbol.asyncIterator]!=null}function YD(r){if(WD(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var Oi=YD;var l4=ee(Ce(),1);var G6=ee(Ce(),1);function Zs(r,e,t,n,i,o,s){let a=r,c=i;for(;o.length>0;){let u=o[0];if(u in a){o.shift(),c=`${c}/${u}`;let l=V.asCID(a[u]);if(l!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:l,name:u,path:c,toResolve:o}};a=a[u]}else throw(0,G6.default)(new Error(`No property named ${u} found in node ${t}`),"ERR_NO_PROP")}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var XD=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=tp(c);return Zs(u,c,r,e,t,n,o)},W6=XD;var JD=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=ip(c);return Zs(u,c,r,e,t,n,o)},Y6=JD;var X6=ee(Ce(),1);function ZD(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var So=ZD;var qc=ee(Ce(),1),QD=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw(0,qc.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,qc.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,qc.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,qc.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},Qs=QD;var eL=r=>{async function*e(t={}){let{start:n,end:i}=Qs(r.length,t.offset,t.length),o=So(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},tL=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,X6.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=Ot(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:eL(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},J6=tL;var rL=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=cl(c);return Zs(u,c,r,e,t,n,o)},Z6=rL;var Q6=ee(Ce(),1);var nL=r=>{async function*e(t={}){let{start:n,end:i}=Qs(r.length,t.offset,t.length),o=So(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},iL=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Q6.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:nL(c),depth:o,size:BigInt(c.length),node:c}}},e4=iL;var Gc=ee(Ce(),1);var Kc=ee(Ce(),1);var oL=async function(r){return(await Eo.encode(r)).slice(0,8).reverse()},sL=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new Jt({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},t4=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),aL=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},r4=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw(0,Kc.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let p;try{p=X.unmarshal(r.Data)}catch(d){throw(0,Kc.default)(d,"ERR_NOT_UNIXFS")}if(p.type!=="hamt-sharded-directory")throw(0,Kc.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(p.fanout==null)throw(0,Kc.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let m=Js({hashFn:oL,bits:Math.log2(Number(p.fanout))});n={rootBucket:m,hamtDepth:1,lastBucket:m}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await sL(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=t4(s.pos,o),c=aL(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=t4(n.lastBucket._posAtParent,o));let u=r.Links.find(p=>{if(p.Name==null)return!1;let m=p.Name.substring(0,o),d=p.Name.substring(o);return!(m!==a||d!==""&&d!==e)});if(u==null)return;if(u.Name!=null&&u.Name.substring(o)===e)return u.Hash;n.hamtDepth++;let l=await t.get(u.Hash,i);return r=ke(l),r4(r,e,t,n,i)},n4=r4;var cL=(r,e,t,n,i,o,s)=>{async function*a(c={}){let u=c.offset??0,l=c.length??e.Links.length,p=e.Links.slice(u,l);c.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*hr(p,m=>fr(m,d=>async()=>{let f=d.Name??"",h=`${n}/${f}`;return(await i(d.Hash,f,h,[],o+1,s,c)).entry}),m=>go(m,{ordered:!0,concurrency:c.blockReadConcurrency}),m=>Gt(m,d=>d!=null))}return a},i4=cL;var Bo=ee(Ce(),1);async function o4(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let u=So(e,n,i,o);t.push(u);return}if(e.Data==null)throw(0,Bo.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=X.unmarshal(e.Data)}catch(u){throw(0,Bo.default)(u,"ERR_NOT_UNIXFS")}if(a.data!=null){let u=a.data,l=So(u,n,i,o);t.push(l),n+=BigInt(l.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw(0,Bo.default)(new Error("Inconsistent block sizes and dag links"),"ERR_NOT_UNIXFS");for(let u=0;u<e.Links.length;u++){let l=e.Links[u],p=n,m=p+a.blockSizes[u];if((i>=p&&i<m||o>=p&&o<=m||i<p&&o>m)&&c.push({link:l,blockStart:n}),n=m,n>o)break}await hr(c,u=>fr(u,l=>async()=>{let p=await r.get(l.link.Hash,s);return{...l,block:p}}),u=>go(u,{ordered:!0,concurrency:s.blockReadConcurrency}),async u=>{for await(let{link:l,block:p,blockStart:m}of u){let d;switch(l.Hash.code){case Ve:d=ke(p);break;case $e:d=p;break;default:t.end((0,Bo.default)(new Error(`Unsupported codec: ${l.Hash.code}`),"ERR_NOT_UNIXFS"));return}let f=new Ct({concurrency:1});f.on("error",h=>{t.end(h)}),f.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:l.Hash})),await o4(r,d,t,m,i,o,s)}),await f.onIdle()}}),n>=o&&t.end()}var lL=(r,e,t,n,i,o,s)=>{async function*a(c={}){let u=t.fileSize();if(u===void 0)throw new Error("File was a directory");let{start:l,end:p}=Qs(u,c.offset,c.length);if(p===0n)return;let m=0n,d=p-l,f=Pr();c.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),o4(s,e,f,0n,l,p,c).catch(h=>{f.end(h)});for await(let h of f)if(h!=null){if(m+=BigInt(h.byteLength),m>d)throw f.end(),(0,Bo.default)(new Error("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect"),"ERR_OVER_READ");m===d&&f.end(),c.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:m,totalBytes:d,fileSize:u})),yield h}if(m<d)throw(0,Bo.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},rx=lL;var qp=ee(Ce(),1);var uL=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),s4(e,n,i,o,s,c)}return a};async function*s4(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw(0,qp.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=X.unmarshal(r.Data)}catch(l){throw(0,qp.default)(l,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,qp.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let c=(a.fanout-1n).toString(16).length,u=hr(s,l=>fr(l,p=>async()=>{let m=p.Name!=null?p.Name.substring(c):null;if(m!=null&&m!==""){let d=await t(p.Hash,m,`${e}/${m}`,[],n+1,i,o);return{entries:d.entry==null?[]:[d.entry]}}else{let d=await i.get(p.Hash,o);return r=ke(d),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:p.Hash})),{entries:s4(r,e,t,n,i,o)}}}),l=>go(l,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:l}of u)yield*l}var a4=uL;var pL=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,dL={raw:rx,file:rx,directory:i4,"hamt-sharded-directory":a4,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},fL=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=ke(c),l,p;if(e==null&&(e=r.toString()),u.Data==null)throw(0,Gc.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{l=X.unmarshal(u.Data)}catch(d){throw(0,Gc.default)(d,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let d;if(l?.type==="hamt-sharded-directory"?d=await n4(u,n[0],s):d=pL(u,n[0]),d==null)throw(0,Gc.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let f=n.shift(),h=`${t}/${f}`;p={cid:d,toResolve:n,name:f??"",path:h}}let m=dL[l.type](r,u,l,t,i,o,s);if(m==null)throw(0,Gc.default)(new Error("could not find content exporter"),"ERR_NOT_FOUND");return l.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:m,unixfs:l,depth:o,node:u,size:l.fileSize()},next:p}:{entry:{type:"file",name:e,path:t,cid:r,content:m,unixfs:l,depth:o,node:u,size:l.fileSize()},next:p}},c4=fL;var hL={[Ve]:c4,[$e]:e4,[Ai]:W6,[Bi]:Y6,[It.code]:J6,[ii]:Z6},u4=async(r,e,t,n,i,o,s)=>{let a=hL[r.code];if(a==null)throw(0,l4.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,e,t,n,u4,i,o,s)},p4=u4;var mL=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),gL=r=>{if(r instanceof Uint8Array)return{cid:V.decode(r),toResolve:[]};let e=V.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=mL(r);return{cid:V.parse(t[0]),toResolve:t.slice(1)}}throw(0,Kp.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*nx(r,e,t={}){let{cid:n,toResolve:i}=gL(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await p4(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw(0,Kp.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function lt(r,e,t={}){let n=await Oi(nx(r,e,t));if(n==null)throw(0,Kp.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*Gp(r,e,t={}){let n=await lt(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var b4=ee(w4(),1),mt=b4.default;var Cr=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},on=class extends Cr{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},St=class extends Cr{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},Wn=class extends Cr{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},Wc=class extends Cr{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Xp=class extends Cr{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},ra=class extends Cr{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Jp=class extends Cr{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Fi=class extends Cr{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},gt=class extends Cr{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var cx=ee(Fp(),1);function Qp(r){function e(t){return t instanceof Zp?t:new Zp(t,r)}return e}var Zp=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?ze([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new ox(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},EL=[255,254,252,248,240,224,192,128],AL=[1,3,7,15,31,63,127,255],ox=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=SL(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function SL(r,e,t){let n=BL(e,t);return(r&n)>>>e}function BL(r,e){return EL[r]&AL[Math.min(e+r-1,7)]}var Yc=BigInt(Eo.code),ko=8;async function na(r){return(await Eo.encode(r)).subarray(0,8).reverse()}var A4=ee(Fp(),1);var Rr=async(r,e,t)=>{t.codec==null&&(t.codec=Ke);let n=await ae.digest(r),i=V.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var sx=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},ed=class extends sx{_bucket;constructor(e,t){super(e,t),this._bucket=Js({hashFn:na,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=E4(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of v4(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*v4(r,e,t,n){let i=r._children,o=[],s=0n;for(let d=0;d<i.length;d++){let f=i.get(d);if(f==null)continue;let h=d.toString(16).toUpperCase().padStart(2,"0");if(f instanceof Jt){let x;for await(let g of v4(f,e,null,n))x=g;if(x==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:h,Tsize:Number(x.size),Hash:x.cid}),s+=x.size}else if(kL(f.value)){let x=f.value,g;for await(let w of x.flush(e))g=w,yield g;if(g==null)throw new Error("Did not flush dir");let y=h+f.key;o.push({Name:y,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let x=f.value;if(x.cid==null)continue;let g=h+f.key,y=x.size;o.push({Name:g,Tsize:Number(y),Hash:x.cid}),s+=BigInt(y??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new X({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:Yc,mtime:t?.mtime,mode:t?.mode}),u={Data:c.marshal(),Links:o},l=fe(Ue(u)),p=await Rr(l,e,n),m=BigInt(l.byteLength)+s;yield{cid:p,unixfs:c,size:m}}function kL(r){return typeof r.flush=="function"}function E4(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let u=n.get(c);if(u==null)continue;let l=c.toString(16).toUpperCase().padStart(2,"0");if(u instanceof Jt){let p=E4(u,null,t);i.push({Name:l,Tsize:Number(p),Hash:t.cidVersion===0?td:rd})}else if(typeof u.value.flush=="function"){let m=u.value.nodeSize();i.push({Name:l+u.key,Tsize:Number(m),Hash:t.cidVersion===0?td:rd})}else{let p=u.value;if(p.cid==null)continue;let m=l+u.key,d=p.size;i.push({Name:m,Tsize:Number(d),Hash:p.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new X({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:Yc,mtime:e?.mtime,mode:e?.mode});return fe(Ue({Data:s.marshal(),Links:i})).length}var td=V.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),rd=V.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var ax=ue("helia:unixfs:commands:utils:hamt-utils"),nd=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),S4=async(r,e,t)=>{let n=new ed({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await Oi(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},id=async(r,e,t)=>{let n=X.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,ko));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,u=r[a],l=Uint8Array.from(u.children.bitField().reverse()),p=new X({type:"hamt-sharded-directory",data:l,fanout:i,hashType:Yc});c&&(p.mtime=n.mtime,p.mode=n.mode),s={Data:p.marshal(),Links:u.node.Links};let m=fe(Ue(s));if(o=await Rr(m,e,t),!c){let d=r[a+1];if(d==null)throw new Error("Was not operating on shard root but also had no parent?");ax("updating link in parent sub-shard with prefix %s",d.prefix),d.node.Links=d.node.Links.filter(f=>f.Name!==d.prefix),d.node.Links.push({Name:d.prefix,Hash:o,Tsize:u.node.Links.reduce((f,h)=>f+(h.Tsize??0),m.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},od=async(r,e,t,n)=>{let o=Qp(na)(Z(e)),s=[];for(;;){let a=await t.get(r,n),c=ke(a),u=new A4.default,l=await o.take(ko),p=nd(l);s.push({prefix:p,children:u,node:c});let m;for(let f of c.Links){let h=f.Name??"";if(h.length<2)throw new Error("Invalid HAMT - link name was too short");let x=parseInt(h.substring(0,2),16);u.set(x,!0),h.startsWith(p)&&(m=f)}if(m==null){ax("no link found with prefix %s for %s",p,e);break}let d=m.Name??"";if(d.length<2)throw new Error("Invalid HAMT - link name was too short");if(d.length===2){r=m.Hash,ax("descend into sub-shard with prefix %s",d);continue}break}return{path:s,hash:o}};async function sd(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=X.unmarshal(r.Data),o;if(i.type==="directory")o=IL(r);else if(i.type==="hamt-sharded-directory")o=await B4(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function IL(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?rd.bytes.byteLength:td.bytes.byteLength;return e}async function B4(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!X.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===Ve){let c=await n.get(s.Hash,i),u=ke(c);e+=await B4(u,e,t,n,i)}}return e}var sn=ue("helia:unixfs:components:utils:add-link");async function ia(r,e,t,n){if(r.node.Data==null)throw new gt("Invalid parent passed to addLink");if(X.unmarshal(r.node.Data).type==="hamt-sharded-directory")return sn("adding link to sharded directory"),CL(r,e,t,n);sn(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await TL(r,e,t,n);if(await sd(o.node,t,n.shardSplitThresholdBytes,n)){sn("converting directory to sharded directory");let s=await _L(o,t);o.cid=s.cid,o.node=ke(await t.get(s.cid,n))}return o}var _L=async(r,e)=>{if(r.node.Data==null)throw new gt("Invalid parent passed to convertToShardedDirectory");let t=X.unmarshal(r.node.Data),n=await S4(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return sn(`converted directory to sharded directory ${n.cid}`),n},TL=async(r,e,t,n)=>{let i=r.node.Links.filter(l=>{let p=l.Name===e.Name;if(p&&!n.allowOverwriting)throw new Wc;return!p});if(i.push(e),r.node.Data==null)throw new St("Parent node with no data passed to addToDirectory");let o=X.unmarshal(r.node.Data),s;if(o.mtime!=null){let l=Date.now(),p=Math.floor(l/1e3);o.mtime={secs:BigInt(p),nsecs:(l-p*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=Ue({Data:s,Links:i});let a=fe(r.node),c=await ae.digest(a),u=V.create(r.cid.version,Ve,c);return await t.put(u,a),{node:r.node,cid:u}},CL=async(r,e,t,n)=>{let{path:i,hash:o}=await od(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);sn("next prefix for %s is %s",e.Name,a);let u=`${a}${e.Name}`,l=s.node.Links.find(p=>(p.Name??"").startsWith(a));if(l!=null)if(sn("link %s was present in shard",u),l.Name===u){if(!n.allowOverwriting)throw new Wc;sn("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(p=>p.Name!==u),s.node.Links.push({Name:u,Hash:e.Hash,Tsize:e.Tsize})}else{if(l.Name?.length===2)throw new Error("Existing link was subshard?!");{sn("prefix %s already exists, creating new subshard",a);let p=s.node.Links.findIndex(x=>x.Name?.startsWith(a)),m=s.node.Links.splice(p,1)[0],d=(m.Name??"").substring(2),h=Qp(na)(Z(d));for(let x=0;x<i.length;x++)await h.take(ko);for(;;){let x=await h.take(ko),g=nd(x);m.Name=`${g}${d}`;let y=await o.take(ko),w=nd(y);if(g===w){let B=new cx.default;B.set(y,!0),i.push({prefix:w,children:B,node:{Links:[]}});continue}let E=new cx.default;E.set(y,!0),E.set(x,!0),i.push({prefix:a,children:E,node:{Links:[m,{Name:`${w}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else sn("link %s was not present in sub-shard",u),e.Name=u,s.node.Links.push(e),s.children.set(c,!0),sn("adding %s to existing sub-shard",u);return id(i,t,n)};async function zi(r,e,t={}){let n=await lt(r,e,t);if(n.type!=="directory")throw new Fi(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function oa(r,e,t,n){let i=await lt(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new on(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:RL(i.node),Hash:r}}function RL(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return fe(r).byteLength+e}var lx=ue("helia:unixfs:components:utils:resolve");async function an(r,e,t,n){if(e==null||e==="")return{cid:r};lx('resolve "%s" under %c',e,r);let i=e.split("/").filter(Boolean),o=[{name:"",cid:r,size:0n}];for(let s=0;s<i.length;s++){let a=i[s],c=await lt(r,t,n);if(lx('resolving "%s"',a,c),c.type==="file"){if(s<i.length-1)throw new gt("Path was invalid");r=c.cid}else if(c.type==="directory"){let u;for await(let l of c.content())if(l.name===a){u=l.cid;break}if(u==null)throw new Xp("Could not find path in directory");r=u,o.push({name:a,cid:r,size:c.size})}else throw new gt("Could not resolve path")}return lx("resolved %s to %c",e,r),{cid:r,path:e,segments:o}}async function sa(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([zi(o.cid,t,n),oa(i.cid,i.name,t,n)]);r=(await ia(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var UL=mt.bind({ignoreUndefined:!0}),NL={};async function*k4(r,e,t={}){let n=UL(NL,t),i=await an(r,n.path,e,n),o=await lt(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new Jp;if(o.content==null)throw new ra;yield*o.content(n)}var DL=mt.bind({ignoreUndefined:!0}),LL=ue("helia:unixfs:chmod"),PL={recursive:!1,shardSplitThresholdBytes:262144};async function I4(r,e,t,n={}){let i=DL(PL,n),o=await an(r,i.path,t,n);if(LL("chmod %c %d",o.cid,e),i.recursive){let m=await hr(async function*(){for await(let d of Gp(o.cid,t,n)){let f,h=[];if(d.type==="raw")f=new X({type:"file",data:d.node});else if(d.type==="file"||d.type==="directory")f=d.unixfs,h=d.node.Links;else throw new on;f.mode=e;let x={Data:f.marshal(),Links:h};yield{path:d.path,content:x}}},d=>Pi(d,t,{...i,dagBuilder:async function*(f,h){for await(let x of f)yield async function(){let g=x.content,y=fe(g),w=await Rr(y,h,{...i,cidVersion:r.version});if(g.Data==null)throw new St(`${w} had no data`);let E=X.unmarshal(g.Data);return{cid:w,size:BigInt(y.length),path:x.path,unixfs:E}}}}),async d=>Oi(d));if(m==null)throw new Wn(`Could not chmod ${o.cid.toString()}`);return sa(m.cid,o,t,i)}let s=await t.get(o.cid,n),a,c=[];if(o.cid.code===$e)a=new X({type:"file",data:s});else{let m=ke(s);if(m.Data==null)throw new St(`${o.cid.toString()} had no data`);c=m.Links,a=X.unmarshal(m.Data)}a.mode=e;let u=fe({Data:a.marshal(),Links:c}),l=await ae.digest(u),p=V.create(o.cid.version,Ve,l);return await t.put(p,u),sa(p,o,t,i)}var OL=mt.bind({ignoreUndefined:!0}),FL=ue("helia:unixfs:cp"),zL={force:!1,shardSplitThresholdBytes:262144};async function _4(r,e,t,n,i={}){let o=OL(zL,i);if(t.includes("/"))throw new gt("Name must not have slashes");let[s,a]=await Promise.all([zi(e,n,o),oa(r,t,n,o)]);return FL('Adding %c as "%s" to %c',r,t,e),(await ia(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var VL=mt.bind({ignoreUndefined:!0}),ML={};async function*T4(r,e,t={}){let n=VL(ML,t),i=await an(r,n.path,e,n),o=await lt(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new ra;if(o.type!=="directory")throw new Fi;yield*o.content({offset:t.offset,length:t.length})}var jL=mt.bind({ignoreUndefined:!0}),C4=ue("helia:unixfs:mkdir"),$L={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function R4(r,e,t,n={}){let i=jL($L,n);if(e.includes("/"))throw new gt("Path must not have slashes");if((await lt(r,t,n)).type!=="directory")throw new Fi(`${r.toString()} was not a UnixFS directory`);C4("creating %s",e);let a={Data:new X({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=fe(a),u=await ae.digest(c),l=V.create(i.cidVersion,Ve,u);await t.put(l,c);let[p,m]=await Promise.all([zi(r,t,i),oa(l,e,t,i)]);return C4("adding empty dir called %s to %c",e,r),(await ia(p,m,t,{...i,allowOverwriting:i.force})).cid}var ad=ue("helia:unixfs:utils:remove-link");async function U4(r,e,t,n){if(r.node.Data==null)throw new St("Parent node had no data");if(X.unmarshal(r.node.Data).type==="hamt-sharded-directory"){ad(`removing ${e} from sharded directory`);let o=await qL(r,e,t,n);return await sd(o.node,t,n.shardSplitThresholdBytes,n)?o:(ad("converting shard to flat directory %c",r.cid),KL(o,t,n))}return ad(`removing link ${e} regular directory`),HL(r,e,t,n)}var HL=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=fe(r.node),o=await Rr(i,t,{...n,cidVersion:r.cid.version});return ad(`Updated regular directory ${o}`),{node:r.node,cid:o}},qL=async(r,e,t,n)=>{let{path:i}=await od(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(u=>(u.Name??"").substring(2)===e).map(u=>u.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(u=>u.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let u=i[i.length-1];if(u==null||u.node.Links.length>1)break;i.pop();let l=i[i.length-1];if(l==null)break;let p=u.node.Links[0];l.node.Links=l.node.Links.filter(m=>!(m.Name??"").startsWith(l.prefix)),l.node.Links.push({Hash:p.Hash,Name:`${l.prefix}${(p.Name??"").substring(2)}`,Tsize:p.Tsize})}return id(i,t,n)},KL=async(r,e,t)=>{if(r.node.Data==null)throw new gt("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await lt(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let u=0;c.node instanceof Uint8Array?u=c.node.byteLength:u=fe(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:u})}let o=X.unmarshal(r.node.Data);n.Data=new X({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=fe(Ue(n));return{cid:await Rr(s,e,{codec:Ke,cidVersion:r.cid.version,signal:t.signal}),node:n}};var GL=mt.bind({ignoreUndefined:!0}),WL=ue("helia:unixfs:rm"),YL={shardSplitThresholdBytes:262144};async function N4(r,e,t,n={}){let i=GL(YL,n);if(e.includes("/"))throw new gt("Name must not have slashes");let o=await zi(r,t,i);return WL("Removing %s from %c",e,r),(await U4(o,e,t,{...i,cidVersion:r.version})).cid}var XL=mt.bind({ignoreUndefined:!0}),JL=ue("helia:unixfs:stat"),ZL={};async function D4(r,e,t={}){let n=XL(ZL,t),i=await an(r,t.path,e,n);JL("stat %c",i.cid);let o=await lt(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new on;let s=0n,a=0n,c=0n,u=0n,l=0,p,m,d=o.type,f;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),u=BigInt(o.node.byteLength),l=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,u=a,l=1,p=o.unixfs.mode,m=o.unixfs.mtime,f=o.unixfs),o.type==="file"){let h=await L4(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((x,g)=>x+(g.Tsize??0),0)),c=BigInt(h.localFileSize),u=BigInt(h.localDagSize),l=h.blocks,p=o.unixfs.mode,m=o.unixfs.mtime,f=o.unixfs}return{cid:i.cid,mode:p,mtime:m,fileSize:s,dagSize:a,localFileSize:c,localDagSize:u,blocks:l,type:d,unixfs:f}}async function L4(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===$e)n.localFileSize+=i.byteLength;else if(r.code===Ve){let o=ke(i);if(o.Links.length>0)for(let s of o.Links){let a=await L4(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new St(`PBNode ${r.toString()} had no data`);let s=X.unmarshal(o.Data);if(s.data==null)throw new St(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new Wn(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var QL=mt.bind({ignoreUndefined:!0}),eP=ue("helia:unixfs:touch"),tP={recursive:!1,shardSplitThresholdBytes:262144};async function P4(r,e,t={}){let n=QL(tP,t),i=await an(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(eP("touch %c %o",i.cid,o),n.recursive){let m=await hr(async function*(){for await(let d of Gp(i.cid,e)){let f,h;if(d.type==="raw")f=new X({data:d.node}),h=[];else if(d.type==="file"||d.type==="directory")f=d.unixfs,h=d.node.Links;else throw new on;f.mtime=o;let x={Data:f.marshal(),Links:h};yield{path:d.path,content:x}}},d=>Pi(d,e,{...n,dagBuilder:async function*(f,h){for await(let x of f)yield async function(){let g=x.content,y=fe(g),w=await Rr(y,h,{...n,cidVersion:r.version});if(g.Data==null)throw new St(`${w} had no data`);let E=X.unmarshal(g.Data);return{cid:w,size:BigInt(y.length),path:x.path,unixfs:E}}}}),async d=>Oi(d));if(m==null)throw new Wn(`Could not chmod ${i.cid.toString()}`);return sa(m.cid,i,e,n)}let s=await e.get(i.cid,t),a,c=[];if(i.cid.code===$e)a=new X({data:s});else{let m=ke(s);if(c=m.Links,m.Data==null)throw new St(`${i.cid.toString()} had no data`);a=X.unmarshal(m.Data)}a.mtime=o;let u=fe({Data:a.marshal(),Links:c}),l=await ae.digest(u),p=V.create(i.cid.version,Ve,l);return await e.put(p,u),sa(p,i,e,n)}var ux=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*j6(e,this.components.blockstore,t)}async addBytes(e,t={}){return $6(e,this.components.blockstore,t)}async addByteStream(e,t={}){return H6(e,this.components.blockstore,t)}async addFile(e,t={}){return q6(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return K6(e,this.components.blockstore,t)}async*cat(e,t={}){yield*k4(e,this.components.blockstore,t)}async chmod(e,t,n={}){return I4(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return _4(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*T4(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return R4(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return N4(e,t,this.components.blockstore,n)}async stat(e,t={}){return D4(e,this.components.blockstore,t)}async touch(e,t={}){return P4(e,this.components.blockstore,t)}};function O4(r){return new ux(r)}var e8=ee(Q4(),1),SP="application/octet-stream",BP=/^(<\?xml[^>]+>)?[^<^\w]+<svg/ig,kP=[async({bytes:r})=>BP.test(new TextDecoder().decode(r.slice(0,64)))?"image/svg+xml":void 0,async({path:r})=>{let e=e8.default.lookup(r);if(e!==!1)return e}],IP={"video/quicktime":"video/mp4"};function _P(r){return IP[r]??r}async function t8(r){for(let e of kP){let t=await e(r);if(t!==void 0)return _P(t)}return SP}async function r8(r,e,t,n){let i=t.forComponent("helia:verified-fetch:get-stream-and-content-type"),o=r[Symbol.asyncIterator](),{value:s,done:a}=await o.next();if(a===!0)throw i.error("No content found for path",e),new Error("No content found");let c=await t8({bytes:s,path:e}),u=new ReadableStream({async start(l){n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),l.enqueue(s)},async pull(l){let{value:p,done:m}=await o.next();if(m===!0){p!=null&&(n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),l.enqueue(p)),l.close();return}n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),l.enqueue(p)}});return{contentType:c,stream:u}}var n8=ee(X0(),1),wd=class{lru;constructor(e){this.lru=(0,n8.default)(e)}get(e){let t=this.lru.get(e);if(t!=null){if(t.expire!=null&&t.expire<Date.now()){this.lru.remove(e);return}return t.value}}set(e,t,n){this.lru.set(e,{value:t,expire:Date.now()+n})}has(e){return this.get(e)!=null}remove(e){this.lru.remove(e)}clear(){this.lru.clear()}};var bx=new wd(1e3),TP=/^(?<protocol>ip[fn]s):\/\/(?<cidOrPeerIdOrDnsLink>[^/$?]+)\/?(?<path>[^$?]*)\??(?<queryString>.*)$/;async function i8({urlString:r,ipns:e,logger:t},n){let i=t.forComponent("helia:verified-fetch:parse-url-string"),o=r.match(TP);if(o==null||o.groups==null)throw new TypeError(`Invalid URL: ${r}, please use ipfs:// or ipns:// URLs only.`);let{protocol:s,cidOrPeerIdOrDnsLink:a,path:c,queryString:u}=o.groups,l,p,m=[];if(s==="ipfs")try{l=V.parse(a)}catch(x){i.error(x),m.push(new TypeError("Invalid CID for ipfs://<cid> URL"))}else{let x=bx.get(a);if(x!=null)l=x.cid,p=x.path,i.trace("resolved %s to %c from cache",a,l);else{i.trace("Attempting to resolve PeerId for %s",a);let g=null;try{g=mr(a),x=await e.resolve(g,{onProgress:n?.onProgress}),l=x?.cid,p=x?.path,i.trace("resolved %s to %c",a,l),bx.set(a,x,60*1e3*2)}catch(y){g==null?(i.error('Could not parse PeerId string "%s"',a,y),m.push(new TypeError(`Could not parse PeerId in ipns url "${a}", ${y.message}`))):(i.error("Could not resolve PeerId %c",g,y),m.push(new TypeError(`Could not resolve PeerId "${a}", ${y.message}`)))}if(l==null){i.trace("Attempting to resolve DNSLink for %s",a);try{x=await e.resolveDns(a,{onProgress:n?.onProgress}),l=x?.cid,p=x?.path,i.trace("resolved %s to %c",a,l),bx.set(a,x,60*1e3*2)}catch(y){i.error('Could not resolve DnsLink for "%s"',a,y),m.push(y)}}}}if(l==null)throw new AggregateError(m,`Invalid resource. Cannot determine CID from URL "${r}"`);let d={};if(u!=null&&u.length>0){let x=u.split("&");for(let g of x){let[y,w]=g.split("=");d[y]=decodeURIComponent(w)}}let f=[];c.length>0&&f.push(c),p!=null&&p.length>0&&f.push(p);let h=f.join("/");return{protocol:s,cid:l,path:h,query:d}}async function o8(r,{ipns:e,logger:t},n){if(typeof r=="string")return i8({urlString:r,ipns:e,logger:t},{onProgress:n?.onProgress});let i=V.asCID(r);if(i!=null)return{cid:i,protocol:"ipfs",path:"",query:{}};throw new TypeError(`Invalid resource. Cannot determine CID from resource: ${r}`)}async function s8(r,e,t){let n=[],i;for await(let o of nx(e,r,t))n.push(o.cid),i=o;if(i==null)throw new Error("No terminal element found");return{ipfsRoots:n,terminalElement:i}}function CP(r){if(r==null)return;let e;return r?.signal===null&&(e=void 0),{...r,signal:e}}var bd=class{helia;ipns;unixfs;dagJson;dagCbor;json;pathWalker;log;constructor({helia:e,ipns:t,unixfs:n,dagJson:i,json:o,dagCbor:s,pathWalker:a},c){this.helia=e,this.log=e.logger.forComponent("helia:verified-fetch"),this.ipns=t??ZE(e,{resolvers:[Dp("https://mozilla.cloudflare-dns.com/dns-query"),Dp("https://dns.google/resolve")]}),this.unixfs=n??O4(e),this.dagJson=i??Ov(e),this.json=o??C3(e),this.dagCbor=s??Pv(e),this.pathWalker=a??s8,this.log.trace("created VerifiedFetch instance")}async handleIPNSRecord({cid:e,path:t,options:n}){let i=new Response("vnd.ipfs.ipns-record support is not implemented",{status:501});return i.headers.set("X-Content-Type-Options","nosniff"),i}async handleIPLDCar({cid:e,path:t,options:n}){let i=new Response("vnd.ipld.car support is not implemented",{status:501});return i.headers.set("X-Content-Type-Options","nosniff"),i}async handleDagJson({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e.toString(),path:t}));let i=await this.dagJson.get(e,{signal:n?.signal,onProgress:n?.onProgress});n?.onProgress?.(new P("verified-fetch:request:end",{cid:e.toString(),path:t}));let o=new Response(JSON.stringify(i),{status:200});return o.headers.set("content-type","application/json"),o}async handleJson({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e.toString(),path:t}));let i=await this.json.get(e,{signal:n?.signal,onProgress:n?.onProgress});n?.onProgress?.(new P("verified-fetch:request:end",{cid:e.toString(),path:t}));let o=new Response(JSON.stringify(i),{status:200});return o.headers.set("content-type","application/json"),o}async handleDagCbor({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e.toString(),path:t}));let i=await this.dagCbor.get(e,{signal:n?.signal,onProgress:n?.onProgress});n?.onProgress?.(new P("verified-fetch:request:end",{cid:e.toString(),path:t}));let o=new Response(JSON.stringify(i),{status:200});return o.headers.set("content-type","application/json"),o}async handleDagPb({cid:e,path:t,options:n,terminalElement:i}){this.log.trace("fetching %c/%s",e,t);let o=i?.cid??e,s;if(i?.type==="directory"){let p=i.cid,m="index.html";try{this.log.trace("found directory at %c/%s, looking for index.html",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:p.toString(),path:m})),s=await this.unixfs.stat(p,{path:m,signal:n?.signal,onProgress:n?.onProgress}),this.log.trace("found root file at %c/%s with cid %c",p,m,s.cid),t=m,o=s.cid}catch(d){return this.log("error loading path %c/%s",p,m,d),new Response("Unable to find index.html for directory at given path. Support for directories with implicit root is not implemented",{status:501})}finally{n?.onProgress?.(new P("verified-fetch:request:end",{cid:p.toString(),path:m}))}}n?.onProgress?.(new P("verified-fetch:request:start",{cid:o.toString(),path:""}));let a=this.unixfs.cat(o,{signal:n?.signal,onProgress:n?.onProgress});n?.onProgress?.(new P("verified-fetch:request:end",{cid:o.toString(),path:""})),this.log("got async iterator for %c/%s",e,t);let{contentType:c,stream:u}=await r8(a,t??"",this.helia.logger,{onProgress:n?.onProgress}),l=new Response(u,{status:200});return l.headers.set("content-type",c),l}async handleRaw({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e.toString(),path:t}));let i=await this.helia.blockstore.get(e);n?.onProgress?.(new P("verified-fetch:request:end",{cid:e.toString(),path:t}));let o=new Response(uf(i),{status:200});return o.headers.set("content-type","application/octet-stream"),o}getFormat({headerFormat:e,queryFormat:t}){let n={"vnd.ipld.raw":"raw","vnd.ipld.car":"car","application/x-tar":"tar","application/vnd.ipld.dag-json":"dag-json","application/vnd.ipld.dag-cbor":"dag-cbor","application/json":"json","application/cbor":"cbor","vnd.ipfs.ipns-record":"ipns-record"};if(e!=null){for(let i in n)if(e.includes(i))return n[i]}else if(t!=null)return t;return null}formatHandlers={raw:async()=>new Response("application/vnd.ipld.raw support is not implemented",{status:501}),car:this.handleIPLDCar,"ipns-record":this.handleIPNSRecord,tar:async()=>new Response("application/x-tar support is not implemented",{status:501}),"dag-json":async()=>new Response("application/vnd.ipld.dag-json support is not implemented",{status:501}),"dag-cbor":async()=>new Response("application/vnd.ipld.dag-cbor support is not implemented",{status:501}),json:async()=>new Response("application/json support is not implemented",{status:501}),cbor:async()=>new Response("application/cbor support is not implemented",{status:501})};codecHandlers={[Bi]:this.handleDagJson,[Ve]:this.handleDagPb,[ii]:this.handleJson,[Ai]:this.handleDagCbor,[$e]:this.handleRaw};async fetch(e,t){let n=CP(t),{path:i,query:o,...s}=await o8(e,{ipns:this.ipns,logger:this.helia.logger},n),a=s.cid,c,u=this.getFormat({headerFormat:new Headers(n?.headers).get("accept"),queryFormat:o.format??null});if(u!=null){let m=this.formatHandlers[u];if(m!=null&&(c=await m.call(this,{cid:a,path:i,options:n}),c.status===501))return c}let l,p;try{let m=await this.pathWalker(this.helia.blockstore,`${a.toString()}/${i}`,n);p=m.ipfsRoots,l=m.terminalElement}catch(m){this.log.error("Error walking path %s",i,m)}if(c==null){let m=this.codecHandlers[a.code];if(m!=null)c=await m.call(this,{cid:a,path:i,options:n,terminalElement:l});else return new Response(`Support for codec with code ${a.code} is not yet implemented. Please open an issue at https://github.com/ipfs/helia/issues/new`,{status:501})}return c.headers.set("etag",a.toString()),c.headers.set("cache-cotrol","public, max-age=29030400, immutable"),c.headers.set("X-Ipfs-Path",e.toString()),p!=null&&c.headers.set("X-Ipfs-Roots",p.map(m=>m.toV1().toString()).join(",")),c}async start(){await this.helia.start()}async stop(){await this.helia.stop()}};var Zc,vd=async function(e,t){return Zc==null&&(Zc=await vx()),Zc(e,t)};vd.start=async function(){await Zc?.start()};vd.stop=async function(){await Zc?.stop()};async function vx(r){RP(r)||(r=await Lv({blockBrokers:[xa({gateways:r?.gateways})],routers:(r?.routers??["https://delegated-ipfs.dev"]).map(n=>Ja(n))}));let e=new bd({helia:r});async function t(n,i){return e.fetch(n,i)}return t.stop=e.stop.bind(e),t.start=e.start.bind(e),t}function RP(r){return r?.blockstore!=null&&r?.datastore!=null&&r?.gc!=null&&r?.stop!=null&&r?.start!=null}return b8(UP);})();
|
|
7
|
+
`)}`:`${t} :`}};Cp=Ln;$.Constructed=Cp;Ln.NAME="CONSTRUCTED";var Za=class extends tt{fromBER(e,t,n){return t}toBER(e){return er}};Za.override="EndOfContentValueBlock";var Np,Ja=class extends Ge{constructor(e={}){super(e,Za),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};Np=Ja;$.EndOfContent=Np;Ja.NAME=ss;var Up,Dn=class extends Ge{constructor(e={}){super(e,tt),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(e,t,n){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=n,t+n>e.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):t+n}toBER(e,t){let n=new ArrayBuffer(2);if(!e){let i=new Uint8Array(n);i[0]=5,i[1]=0}return t&&t.write(n),n}onAsciiEncoding(){return`${this.constructor.NAME}`}};Up=Dn;$.Null=Up;Dn.NAME="NULL";var Qa=class extends Zr(tt){constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=se.BufferSourceConverter.toUint8Array(t.valueHex):this.valueHexView=new Uint8Array(1),e&&(this.value=e)}get value(){for(let e of this.valueHexView)if(e>0)return!0;return!1}set value(e){this.valueHexView[0]=e?255:0}fromBER(e,t,n){let i=se.BufferSourceConverter.toUint8Array(e);return Xr(this,i,t,n)?(this.valueHexView=i.subarray(t,t+n),n>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,_h.call(this),this.blockLength=n,t+n):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};Qa.NAME="BooleanValueBlock";var Lp,ec=class extends Ge{constructor(e={}){super(e,Qa),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};Lp=ec;$.Boolean=Lp;ec.NAME="BOOLEAN";var tc=class extends Zr(yr){constructor({isConstructed:e=!1,...t}={}){super(t),this.isConstructed=e}fromBER(e,t,n){let i=0;if(this.isConstructed){if(this.isHexOnly=!1,i=yr.prototype.fromBER.call(this,e,t,n),i===-1)return i;for(let o=0;o<this.value.length;o++){let s=this.value[o].constructor.NAME;if(s===ss){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(s!==_p)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,i=super.fromBER(e,t,n),this.blockLength=n;return i}toBER(e,t){return this.isConstructed?yr.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};tc.NAME="OctetStringValueBlock";var Dp,Wr=class r extends Ge{constructor({idBlock:e={},lenBlock:t={},...n}={}){var i,o;(i=n.isConstructed)!==null&&i!==void 0||(n.isConstructed=!!(!((o=n.value)===null||o===void 0)&&o.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},tc),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(e,t,n){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,n===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),t;if(!this.valueBlock.isConstructed){let o=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+n);try{if(o.byteLength){let s=Rc(o,0,o.byteLength);s.offset!==-1&&s.offset===n&&(this.valueBlock.value=[s.result])}}catch{}}return super.fromBER(e,t,n)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?Ln.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${se.Convert.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;let e=[];for(let t of this.valueBlock.value)t instanceof r&&e.push(t.valueBlock.valueHexView);return se.BufferSourceConverter.concat(e)}};Dp=Wr;$.OctetString=Dp;Wr.NAME=_p;var rc=class extends Zr(yr){constructor({unusedBits:e=0,isConstructed:t=!1,...n}={}){super(n),this.unusedBits=e,this.isConstructed=t,this.blockLength=this.valueHexView.byteLength}fromBER(e,t,n){if(!n)return t;let i=-1;if(this.isConstructed){if(i=yr.prototype.fromBER.call(this,e,t,n),i===-1)return i;for(let a of this.value){let c=a.constructor.NAME;if(c===ss){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(c!==kp)return this.error="BIT STRING may consists of BIT STRINGs only",-1;let u=a.valueBlock;if(this.unusedBits>0&&u.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=u.unusedBits}return i}let o=se.BufferSourceConverter.toUint8Array(e);if(!Xr(this,o,t,n))return-1;let s=o.subarray(t,t+n);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){let a=s.subarray(1);try{if(a.byteLength){let c=Rc(a,0,a.byteLength);c.offset!==-1&&c.offset===n-1&&(this.value=[c.result])}}catch{}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,t+n}toBER(e,t){if(this.isConstructed)return yr.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return er;let n=new Uint8Array(this.valueHexView.length+1);return n[0]=this.unusedBits,n.set(this.valueHexView,1),n.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}};rc.NAME="BitStringValueBlock";var Pp,co=class extends Ge{constructor({idBlock:e={},lenBlock:t={},...n}={}){var i,o;(i=n.isConstructed)!==null&&i!==void 0||(n.isConstructed=!!(!((o=n.value)===null||o===void 0)&&o.length)),super({idBlock:{isConstructed:n.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!n.isIndefiniteForm},...n},rc),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(e,t,n){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(e,t,n)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return Ln.prototype.onAsciiEncoding.call(this);{let e=[],t=this.valueBlock.valueHexView;for(let i of t)e.push(i.toString(2).padStart(8,"0"));let n=e.join("");return`${this.constructor.NAME} : ${n.substring(0,n.length-this.valueBlock.unusedBits)}`}}};Pp=co;$.BitString=Pp;co.NAME=kp;var Op;function S3(r,e){let t=new Uint8Array([0]),n=new Uint8Array(r),i=new Uint8Array(e),o=n.slice(0),s=o.length-1,a=i.slice(0),c=a.length-1,u=0,l=c<s?s:c,h=0;for(let p=l;p>=0;p--,h++){switch(!0){case h<a.length:u=o[s-h]+a[c-h]+t[0];break;default:u=o[s-h]+t[0]}switch(t[0]=u/10,!0){case h>=o.length:o=Ka(new Uint8Array([u%10]),o);break;default:o[s-h]=u%10}}return t[0]>0&&(o=Ka(t,o)),o}function Sp(r){if(r>=is.length)for(let e=is.length;e<=r;e++){let t=new Uint8Array([0]),n=is[e-1].slice(0);for(let i=n.length-1;i>=0;i--){let o=new Uint8Array([(n[i]<<1)+t[0]]);t[0]=o[0]/10,n[i]=o[0]%10}t[0]>0&&(n=Ka(t,n)),is.push(n)}return is[r]}function _3(r,e){let t=0,n=new Uint8Array(r),i=new Uint8Array(e),o=n.slice(0),s=o.length-1,a=i.slice(0),c=a.length-1,u,l=0;for(let h=c;h>=0;h--,l++)switch(u=o[s-l]-a[c-l]-t,!0){case u<0:t=1,o[s-l]=u+10;break;default:t=0,o[s-l]=u}if(t>0)for(let h=s-c+1;h>=0;h--,l++)if(u=o[s-l]-t,u<0)t=1,o[s-l]=u+10;else{t=0,o[s-l]=u;break}return o.slice()}var as=class extends Zr(tt){constructor({value:e,...t}={}){super(t),this._valueDec=0,t.valueHex&&this.setValueHex(),e!==void 0&&(this.valueDec=e)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=_h.call(this)))}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(Bp(e))}get valueDec(){return this._valueDec}fromDER(e,t,n,i=0){let o=this.fromBER(e,t,n);if(o===-1)return o;let s=this.valueHexView;return s[0]===0&&s[1]&128?this.valueHexView=s.subarray(1):i!==0&&s.length<i&&(i-s.length>1&&(i=s.length+1),this.valueHexView=s.subarray(i-s.length)),o}toDER(e=!1){let t=this.valueHexView;switch(!0){case(t[0]&128)!==0:{let n=new Uint8Array(this.valueHexView.length+1);n[0]=0,n.set(t,1),this.valueHexView=n}break;case(t[0]===0&&(t[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(e)}fromBER(e,t,n){let i=super.fromBER(e,t,n);return i===-1||this.setValueHex(),i}toBER(e){return e?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){let e=this.valueHexView.length*8-1,t=new Uint8Array(this.valueHexView.length*8/3),n=0,i,o=this.valueHexView,s="",a=!1;for(let c=o.byteLength-1;c>=0;c--){i=o[c];for(let u=0;u<8;u++){if((i&1)===1)switch(n){case e:t=_3(Sp(n),t),s="-";break;default:t=S3(t,Sp(n))}n++,i>>=1}}for(let c=0;c<t.length;c++)t[c]&&(a=!0),a&&(s+=Ip.charAt(t[c]));return a===!1&&(s+=Ip.charAt(0)),s}};Op=as;as.NAME="IntegerValueBlock";Object.defineProperty(Op.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var Fp,Le=class r extends Ge{constructor(e={}){super(e,as),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return qa(),BigInt(this.valueBlock.toString())}static fromBigInt(e){qa();let t=BigInt(e),n=new os,i=t.toString(16).replace(/^-/,""),o=new Uint8Array(se.Convert.FromHex(i));if(t<0){let a=new Uint8Array(o.length+(o[0]&128?1:0));a[0]|=128;let u=BigInt(`0x${se.Convert.ToHex(a)}`)+t,l=se.BufferSourceConverter.toUint8Array(se.Convert.FromHex(u.toString(16)));l[0]|=128,n.write(l)}else o[0]&128&&n.write(new Uint8Array([0])),n.write(o);return new r({valueHex:n.final()})}convertToDER(){let e=new r({valueHex:this.valueBlock.valueHexView});return e.valueBlock.toDER(),e}convertFromDER(){return new r({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}};Fp=Le;$.Integer=Fp;Le.NAME="INTEGER";var Vp,nc=class extends Le{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};Vp=nc;$.Enumerated=Vp;nc.NAME="ENUMERATED";var cs=class extends Zr(tt){constructor({valueDec:e=-1,isFirstSid:t=!1,...n}={}){super(n),this.valueDec=e,this.isFirstSid=t}fromBER(e,t,n){if(!n)return t;let i=se.BufferSourceConverter.toUint8Array(e);if(!Xr(this,i,t,n))return-1;let o=i.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=o[a]&127,this.blockLength++,!!(o[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,o[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=fi(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){qa();let t=BigInt(e).toString(2);for(;t.length%7;)t="0"+t;let n=new Uint8Array(t.length/7);for(let i=0;i<n.length;i++)n[i]=parseInt(t.slice(i*7,i*7+7),2)+(i+1<n.length?128:0);this.fromBER(n.buffer,0,n.length)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,o=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)o[s]=i[s]|128;return o[this.blockLength-1]=i[this.blockLength-1],o.buffer}let t=Un(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",er;let n=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),o=t.byteLength-1;for(let s=0;s<o;s++)n[s]=i[s]|128;n[o]=i[o]}return n}toString(){let e="";if(this.isHexOnly)e=se.Convert.ToHex(this.valueHexView);else if(this.isFirstSid){let t=this.valueDec;this.valueDec<=39?e="0.":this.valueDec<=79?(e="1.",t-=40):(e="2.",t-=80),e+=t.toString()}else e=this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}};cs.NAME="sidBlock";var ic=class extends tt{constructor({value:e=lo,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let i=t;for(;n>0;){let o=new cs;if(i=o.fromBER(e,i,n),i===-1)return this.blockLength=0,this.error=o.error,i;this.value.length===0&&(o.isFirstSid=!0),this.blockLength+=o.blockLength,n-=o.blockLength,this.value.push(o)}return i}toBER(e){let t=[];for(let n=0;n<this.value.length;n++){let i=this.value[n].toBER(e);if(i.byteLength===0)return this.error=this.value[n].error,er;t.push(i)}return kh(t)}fromString(e){this.value=[];let t=0,n=0,i="",o=!1;do if(n=e.indexOf(".",t),n===-1?i=e.substring(t):i=e.substring(t,n),t=n+1,o){let s=this.value[0],a=0;switch(s.valueDec){case 0:break;case 1:a=40;break;case 2:a=80;break;default:this.value=[];return}let c=parseInt(i,10);if(isNaN(c))return;s.valueDec=c+a,o=!1}else{let s=new cs;if(i>Number.MAX_SAFE_INTEGER){qa();let a=BigInt(i);s.valueBigInt=a}else if(s.valueDec=parseInt(i,10),isNaN(s.valueDec))return;this.value.length||(s.isFirstSid=!0,o=!0),this.value.push(s)}while(n!==-1)}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let i=this.value[n].toString();n!==0&&(e=`${e}.`),t?(i=`{${i}}`,this.value[n].isFirstSid?e=`2.{${i} - 80}`:e+=i):e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};ic.NAME="ObjectIdentifierValueBlock";var Mp,Qt=class extends Ge{constructor(e={}){super(e,ic),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};Mp=Qt;$.ObjectIdentifier=Mp;Qt.NAME="OBJECT IDENTIFIER";var ls=class extends Zr(jr){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,n){if(n===0)return t;let i=se.BufferSourceConverter.toUint8Array(e);if(!Xr(this,i,t,n))return-1;let o=i.subarray(t,t+n);this.valueHexView=new Uint8Array(n);for(let a=0;a<n&&(this.valueHexView[a]=o[a]&127,this.blockLength++,!!(o[a]&128));a++);let s=new Uint8Array(this.blockLength);for(let a=0;a<this.blockLength;a++)s[a]=this.valueHexView[a];return this.valueHexView=s,o[this.blockLength-1]&128?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=fi(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,o=new Uint8Array(this.blockLength);for(let s=0;s<this.blockLength-1;s++)o[s]=i[s]|128;return o[this.blockLength-1]=i[this.blockLength-1],o.buffer}let t=Un(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",er;let n=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),o=t.byteLength-1;for(let s=0;s<o;s++)n[s]=i[s]|128;n[o]=i[o]}return n.buffer}toString(){let e="";return this.isHexOnly?e=se.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};ls.NAME="relativeSidBlock";var oc=class extends tt{constructor({value:e=lo,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,n){let i=t;for(;n>0;){let o=new ls;if(i=o.fromBER(e,i,n),i===-1)return this.blockLength=0,this.error=o.error,i;this.blockLength+=o.blockLength,n-=o.blockLength,this.value.push(o)}return i}toBER(e,t){let n=[];for(let i=0;i<this.value.length;i++){let o=this.value[i].toBER(e);if(o.byteLength===0)return this.error=this.value[i].error,er;n.push(o)}return kh(n)}fromString(e){this.value=[];let t=0,n=0,i="";do{n=e.indexOf(".",t),n===-1?i=e.substring(t):i=e.substring(t,n),t=n+1;let o=new ls;if(o.valueDec=parseInt(i,10),isNaN(o.valueDec))return!0;this.value.push(o)}while(n!==-1);return!0}toString(){let e="",t=!1;for(let n=0;n<this.value.length;n++){t=this.value[n].isHexOnly;let i=this.value[n].toString();n!==0&&(e=`${e}.`),t&&(i=`{${i}}`),e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};oc.NAME="RelativeObjectIdentifierValueBlock";var Hp,sc=class extends Ge{constructor(e={}){super(e,oc),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};Hp=sc;$.RelativeObjectIdentifier=Hp;sc.NAME="RelativeObjectIdentifier";var $p,Ve=class extends Ln{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};$p=Ve;$.Sequence=$p;Ve.NAME="SEQUENCE";var zp,ac=class extends Ln{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};zp=ac;$.Set=zp;ac.NAME="SET";var cc=class extends Zr(tt){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=lo}toJSON(){return{...super.toJSON(),value:this.value}}};cc.NAME="StringValueBlock";var lc=class extends cc{};lc.NAME="SimpleStringValueBlock";var st=class extends Wa{constructor({...e}={}){super(e,lc)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,se.BufferSourceConverter.toUint8Array(e))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t);for(let i=0;i<t;i++)n[i]=e.charCodeAt(i);this.valueBlock.value=e}};st.NAME="SIMPLE STRING";var uc=class extends st{fromBuffer(e){this.valueBlock.valueHexView=se.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=se.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=se.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(se.Convert.FromUtf8String(e)),this.valueBlock.value=e}};uc.NAME="Utf8StringValueBlock";var Kp,Yr=class extends uc{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};Kp=Yr;$.Utf8String=Kp;Yr.NAME="UTF8String";var hc=class extends st{fromBuffer(e){this.valueBlock.value=se.Convert.ToUtf16String(e),this.valueBlock.valueHexView=se.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(se.Convert.FromUtf16String(e))}};hc.NAME="BmpStringValueBlock";var qp,dc=class extends hc{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};qp=dc;$.BmpString=qp;dc.NAME="BMPString";var fc=class extends st{fromBuffer(e){let t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0),n=new Uint8Array(t);for(let i=0;i<n.length;i+=4)n[i]=n[i+3],n[i+1]=n[i+2],n[i+2]=0,n[i+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){let t=e.length,n=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let i=0;i<t;i++){let o=Un(e.charCodeAt(i),8),s=new Uint8Array(o);if(s.length>4)continue;let a=4-s.length;for(let c=s.length-1;c>=0;c--)n[i*4+c+a]=s[c]}this.valueBlock.value=e}};fc.NAME="UniversalStringValueBlock";var Gp,pc=class extends fc{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};Gp=pc;$.UniversalString=Gp;pc.NAME="UniversalString";var jp,mc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};jp=mc;$.NumericString=jp;mc.NAME="NumericString";var Wp,yc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};Wp=yc;$.PrintableString=Wp;yc.NAME="PrintableString";var Yp,gc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};Yp=gc;$.TeletexString=Yp;gc.NAME="TeletexString";var Xp,wc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};Xp=wc;$.VideotexString=Xp;wc.NAME="VideotexString";var Zp,xc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};Zp=xc;$.IA5String=Zp;xc.NAME="IA5String";var Jp,bc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};Jp=bc;$.GraphicString=Jp;bc.NAME="GraphicString";var Qp,us=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};Qp=us;$.VisibleString=Qp;us.NAME="VisibleString";var e1,Ec=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};e1=Ec;$.GeneralString=e1;Ec.NAME="GeneralString";var t1,vc=class extends st{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};t1=vc;$.CharacterString=t1;vc.NAME="CharacterString";var r1,hs=class extends us{constructor({value:e,valueDate:t,...n}={}){if(super(n),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,e){this.fromString(e),this.valueBlock.valueHexView=new Uint8Array(e.length);for(let i=0;i<e.length;i++)this.valueBlock.valueHexView[i]=e.charCodeAt(i)}t&&(this.fromDate(t),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,se.BufferSourceConverter.toUint8Array(e)))}toBuffer(){let e=this.toString(),t=new ArrayBuffer(e.length),n=new Uint8Array(t);for(let i=0;i<e.length;i++)n[i]=e.charCodeAt(i);return t}fromDate(e){this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){let n=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(e);if(n===null){this.error="Wrong input string for conversion";return}let i=parseInt(n[1],10);i>=50?this.year=1900+i:this.year=2e3+i,this.month=parseInt(n[2],10),this.day=parseInt(n[3],10),this.hour=parseInt(n[4],10),this.minute=parseInt(n[5],10),this.second=parseInt(n[6],10)}toString(e="iso"){if(e==="iso"){let t=new Array(7);return t[0]=pt(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=pt(this.month,2),t[2]=pt(this.day,2),t[3]=pt(this.hour,2),t[4]=pt(this.minute,2),t[5]=pt(this.second,2),t[6]="Z",t.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}};r1=hs;$.UTCTime=r1;hs.NAME="UTCTime";var n1,Bc=class extends hs{constructor(e={}){var t;super(e),(t=this.millisecond)!==null&&t!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e),this.millisecond=e.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(e){let t=!1,n="",i="",o=0,s,a=0,c=0;if(e[e.length-1]==="Z")n=e.substring(0,e.length-1),t=!0;else{let h=new Number(e[e.length-1]);if(isNaN(h.valueOf()))throw new Error("Wrong input string for conversion");n=e}if(t){if(n.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(n.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let h=1,p=n.indexOf("+"),d="";if(p===-1&&(p=n.indexOf("-"),h=-1),p!==-1){if(d=n.substring(p+1),n=n.substring(0,p),d.length!==2&&d.length!==4)throw new Error("Wrong input string for conversion");let f=parseInt(d.substring(0,2),10);if(isNaN(f.valueOf()))throw new Error("Wrong input string for conversion");if(a=h*f,d.length===4){if(f=parseInt(d.substring(2,4),10),isNaN(f.valueOf()))throw new Error("Wrong input string for conversion");c=h*f}}}let u=n.indexOf(".");if(u===-1&&(u=n.indexOf(",")),u!==-1){let h=new Number(`0${n.substring(u)}`);if(isNaN(h.valueOf()))throw new Error("Wrong input string for conversion");o=h.valueOf(),i=n.substring(0,u)}else i=n;switch(!0){case i.length===8:if(s=/(\d{4})(\d{2})(\d{2})/ig,u!==-1)throw new Error("Wrong input string for conversion");break;case i.length===10:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let h=60*o;this.minute=Math.floor(h),h=60*(h-this.minute),this.second=Math.floor(h),h=1e3*(h-this.second),this.millisecond=Math.floor(h)}break;case i.length===12:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let h=60*o;this.second=Math.floor(h),h=1e3*(h-this.second),this.millisecond=Math.floor(h)}break;case i.length===14:if(s=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,u!==-1){let h=1e3*o;this.millisecond=Math.floor(h)}break;default:throw new Error("Wrong input string for conversion")}let l=s.exec(i);if(l===null)throw new Error("Wrong input string for conversion");for(let h=1;h<l.length;h++)switch(h){case 1:this.year=parseInt(l[h],10);break;case 2:this.month=parseInt(l[h],10);break;case 3:this.day=parseInt(l[h],10);break;case 4:this.hour=parseInt(l[h],10)+a;break;case 5:this.minute=parseInt(l[h],10)+c;break;case 6:this.second=parseInt(l[h],10);break;default:throw new Error("Wrong input string for conversion")}if(t===!1){let h=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=h.getUTCFullYear(),this.month=h.getUTCMonth(),this.day=h.getUTCDay(),this.hour=h.getUTCHours(),this.minute=h.getUTCMinutes(),this.second=h.getUTCSeconds(),this.millisecond=h.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){let t=[];return t.push(pt(this.year,4)),t.push(pt(this.month,2)),t.push(pt(this.day,2)),t.push(pt(this.hour,2)),t.push(pt(this.minute,2)),t.push(pt(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(pt(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};n1=Bc;$.GeneralizedTime=n1;Bc.NAME="GeneralizedTime";var i1,Ac=class extends Yr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};i1=Ac;$.DATE=i1;Ac.NAME="DATE";var o1,Ic=class extends Yr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};o1=Ic;$.TimeOfDay=o1;Ic.NAME="TimeOfDay";var s1,Sc=class extends Yr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};s1=Sc;$.DateTime=s1;Sc.NAME="DateTime";var a1,_c=class extends Yr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};a1=_c;$.Duration=a1;_c.NAME="Duration";var c1,kc=class extends Yr{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};c1=kc;$.TIME=c1;kc.NAME="TIME";function R3(r){let{result:e}=uo(r),t=e.valueBlock.value;return{n:Q(gr(t[1].toBigInt()),"base64url"),e:Q(gr(t[2].toBigInt()),"base64url"),d:Q(gr(t[3].toBigInt()),"base64url"),p:Q(gr(t[4].toBigInt()),"base64url"),q:Q(gr(t[5].toBigInt()),"base64url"),dp:Q(gr(t[6].toBigInt()),"base64url"),dq:Q(gr(t[7].toBigInt()),"base64url"),qi:Q(gr(t[8].toBigInt()),"base64url"),kty:"RSA",alg:"RS256"}}function T3(r){if(r.n==null||r.e==null||r.d==null||r.p==null||r.q==null||r.dp==null||r.dq==null||r.qi==null)throw new F("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new Ve({value:[new Le({value:0}),Le.fromBigInt(wr(Y(r.n,"base64url"))),Le.fromBigInt(wr(Y(r.e,"base64url"))),Le.fromBigInt(wr(Y(r.d,"base64url"))),Le.fromBigInt(wr(Y(r.p,"base64url"))),Le.fromBigInt(wr(Y(r.q,"base64url"))),Le.fromBigInt(wr(Y(r.dp,"base64url"))),Le.fromBigInt(wr(Y(r.dq,"base64url"))),Le.fromBigInt(wr(Y(r.qi,"base64url")))]}).toBER();return new Uint8Array(t,0,t.byteLength)}function C3(r){let{result:e}=uo(r),t=e.valueBlock.value[1].valueBlock.value[0].valueBlock.value;return{kty:"RSA",n:Q(gr(t[0].toBigInt()),"base64url"),e:Q(gr(t[1].toBigInt()),"base64url")}}function N3(r){if(r.n==null||r.e==null)throw new F("JWK was missing components","ERR_INVALID_PARAMETERS");let t=new Ve({value:[new Ve({value:[new Qt({value:"1.2.840.113549.1.1.1"}),new Dn]}),new co({valueHex:new Ve({value:[Le.fromBigInt(wr(Y(r.n,"base64url"))),Le.fromBigInt(wr(Y(r.e,"base64url")))]}).toBER()})]}).toBER();return new Uint8Array(t,0,t.byteLength)}function gr(r){let e=r.toString(16);e.length%2>0&&(e=`0${e}`);let t=e.length/2,n=new Uint8Array(t),i=0,o=0;for(;i<t;)n[i]=parseInt(e.slice(o,o+2),16),i+=1,o+=2;return n}function wr(r){let e=[];return r.forEach(function(t){let n=t.toString(16);n.length%2>0&&(n=`0${n}`),e.push(n)}),BigInt("0x"+e.join(""))}var U3=16,Th=32,Ch=1e4;async function L3(r,e){let t=ot.get(),i=new Ve({value:[new Le({value:0}),new Ve({value:[new Qt({value:"1.2.840.113549.1.1.1"}),new Dn]}),new Wr({valueHex:r.marshal()})]}).toBER(),o=new Uint8Array(i,0,i.byteLength),s=di(U3),a=await Ih(ro,e,s,{c:Ch,dkLen:Th}),c=di(16),u=await t.subtle.importKey("raw",a,"AES-CBC",!1,["encrypt"]),l=await t.subtle.encrypt({name:"AES-CBC",iv:c},u,o),h=new Ve({value:[new Wr({valueHex:s}),new Le({value:Ch}),new Le({value:Th}),new Ve({value:[new Qt({value:"1.2.840.113549.2.11"}),new Dn]})]}),p=new Ve({value:[new Qt({value:"1.2.840.113549.1.5.13"}),new Ve({value:[new Ve({value:[new Qt({value:"1.2.840.113549.1.5.12"}),h]}),new Ve({value:[new Qt({value:"2.16.840.1.101.3.4.1.42"}),new Wr({valueHex:c})]})]})]}),f=new Ve({value:[p,new Wr({valueHex:l})]}).toBER(),m=new Uint8Array(f,0,f.byteLength);return["-----BEGIN ENCRYPTED PRIVATE KEY-----",...Q(m,"base64pad").split(/(.{64})/).filter(Boolean),"-----END ENCRYPTED PRIVATE KEY-----"].join(`
|
|
8
|
+
`)}async function D3(r,e){let t=ot.get(),n;if(r.includes("-----BEGIN ENCRYPTED PRIVATE KEY-----")){let i=Y(r.replace("-----BEGIN ENCRYPTED PRIVATE KEY-----","").replace("-----END ENCRYPTED PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:o}=uo(i),{iv:s,salt:a,iterations:c,keySize:u,cipherText:l}=P3(o),h=await Ih(ro,e,a,{c,dkLen:u}),p=await t.subtle.importKey("raw",h,"AES-CBC",!1,["decrypt"]),d=ds(await t.subtle.decrypt({name:"AES-CBC",iv:s},p,l)),{result:f}=uo(d);n=l1(f)}else if(r.includes("-----BEGIN PRIVATE KEY-----")){let i=Y(r.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace(/\n/g,"").trim(),"base64pad"),{result:o}=uo(i);n=l1(o)}else throw new F("Could not parse private key from PEM data","ERR_INVALID_PARAMETERS");return Nh(n)}function P3(r){let e=r.valueBlock.value[0];if(e.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.13")throw new F("Only pkcs5PBES2 encrypted private keys are supported","ERR_INVALID_PARAMS");let n=e.valueBlock.value[1].valueBlock.value[0];if(n.valueBlock.value[0].toString()!=="OBJECT IDENTIFIER : 1.2.840.113549.1.5.12")throw new F("Only pkcs5PBKDF2 key derivation functions are supported","ERR_INVALID_PARAMS");let o=n.valueBlock.value[1],s=ds(o.valueBlock.value[0].getValue()),a=Ch,c=Th;if(o.valueBlock.value.length===3)a=Number(o.valueBlock.value[1].toBigInt()),c=Number(o.valueBlock.value[2].toBigInt());else if(o.valueBlock.value.length===2)throw new F("Could not derive key size and iterations from PEM file - please use @libp2p/rsa to re-import your key","ERR_INVALID_PARAMS");let u=e.valueBlock.value[1].valueBlock.value[1],l=u.valueBlock.value[0].toString();if(l!=="OBJECT IDENTIFIER : 1.2.840.113549.3.7"){if(l!=="OBJECT IDENTIFIER : 1.3.14.3.2.7"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.2"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.22"){if(l!=="OBJECT IDENTIFIER : 2.16.840.1.101.3.4.1.42")throw new F("Only AES-CBC encryption schemes are supported","ERR_INVALID_PARAMS")}}}}let h=ds(u.valueBlock.value[1].getValue());return{cipherText:ds(r.valueBlock.value[1].getValue()),salt:s,iterations:a,keySize:c,iv:h}}function l1(r){return ds(r.valueBlock.value[2].getValue())}function ds(r){return new Uint8Array(r,0,r.byteLength)}async function u1(r){let e=await ot.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:r,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),t=await f1(e);return{privateKey:t[0],publicKey:t[1]}}async function Uh(r){let t=[await ot.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await O3(r)],n=await f1({privateKey:t[0],publicKey:t[1]});return{privateKey:n[0],publicKey:n[1]}}async function h1(r,e){let t=await ot.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),n=await ot.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},t,e instanceof Uint8Array?e:e.subarray());return new Uint8Array(n,0,n.byteLength)}async function d1(r,e,t){let n=await ot.get().subtle.importKey("jwk",r,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return ot.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,e,t instanceof Uint8Array?t:t.subarray())}async function f1(r){if(r.privateKey==null||r.publicKey==null)throw new F("Private and public key are required","ERR_INVALID_PARAMETERS");return Promise.all([ot.get().subtle.exportKey("jwk",r.privateKey),ot.get().subtle.exportKey("jwk",r.publicKey)])}async function O3(r){return ot.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"])}function Tc(r){if(r.kty!=="RSA")throw new F("invalid key type","ERR_INVALID_KEY_TYPE");if(r.n==null)throw new F("invalid key modulus","ERR_INVALID_KEY_MODULUS");return Y(r.n,"base64url").length*8}var ps=8192,fs=class{_key;constructor(e){this._key=e}verify(e,t){return d1(this._key,t,e)}marshal(){return Pn.jwkToPkix(this._key)}get bytes(){return pr.encode({Type:be.RSA,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}hash(){let e=he.digest(this.bytes);return Mt(e)?e.then(({bytes:t})=>t):e.bytes}},ho=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return di(16)}sign(e){return h1(this._key,e)}get public(){if(this._publicKey==null)throw new F("public key not provided","ERR_PUBKEY_NOT_PROVIDED");return new fs(this._publicKey)}marshal(){return Pn.jwkToPkcs1(this._key)}get bytes(){return mr.encode({Type:be.RSA,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}hash(){let e=he.digest(this.bytes);return Mt(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return Q(e,"base58btc")}async export(e,t="pkcs-8"){if(t==="pkcs-8")return Pn.exportToPem(this,e);if(t==="libp2p-key")return oo(this.bytes,e);throw new F(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};async function Nh(r){let e=Pn.pkcs1ToJwk(r);if(Tc(e)>ps)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let t=await Uh(e);return new ho(t.privateKey,t.publicKey)}function V3(r){let e=Pn.pkixToJwk(r);if(Tc(e)>ps)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");return new fs(e)}async function M3(r){if(Tc(r)>ps)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await Uh(r);return new ho(e.privateKey,e.publicKey)}async function H3(r){if(r>ps)throw new F("key size is too large","ERR_KEY_SIZE_TOO_LARGE");let e=await u1(r);return new ho(e.privateKey,e.publicKey)}var Vh={};Ae(Vh,{Secp256k1PrivateKey:()=>ys,Secp256k1PublicKey:()=>ms,generateKeyPair:()=>r6,unmarshalSecp256k1PrivateKey:()=>e6,unmarshalSecp256k1PublicKey:()=>t6});var $3=(r,e,t)=>r&e^~r&t,z3=(r,e,t)=>r&e^r&t^e&t,K3=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),On=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Fn=new Uint32Array(64),Dh=class extends to{constructor(){super(64,32,8,!1),this.A=On[0]|0,this.B=On[1]|0,this.C=On[2]|0,this.D=On[3]|0,this.E=On[4]|0,this.F=On[5]|0,this.G=On[6]|0,this.H=On[7]|0}get(){let{A:e,B:t,C:n,D:i,E:o,F:s,G:a,H:c}=this;return[e,t,n,i,o,s,a,c]}set(e,t,n,i,o,s,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=i|0,this.E=o|0,this.F=s|0,this.G=a|0,this.H=c|0}process(e,t){for(let h=0;h<16;h++,t+=4)Fn[h]=e.getUint32(t,!1);for(let h=16;h<64;h++){let p=Fn[h-15],d=Fn[h-2],f=Xt(p,7)^Xt(p,18)^p>>>3,m=Xt(d,17)^Xt(d,19)^d>>>10;Fn[h]=m+Fn[h-7]+f+Fn[h-16]|0}let{A:n,B:i,C:o,D:s,E:a,F:c,G:u,H:l}=this;for(let h=0;h<64;h++){let p=Xt(a,6)^Xt(a,11)^Xt(a,25),d=l+p+$3(a,c,u)+K3[h]+Fn[h]|0,m=(Xt(n,2)^Xt(n,13)^Xt(n,22))+z3(n,i,o)|0;l=u,u=c,c=a,a=s+d|0,s=o,o=i,i=n,n=d+m|0}n=n+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,l=l+this.H|0,this.set(n,i,o,s,a,c,u,l)}roundClean(){Fn.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var p1=Ta(()=>new Dh);function q3(r){let e=ts(r);fr(e,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});let{endo:t,Fp:n,a:i}=e;if(t){if(!n.eql(i,n.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof t!="object"||typeof t.beta!="bigint"||typeof t.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...e})}var{bytesToNumberBE:G3,hexToBytes:j3}=Ua,pi={Err:class extends Error{constructor(e=""){super(e)}},_parseInt(r){let{Err:e}=pi;if(r.length<2||r[0]!==2)throw new e("Invalid signature integer tag");let t=r[1],n=r.subarray(2,t+2);if(!t||n.length!==t)throw new e("Invalid signature integer: wrong length");if(n[0]&128)throw new e("Invalid signature integer: negative");if(n[0]===0&&!(n[1]&128))throw new e("Invalid signature integer: unnecessary leading zero");return{d:G3(n),l:r.subarray(t+2)}},toSig(r){let{Err:e}=pi,t=typeof r=="string"?j3(r):r;if(!Zt(t))throw new Error("ui8a expected");let n=t.length;if(n<2||t[0]!=48)throw new e("Invalid signature tag");if(t[1]!==n-2)throw new e("Invalid signature: incorrect length");let{d:i,l:o}=pi._parseInt(t.subarray(2)),{d:s,l:a}=pi._parseInt(o);if(a.length)throw new e("Invalid signature: left bytes after parsing");return{r:i,s}},hexFromSig(r){let e=u=>Number.parseInt(u[0],16)&8?"00"+u:u,t=u=>{let l=u.toString(16);return l.length&1?`0${l}`:l},n=e(t(r.s)),i=e(t(r.r)),o=n.length/2,s=i.length/2,a=t(o),c=t(s);return`30${t(s+o+4)}02${c}${i}02${a}${n}`}},Jr=BigInt(0),$t=BigInt(1),Ek=BigInt(2),m1=BigInt(3),vk=BigInt(4);function W3(r){let e=q3(r),{Fp:t}=e,n=e.toBytes||((f,m,y)=>{let g=m.toAffine();return zr(Uint8Array.from([4]),t.toBytes(g.x),t.toBytes(g.y))}),i=e.fromBytes||(f=>{let m=f.subarray(1),y=t.fromBytes(m.subarray(0,t.BYTES)),g=t.fromBytes(m.subarray(t.BYTES,2*t.BYTES));return{x:y,y:g}});function o(f){let{a:m,b:y}=e,g=t.sqr(f),w=t.mul(g,f);return t.add(t.add(w,t.mul(f,m)),y)}if(!t.eql(t.sqr(e.Gy),o(e.Gx)))throw new Error("bad generator point: equation left != right");function s(f){return typeof f=="bigint"&&Jr<f&&f<e.n}function a(f){if(!s(f))throw new Error("Expected valid bigint: 0 < bigint < curve.n")}function c(f){let{allowedPrivateKeyLengths:m,nByteLength:y,wrapPrivateKey:g,n:w}=e;if(m&&typeof f!="bigint"){if(Zt(f)&&(f=Hr(f)),typeof f!="string"||!m.includes(f.length))throw new Error("Invalid key");f=f.padStart(y*2,"0")}let x;try{x=typeof f=="bigint"?f:$r(Se("private key",f,y))}catch{throw new Error(`private key must be ${y} bytes, hex or bigint, not ${typeof f}`)}return g&&(x=ye(x,w)),a(x),x}let u=new Map;function l(f){if(!(f instanceof h))throw new Error("ProjectivePoint expected")}class h{constructor(m,y,g){if(this.px=m,this.py=y,this.pz=g,m==null||!t.isValid(m))throw new Error("x required");if(y==null||!t.isValid(y))throw new Error("y required");if(g==null||!t.isValid(g))throw new Error("z required")}static fromAffine(m){let{x:y,y:g}=m||{};if(!m||!t.isValid(y)||!t.isValid(g))throw new Error("invalid affine point");if(m instanceof h)throw new Error("projective point not allowed");let w=x=>t.eql(x,t.ZERO);return w(y)&&w(g)?h.ZERO:new h(y,g,t.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(m){let y=t.invertBatch(m.map(g=>g.pz));return m.map((g,w)=>g.toAffine(y[w])).map(h.fromAffine)}static fromHex(m){let y=h.fromAffine(i(Se("pointHex",m)));return y.assertValidity(),y}static fromPrivateKey(m){return h.BASE.multiply(c(m))}_setWindowSize(m){this._WINDOW_SIZE=m,u.delete(this)}assertValidity(){if(this.is0()){if(e.allowInfinityPoint&&!t.is0(this.py))return;throw new Error("bad point: ZERO")}let{x:m,y}=this.toAffine();if(!t.isValid(m)||!t.isValid(y))throw new Error("bad point: x or y not FE");let g=t.sqr(y),w=o(m);if(!t.eql(g,w))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){let{y:m}=this.toAffine();if(t.isOdd)return!t.isOdd(m);throw new Error("Field doesn't support isOdd")}equals(m){l(m);let{px:y,py:g,pz:w}=this,{px:x,py:A,pz:I}=m,B=t.eql(t.mul(y,I),t.mul(x,w)),v=t.eql(t.mul(g,I),t.mul(A,w));return B&&v}negate(){return new h(this.px,t.neg(this.py),this.pz)}double(){let{a:m,b:y}=e,g=t.mul(y,m1),{px:w,py:x,pz:A}=this,I=t.ZERO,B=t.ZERO,v=t.ZERO,E=t.mul(w,w),R=t.mul(x,x),N=t.mul(A,A),T=t.mul(w,x);return T=t.add(T,T),v=t.mul(w,A),v=t.add(v,v),I=t.mul(m,v),B=t.mul(g,N),B=t.add(I,B),I=t.sub(R,B),B=t.add(R,B),B=t.mul(I,B),I=t.mul(T,I),v=t.mul(g,v),N=t.mul(m,N),T=t.sub(E,N),T=t.mul(m,T),T=t.add(T,v),v=t.add(E,E),E=t.add(v,E),E=t.add(E,N),E=t.mul(E,T),B=t.add(B,E),N=t.mul(x,A),N=t.add(N,N),E=t.mul(N,T),I=t.sub(I,E),v=t.mul(N,R),v=t.add(v,v),v=t.add(v,v),new h(I,B,v)}add(m){l(m);let{px:y,py:g,pz:w}=this,{px:x,py:A,pz:I}=m,B=t.ZERO,v=t.ZERO,E=t.ZERO,R=e.a,N=t.mul(e.b,m1),T=t.mul(y,x),M=t.mul(g,A),D=t.mul(w,I),ne=t.add(y,g),_=t.add(x,A);ne=t.mul(ne,_),_=t.add(T,M),ne=t.sub(ne,_),_=t.add(y,w);let L=t.add(x,I);return _=t.mul(_,L),L=t.add(T,D),_=t.sub(_,L),L=t.add(g,w),B=t.add(A,I),L=t.mul(L,B),B=t.add(M,D),L=t.sub(L,B),E=t.mul(R,_),B=t.mul(N,D),E=t.add(B,E),B=t.sub(M,E),E=t.add(M,E),v=t.mul(B,E),M=t.add(T,T),M=t.add(M,T),D=t.mul(R,D),_=t.mul(N,_),M=t.add(M,D),D=t.sub(T,D),D=t.mul(R,D),_=t.add(_,D),T=t.mul(M,_),v=t.add(v,T),T=t.mul(L,_),B=t.mul(ne,B),B=t.sub(B,T),T=t.mul(ne,M),E=t.mul(L,E),E=t.add(E,T),new h(B,v,E)}subtract(m){return this.add(m.negate())}is0(){return this.equals(h.ZERO)}wNAF(m){return d.wNAFCached(this,u,m,y=>{let g=t.invertBatch(y.map(w=>w.pz));return y.map((w,x)=>w.toAffine(g[x])).map(h.fromAffine)})}multiplyUnsafe(m){let y=h.ZERO;if(m===Jr)return y;if(a(m),m===$t)return this;let{endo:g}=e;if(!g)return d.unsafeLadder(this,m);let{k1neg:w,k1:x,k2neg:A,k2:I}=g.splitScalar(m),B=y,v=y,E=this;for(;x>Jr||I>Jr;)x&$t&&(B=B.add(E)),I&$t&&(v=v.add(E)),E=E.double(),x>>=$t,I>>=$t;return w&&(B=B.negate()),A&&(v=v.negate()),v=new h(t.mul(v.px,g.beta),v.py,v.pz),B.add(v)}multiply(m){a(m);let y=m,g,w,{endo:x}=e;if(x){let{k1neg:A,k1:I,k2neg:B,k2:v}=x.splitScalar(y),{p:E,f:R}=this.wNAF(I),{p:N,f:T}=this.wNAF(v);E=d.constTimeNegate(A,E),N=d.constTimeNegate(B,N),N=new h(t.mul(N.px,x.beta),N.py,N.pz),g=E.add(N),w=R.add(T)}else{let{p:A,f:I}=this.wNAF(y);g=A,w=I}return h.normalizeZ([g,w])[0]}multiplyAndAddUnsafe(m,y,g){let w=h.BASE,x=(I,B)=>B===Jr||B===$t||!I.equals(w)?I.multiplyUnsafe(B):I.multiply(B),A=x(this,y).add(x(m,g));return A.is0()?void 0:A}toAffine(m){let{px:y,py:g,pz:w}=this,x=this.is0();m==null&&(m=x?t.ONE:t.inv(w));let A=t.mul(y,m),I=t.mul(g,m),B=t.mul(w,m);if(x)return{x:t.ZERO,y:t.ZERO};if(!t.eql(B,t.ONE))throw new Error("invZ was invalid");return{x:A,y:I}}isTorsionFree(){let{h:m,isTorsionFree:y}=e;if(m===$t)return!0;if(y)return y(h,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:m,clearCofactor:y}=e;return m===$t?this:y?y(h,this):this.multiplyUnsafe(e.h)}toRawBytes(m=!0){return this.assertValidity(),n(h,this,m)}toHex(m=!0){return Hr(this.toRawBytes(m))}}h.BASE=new h(e.Gx,e.Gy,t.ONE),h.ZERO=new h(t.ZERO,t.ONE,t.ZERO);let p=e.nBitLength,d=Pa(h,e.endo?Math.ceil(p/2):p);return{CURVE:e,ProjectivePoint:h,normPrivateKeyToScalar:c,weierstrassEquation:o,isWithinCurveOrder:s}}function Y3(r){let e=ts(r);return fr(e,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...e})}function y1(r){let e=Y3(r),{Fp:t,n}=e,i=t.BYTES+1,o=2*t.BYTES+1;function s(_){return Jr<_&&_<t.ORDER}function a(_){return ye(_,n)}function c(_){return La(_,n)}let{ProjectivePoint:u,normPrivateKeyToScalar:l,weierstrassEquation:h,isWithinCurveOrder:p}=W3({...e,toBytes(_,L,X){let U=L.toAffine(),k=t.toBytes(U.x),z=zr;return X?z(Uint8Array.from([L.hasEvenY()?2:3]),k):z(Uint8Array.from([4]),k,t.toBytes(U.y))},fromBytes(_){let L=_.length,X=_[0],U=_.subarray(1);if(L===i&&(X===2||X===3)){let k=$r(U);if(!s(k))throw new Error("Point is not on curve");let z=h(k),j=t.sqrt(z),Z=(j&$t)===$t;return(X&1)===1!==Z&&(j=t.neg(j)),{x:k,y:j}}else if(L===o&&X===4){let k=t.fromBytes(U.subarray(0,t.BYTES)),z=t.fromBytes(U.subarray(t.BYTES,2*t.BYTES));return{x:k,y:z}}else throw new Error(`Point of length ${L} was invalid. Expected ${i} compressed bytes or ${o} uncompressed bytes`)}}),d=_=>Hr(Nn(_,e.nByteLength));function f(_){let L=n>>$t;return _>L}function m(_){return f(_)?a(-_):_}let y=(_,L,X)=>$r(_.slice(L,X));class g{constructor(L,X,U){this.r=L,this.s=X,this.recovery=U,this.assertValidity()}static fromCompact(L){let X=e.nByteLength;return L=Se("compactSignature",L,X*2),new g(y(L,0,X),y(L,X,2*X))}static fromDER(L){let{r:X,s:U}=pi.toSig(Se("DER",L));return new g(X,U)}assertValidity(){if(!p(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!p(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(L){return new g(this.r,this.s,L)}recoverPublicKey(L){let{r:X,s:U,recovery:k}=this,z=v(Se("msgHash",L));if(k==null||![0,1,2,3].includes(k))throw new Error("recovery id invalid");let j=k===2||k===3?X+e.n:X;if(j>=t.ORDER)throw new Error("recovery id 2 or 3 invalid");let Z=k&1?"03":"02",te=u.fromHex(Z+d(j)),ie=c(j),pe=a(-z*ie),ae=a(U*ie),le=u.BASE.multiplyAndAddUnsafe(te,pe,ae);if(!le)throw new Error("point at infinify");return le.assertValidity(),le}hasHighS(){return f(this.s)}normalizeS(){return this.hasHighS()?new g(this.r,a(-this.s),this.recovery):this}toDERRawBytes(){return ci(this.toDERHex())}toDERHex(){return pi.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return ci(this.toCompactHex())}toCompactHex(){return d(this.r)+d(this.s)}}let w={isValidPrivateKey(_){try{return l(_),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{let _=gh(e.n);return up(e.randomBytes(_),e.n)},precompute(_=8,L=u.BASE){return L._setWindowSize(_),L.multiply(BigInt(3)),L}};function x(_,L=!0){return u.fromPrivateKey(_).toRawBytes(L)}function A(_){let L=Zt(_),X=typeof _=="string",U=(L||X)&&_.length;return L?U===i||U===o:X?U===2*i||U===2*o:_ instanceof u}function I(_,L,X=!0){if(A(_))throw new Error("first arg must be private key");if(!A(L))throw new Error("second arg must be public key");return u.fromHex(L).multiply(l(_)).toRawBytes(X)}let B=e.bits2int||function(_){let L=$r(_),X=_.length*8-e.nBitLength;return X>0?L>>BigInt(X):L},v=e.bits2int_modN||function(_){return a(B(_))},E=es(e.nBitLength);function R(_){if(typeof _!="bigint")throw new Error("bigint expected");if(!(Jr<=_&&_<E))throw new Error(`bigint expected < 2^${e.nBitLength}`);return Nn(_,e.nByteLength)}function N(_,L,X=T){if(["recovered","canonical"].some(Be=>Be in X))throw new Error("sign() legacy options not supported");let{hash:U,randomBytes:k}=e,{lowS:z,prehash:j,extraEntropy:Z}=X;z==null&&(z=!0),_=Se("msgHash",_),j&&(_=Se("prehashed msgHash",U(_)));let te=v(_),ie=l(L),pe=[R(ie),R(te)];if(Z!=null){let Be=Z===!0?k(t.BYTES):Z;pe.push(Se("extraEntropy",Be))}let ae=zr(...pe),le=te;function Ce(Be){let ze=B(Be);if(!p(ze))return;let Ke=c(ze),Pe=u.BASE.multiply(ze).toAffine(),Ze=a(Pe.x);if(Ze===Jr)return;let Dr=a(Ke*a(le+Ze*ie));if(Dr===Jr)return;let Qn=(Pe.x===Ze?0:2)|Number(Pe.y&$t),zo=Dr;return z&&f(Dr)&&(zo=m(Dr),Qn^=1),new g(Ze,zo,Qn)}return{seed:ae,k2sig:Ce}}let T={lowS:e.lowS,prehash:!1},M={lowS:e.lowS,prehash:!1};function D(_,L,X=T){let{seed:U,k2sig:k}=N(_,L,X),z=e;return fh(z.hash.outputLen,z.nByteLength,z.hmac)(U,k)}u.BASE._setWindowSize(8);function ne(_,L,X,U=M){let k=_;if(L=Se("msgHash",L),X=Se("publicKey",X),"strict"in U)throw new Error("options.strict was renamed to lowS");let{lowS:z,prehash:j}=U,Z,te;try{if(typeof k=="string"||Zt(k))try{Z=g.fromDER(k)}catch(Pe){if(!(Pe instanceof pi.Err))throw Pe;Z=g.fromCompact(k)}else if(typeof k=="object"&&typeof k.r=="bigint"&&typeof k.s=="bigint"){let{r:Pe,s:Ze}=k;Z=new g(Pe,Ze)}else throw new Error("PARSE");te=u.fromHex(X)}catch(Pe){if(Pe.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(z&&Z.hasHighS())return!1;j&&(L=e.hash(L));let{r:ie,s:pe}=Z,ae=v(L),le=c(pe),Ce=a(ae*le),Be=a(ie*le),ze=u.BASE.multiplyAndAddUnsafe(te,Ce,Be)?.toAffine();return ze?a(ze.x)===ie:!1}return{CURVE:e,getPublicKey:x,getSharedSecret:I,sign:D,verify:ne,ProjectivePoint:u,Signature:g,utils:w}}function X3(r){return{hash:r,hmac:(e,...t)=>ns(r,e,Ra(...t)),randomBytes:eo}}function g1(r,e){let t=n=>y1({...r,...X3(n)});return Object.freeze({...t(e),create:t})}var b1=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),w1=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),Z3=BigInt(1),Ph=BigInt(2),x1=(r,e)=>(r+e/Ph)/e;function J3(r){let e=b1,t=BigInt(3),n=BigInt(6),i=BigInt(11),o=BigInt(22),s=BigInt(23),a=BigInt(44),c=BigInt(88),u=r*r*r%e,l=u*u*r%e,h=xe(l,t,e)*l%e,p=xe(h,t,e)*l%e,d=xe(p,Ph,e)*u%e,f=xe(d,i,e)*d%e,m=xe(f,o,e)*f%e,y=xe(m,a,e)*m%e,g=xe(y,c,e)*y%e,w=xe(g,a,e)*m%e,x=xe(w,t,e)*l%e,A=xe(x,s,e)*f%e,I=xe(A,n,e)*u%e,B=xe(I,Ph,e);if(!Oh.eql(Oh.sqr(B),r))throw new Error("Cannot find square root");return B}var Oh=Da(b1,void 0,void 0,{sqrt:J3}),tr=g1({a:BigInt(0),b:BigInt(7),Fp:Oh,n:w1,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:r=>{let e=w1,t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),n=-Z3*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),o=t,s=BigInt("0x100000000000000000000000000000000"),a=x1(o*r,e),c=x1(-n*r,e),u=ye(r-a*t-c*i,e),l=ye(-a*n-c*o,e),h=u>s,p=l>s;if(h&&(u=e-u),p&&(l=e-l),u>s||l>s)throw new Error("splitScalar: Endomorphism failed, k="+r);return{k1neg:h,k1:u,k2neg:p,k2:l}}}},p1),Ck=BigInt(0);var Nk=tr.ProjectivePoint;function E1(){return tr.utils.randomPrivateKey()}function v1(r,e){let t=he.digest(e instanceof Uint8Array?e:e.subarray());if(Mt(t))return t.then(({digest:n})=>tr.sign(n,r).toDERRawBytes()).catch(n=>{throw new F(String(n),"ERR_INVALID_INPUT")});try{return tr.sign(t.digest,r).toDERRawBytes()}catch(n){throw new F(String(n),"ERR_INVALID_INPUT")}}function B1(r,e,t){let n=he.digest(t instanceof Uint8Array?t:t.subarray());if(Mt(n))return n.then(({digest:i})=>tr.verify(e,i,r)).catch(i=>{throw new F(String(i),"ERR_INVALID_INPUT")});try{return tr.verify(e,n.digest,r)}catch(i){throw new F(String(i),"ERR_INVALID_INPUT")}}function A1(r){return tr.ProjectivePoint.fromHex(r).toRawBytes(!0)}function I1(r){try{tr.getPublicKey(r,!0)}catch(e){throw new F(String(e),"ERR_INVALID_PRIVATE_KEY")}}function Fh(r){try{tr.ProjectivePoint.fromHex(r)}catch(e){throw new F(String(e),"ERR_INVALID_PUBLIC_KEY")}}function S1(r){try{return tr.getPublicKey(r,!0)}catch(e){throw new F(String(e),"ERR_INVALID_PRIVATE_KEY")}}var ms=class{_key;constructor(e){Fh(e),this._key=e}verify(e,t){return B1(this._key,t,e)}marshal(){return A1(this._key)}get bytes(){return pr.encode({Type:be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}async hash(){let e=he.digest(this.bytes),t;return Mt(e)?{bytes:t}=await e:t=e.bytes,t}},ys=class{_key;_publicKey;constructor(e,t){this._key=e,this._publicKey=t??S1(e),I1(this._key),Fh(this._publicKey)}sign(e){return v1(this._key,e)}get public(){return new ms(this._publicKey)}marshal(){return this._key}get bytes(){return mr.encode({Type:be.Secp256k1,Data:this.marshal()}).subarray()}equals(e){return de(this.bytes,e.bytes)}hash(){let e=he.digest(this.bytes);return Mt(e)?e.then(({bytes:t})=>t):e.bytes}async id(){let e=await this.public.hash();return Q(e,"base58btc")}async export(e,t="libp2p-key"){if(t==="libp2p-key")return oo(this.bytes,e);throw new F(`export format '${t}' is not supported`,"ERR_INVALID_EXPORT_FORMAT")}};function e6(r){return new ys(r)}function t6(r){return new ms(r)}async function r6(){let r=E1();return new ys(r)}var mi={rsa:Lh,ed25519:Ah,secp256k1:Vh};function _1(r){let e=Object.keys(mi).join(" / ");return new F(`invalid or unsupported key type ${r}. Must be ${e}`,"ERR_UNSUPPORTED_KEY_TYPE")}function Mh(r){let e=pr.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case be.RSA:return mi.rsa.unmarshalRsaPublicKey(t);case be.Ed25519:return mi.ed25519.unmarshalEd25519PublicKey(t);case be.Secp256k1:return mi.secp256k1.unmarshalSecp256k1PublicKey(t);default:throw _1(e.Type??"unknown")}}async function k1(r){let e=mr.decode(r),t=e.Data??new Uint8Array;switch(e.Type){case be.RSA:return mi.rsa.unmarshalRsaPrivateKey(t);case be.Ed25519:return mi.ed25519.unmarshalEd25519PrivateKey(t);case be.Secp256k1:return mi.secp256k1.unmarshalSecp256k1PrivateKey(t);default:throw _1(e.Type??"RSA")}}var ed=re(Re(),1);var Qr="/",R1=new TextEncoder().encode(Qr),Cc=R1[0],Fe=class r{_buf;constructor(e,t){if(typeof e=="string")this._buf=Y(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]!==Cc)throw new Error("Invalid key")}toString(e="utf8"){return Q(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new r(e.join(Qr))}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=R1),this._buf[0]!==Cc){let e=new Uint8Array(this._buf.byteLength+1);e.fill(Cc,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===Cc;)this._buf=this._buf.subarray(0,-1)}less(e){let t=this.list(),n=e.list();for(let i=0;i<t.length;i++){if(n.length<i+1)return!1;let o=t[i],s=n[i];if(o<s)return!0;if(o>s)return!1}return t.length<n.length}reverse(){return r.withNamespaces(this.list().slice().reverse())}namespaces(){return this.list()}baseNamespace(){let e=this.namespaces();return e[e.length-1]}list(){return this.toString().split(Qr).slice(1)}type(){return n6(this.baseNamespace())}name(){return i6(this.baseNamespace())}instance(e){return new r(this.toString()+":"+e)}path(){let e=this.parent().toString();return e.endsWith(Qr)||(e+=Qr),e+=this.type(),new r(e)}parent(){let e=this.list();return e.length===1?new r(Qr):new r(e.slice(0,-1).join(Qr))}child(e){return this.toString()===Qr?e:e.toString()===Qr?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(),...o6(e.map(t=>t.namespaces()))])}};function n6(r){let e=r.split(":");return e.length<2?"":e.slice(0,-1).join(":")}function i6(r){let e=r.split(":");return e[e.length-1]}function o6(r){return[].concat(...r)}var Gm=re(Nc(),1);var T1="ERR_IPNS_EXPIRED_RECORD",gs="ERR_UNRECOGNIZED_VALIDITY",C1="ERR_SIGNATURE_CREATION",en="ERR_SIGNATURE_VERIFICATION";var $h="ERR_UNDEFINED_PARAMETER",N1="ERR_INVALID_RECORD_DATA",U1="ERR_INVALID_VALUE",L1="ERR_INVALID_EMBEDDED_KEY",D1="ERR_MISSING_PRIVATE_KEY",P1="ERR_RECORD_TOO_LARGE";var je;(function(r){let e;(function(i){i.EOL="EOL"})(e=r.ValidityType||(r.ValidityType={}));let t;(function(i){i[i.EOL=0]="EOL"})(t||(t={})),function(i){i.codec=()=>si(t)}(e=r.ValidityType||(r.ValidityType={}));let n;r.codec=()=>(n==null&&(n=Ft((i,o,s={})=>{s.lengthDelimited!==!1&&o.fork(),i.value!=null&&(o.uint32(10),o.bytes(i.value)),i.signatureV1!=null&&(o.uint32(18),o.bytes(i.signatureV1)),i.validityType!=null&&(o.uint32(24),r.ValidityType.codec().encode(i.validityType,o)),i.validity!=null&&(o.uint32(34),o.bytes(i.validity)),i.sequence!=null&&(o.uint32(40),o.uint64(i.sequence)),i.ttl!=null&&(o.uint32(48),o.uint64(i.ttl)),i.pubKey!=null&&(o.uint32(58),o.bytes(i.pubKey)),i.signatureV2!=null&&(o.uint32(66),o.bytes(i.signatureV2)),i.data!=null&&(o.uint32(74),o.bytes(i.data)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.value=i.bytes();break;case 2:s.signatureV1=i.bytes();break;case 3:s.validityType=r.ValidityType.codec().decode(i);break;case 4:s.validity=i.bytes();break;case 5:s.sequence=i.uint64();break;case 6:s.ttl=i.uint64();break;case 7:s.pubKey=i.bytes();break;case 8:s.signatureV2=i.bytes();break;case 9:s.data=i.bytes();break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Ot(i,r.codec()),r.decode=i=>Dt(i,r.codec())})(je||(je={}));var s6=["string","number","bigint","symbol"],a6=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","HTMLElement","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function O1(r){if(r===null)return"null";if(r===void 0)return"undefined";if(r===!0||r===!1)return"boolean";let e=typeof r;if(s6.includes(e))return e;if(e==="function")return"Function";if(Array.isArray(r))return"Array";if(c6(r))return"Buffer";let t=l6(r);return t||"Object"}function c6(r){return r&&r.constructor&&r.constructor.isBuffer&&r.constructor.isBuffer.call(null,r)}function l6(r){let e=Object.prototype.toString.call(r).slice(8,-1);if(a6.includes(e))return e}var b=class{constructor(e,t,n){this.major=e,this.majorEncoded=e<<5,this.name=t,this.terminal=n}toString(){return`Type[${this.major}].${this.name}`}compare(e){return this.major<e.major?-1:this.major>e.major?1:0}};b.uint=new b(0,"uint",!0);b.negint=new b(1,"negint",!0);b.bytes=new b(2,"bytes",!0);b.string=new b(3,"string",!0);b.array=new b(4,"array",!1);b.map=new b(5,"map",!1);b.tag=new b(6,"tag",!1);b.float=new b(7,"float",!0);b.false=new b(7,"false",!0);b.true=new b(7,"true",!0);b.null=new b(7,"null",!0);b.undefined=new b(7,"undefined",!0);b.break=new b(7,"break",!0);var C=class{constructor(e,t,n){this.type=e,this.value=t,this.encodedLength=n,this.encodedBytes=void 0,this.byteValue=void 0}toString(){return`Token[${this.type}].${this.value}`}};var fo=globalThis.process&&!globalThis.process.browser&&globalThis.Buffer&&typeof globalThis.Buffer.isBuffer=="function",u6=new TextDecoder,h6=new TextEncoder;function Uc(r){return fo&&globalThis.Buffer.isBuffer(r)}function ws(r){return r instanceof Uint8Array?Uc(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r:Uint8Array.from(r)}var H1=fo?(r,e,t)=>t-e>64?globalThis.Buffer.from(r.subarray(e,t)).toString("utf8"):V1(r,e,t):(r,e,t)=>t-e>64?u6.decode(r.subarray(e,t)):V1(r,e,t),Lc=fo?r=>r.length>64?globalThis.Buffer.from(r):F1(r):r=>r.length>64?h6.encode(r):F1(r),xr=r=>Uint8Array.from(r),po=fo?(r,e,t)=>Uc(r)?new Uint8Array(r.subarray(e,t)):r.slice(e,t):(r,e,t)=>r.slice(e,t),$1=fo?(r,e)=>(r=r.map(t=>t instanceof Uint8Array?t:globalThis.Buffer.from(t)),ws(globalThis.Buffer.concat(r,e))):(r,e)=>{let t=new Uint8Array(e),n=0;for(let i of r)n+i.length>t.length&&(i=i.subarray(0,t.length-n)),t.set(i,n),n+=i.length;return t},z1=fo?r=>globalThis.Buffer.allocUnsafe(r):r=>new Uint8Array(r);function K1(r,e){if(Uc(r)&&Uc(e))return r.compare(e);for(let t=0;t<r.length;t++)if(r[t]!==e[t])return r[t]<e[t]?-1:1;return 0}function F1(r){let e=[],t=0;for(let n=0;n<r.length;n++){let i=r.charCodeAt(n);i<128?e[t++]=i:i<2048?(e[t++]=i>>6|192,e[t++]=i&63|128):(i&64512)===55296&&n+1<r.length&&(r.charCodeAt(n+1)&64512)===56320?(i=65536+((i&1023)<<10)+(r.charCodeAt(++n)&1023),e[t++]=i>>18|240,e[t++]=i>>12&63|128,e[t++]=i>>6&63|128,e[t++]=i&63|128):(e[t++]=i>>12|224,e[t++]=i>>6&63|128,e[t++]=i&63|128)}return e}function V1(r,e,t){let n=[];for(;e<t;){let i=r[e],o=null,s=i>239?4:i>223?3:i>191?2:1;if(e+s<=t){let a,c,u,l;switch(s){case 1:i<128&&(o=i);break;case 2:a=r[e+1],(a&192)===128&&(l=(i&31)<<6|a&63,l>127&&(o=l));break;case 3:a=r[e+1],c=r[e+2],(a&192)===128&&(c&192)===128&&(l=(i&15)<<12|(a&63)<<6|c&63,l>2047&&(l<55296||l>57343)&&(o=l));break;case 4:a=r[e+1],c=r[e+2],u=r[e+3],(a&192)===128&&(c&192)===128&&(u&192)===128&&(l=(i&15)<<18|(a&63)<<12|(c&63)<<6|u&63,l>65535&&l<1114112&&(o=l))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),e+=s}return Kh(n)}var M1=4096;function Kh(r){let e=r.length;if(e<=M1)return String.fromCharCode.apply(String,r);let t="",n=0;for(;n<e;)t+=String.fromCharCode.apply(String,r.slice(n,n+=M1));return t}var d6=256,xs=class{constructor(e=d6){this.chunkSize=e,this.cursor=0,this.maxCursor=-1,this.chunks=[],this._initReuseChunk=null}reset(){this.cursor=0,this.maxCursor=-1,this.chunks.length&&(this.chunks=[]),this._initReuseChunk!==null&&(this.chunks.push(this._initReuseChunk),this.maxCursor=this._initReuseChunk.length-1)}push(e){let t=this.chunks[this.chunks.length-1];if(this.cursor+e.length<=this.maxCursor+1){let i=t.length-(this.maxCursor-this.cursor)-1;t.set(e,i)}else{if(t){let i=t.length-(this.maxCursor-this.cursor)-1;i<t.length&&(this.chunks[this.chunks.length-1]=t.subarray(0,i),this.maxCursor=this.cursor-1)}e.length<64&&e.length<this.chunkSize?(t=z1(this.chunkSize),this.chunks.push(t),this.maxCursor+=t.length,this._initReuseChunk===null&&(this._initReuseChunk=t),t.set(e,0)):(this.chunks.push(e),this.maxCursor+=e.length)}this.cursor+=e.length}toBytes(e=!1){let t;if(this.chunks.length===1){let n=this.chunks[0];e&&this.cursor>n.length/2?(t=this.cursor===n.length?n:n.subarray(0,this.cursor),this._initReuseChunk=null,this.chunks=[]):t=po(n,0,this.cursor)}else t=$1(this.chunks,this.cursor);return e&&this.reset(),t}};var K="CBOR decode error:",tn="CBOR encode error:",bs=[];bs[23]=1;bs[24]=2;bs[25]=3;bs[26]=5;bs[27]=9;function rn(r,e,t){if(r.length-e<t)throw new Error(`${K} not enough data for type`)}var Me=[24,256,65536,4294967296,BigInt("18446744073709551616")];function St(r,e,t){rn(r,e,1);let n=r[e];if(t.strict===!0&&n<Me[0])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function _t(r,e,t){rn(r,e,2);let n=r[e]<<8|r[e+1];if(t.strict===!0&&n<Me[1])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function kt(r,e,t){rn(r,e,4);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];if(t.strict===!0&&n<Me[2])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);return n}function Rt(r,e,t){rn(r,e,8);let n=r[e]*16777216+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3],i=r[e+4]*16777216+(r[e+5]<<16)+(r[e+6]<<8)+r[e+7],o=(BigInt(n)<<BigInt(32))+BigInt(i);if(t.strict===!0&&o<Me[3])throw new Error(`${K} integer encoded in more bytes than necessary (strict decode)`);if(o<=Number.MAX_SAFE_INTEGER)return Number(o);if(t.allowBigInt===!0)return o;throw new Error(`${K} integers outside of the safe integer range are not supported`)}function q1(r,e,t,n){return new C(b.uint,St(r,e+1,n),2)}function G1(r,e,t,n){return new C(b.uint,_t(r,e+1,n),3)}function j1(r,e,t,n){return new C(b.uint,kt(r,e+1,n),5)}function W1(r,e,t,n){return new C(b.uint,Rt(r,e+1,n),9)}function zt(r,e){return We(r,0,e.value)}function We(r,e,t){if(t<Me[0]){let n=Number(t);r.push([e|n])}else if(t<Me[1]){let n=Number(t);r.push([e|24,n])}else if(t<Me[2]){let n=Number(t);r.push([e|25,n>>>8,n&255])}else if(t<Me[3]){let n=Number(t);r.push([e|26,n>>>24&255,n>>>16&255,n>>>8&255,n&255])}else{let n=BigInt(t);if(n<Me[4]){let i=[e|27,0,0,0,0,0,0,0],o=Number(n&BigInt(4294967295)),s=Number(n>>BigInt(32)&BigInt(4294967295));i[8]=o&255,o=o>>8,i[7]=o&255,o=o>>8,i[6]=o&255,o=o>>8,i[5]=o&255,i[4]=s&255,s=s>>8,i[3]=s&255,s=s>>8,i[2]=s&255,s=s>>8,i[1]=s&255,r.push(i)}else throw new Error(`${K} encountered BigInt larger than allowable range`)}}zt.encodedSize=function(e){return We.encodedSize(e.value)};We.encodedSize=function(e){return e<Me[0]?1:e<Me[1]?2:e<Me[2]?3:e<Me[3]?5:9};zt.compareTokens=function(e,t){return e.value<t.value?-1:e.value>t.value?1:0};function Y1(r,e,t,n){return new C(b.negint,-1-St(r,e+1,n),2)}function X1(r,e,t,n){return new C(b.negint,-1-_t(r,e+1,n),3)}function Z1(r,e,t,n){return new C(b.negint,-1-kt(r,e+1,n),5)}var qh=BigInt(-1),J1=BigInt(1);function Q1(r,e,t,n){let i=Rt(r,e+1,n);if(typeof i!="bigint"){let o=-1-i;if(o>=Number.MIN_SAFE_INTEGER)return new C(b.negint,o,9)}if(n.allowBigInt!==!0)throw new Error(`${K} integers outside of the safe integer range are not supported`);return new C(b.negint,qh-BigInt(i),9)}function Dc(r,e){let t=e.value,n=typeof t=="bigint"?t*qh-J1:t*-1-1;We(r,e.type.majorEncoded,n)}Dc.encodedSize=function(e){let t=e.value,n=typeof t=="bigint"?t*qh-J1:t*-1-1;return n<Me[0]?1:n<Me[1]?2:n<Me[2]?3:n<Me[3]?5:9};Dc.compareTokens=function(e,t){return e.value<t.value?1:e.value>t.value?-1:0};function Es(r,e,t,n){rn(r,e,t+n);let i=po(r,e+t,e+t+n);return new C(b.bytes,i,t+n)}function em(r,e,t,n){return Es(r,e,1,t)}function tm(r,e,t,n){return Es(r,e,2,St(r,e+1,n))}function rm(r,e,t,n){return Es(r,e,3,_t(r,e+1,n))}function nm(r,e,t,n){return Es(r,e,5,kt(r,e+1,n))}function im(r,e,t,n){let i=Rt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${K} 64-bit integer bytes lengths not supported`);return Es(r,e,9,i)}function Pc(r){return r.encodedBytes===void 0&&(r.encodedBytes=r.type===b.string?Lc(r.value):r.value),r.encodedBytes}function mo(r,e){let t=Pc(e);We(r,e.type.majorEncoded,t.length),r.push(t)}mo.encodedSize=function(e){let t=Pc(e);return We.encodedSize(t.length)+t.length};mo.compareTokens=function(e,t){return p6(Pc(e),Pc(t))};function p6(r,e){return r.length<e.length?-1:r.length>e.length?1:K1(r,e)}function vs(r,e,t,n,i){let o=t+n;rn(r,e,o);let s=new C(b.string,H1(r,e+t,e+o),o);return i.retainStringBytes===!0&&(s.byteValue=po(r,e+t,e+o)),s}function om(r,e,t,n){return vs(r,e,1,t,n)}function sm(r,e,t,n){return vs(r,e,2,St(r,e+1,n),n)}function am(r,e,t,n){return vs(r,e,3,_t(r,e+1,n),n)}function cm(r,e,t,n){return vs(r,e,5,kt(r,e+1,n),n)}function lm(r,e,t,n){let i=Rt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${K} 64-bit integer string lengths not supported`);return vs(r,e,9,i,n)}var um=mo;function yo(r,e,t,n){return new C(b.array,n,t)}function hm(r,e,t,n){return yo(r,e,1,t)}function dm(r,e,t,n){return yo(r,e,2,St(r,e+1,n))}function fm(r,e,t,n){return yo(r,e,3,_t(r,e+1,n))}function pm(r,e,t,n){return yo(r,e,5,kt(r,e+1,n))}function mm(r,e,t,n){let i=Rt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${K} 64-bit integer array lengths not supported`);return yo(r,e,9,i)}function ym(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return yo(r,e,1,1/0)}function Oc(r,e){We(r,b.array.majorEncoded,e.value)}Oc.compareTokens=zt.compareTokens;Oc.encodedSize=function(e){return We.encodedSize(e.value)};function go(r,e,t,n){return new C(b.map,n,t)}function gm(r,e,t,n){return go(r,e,1,t)}function wm(r,e,t,n){return go(r,e,2,St(r,e+1,n))}function xm(r,e,t,n){return go(r,e,3,_t(r,e+1,n))}function bm(r,e,t,n){return go(r,e,5,kt(r,e+1,n))}function Em(r,e,t,n){let i=Rt(r,e+1,n);if(typeof i=="bigint")throw new Error(`${K} 64-bit integer map lengths not supported`);return go(r,e,9,i)}function vm(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return go(r,e,1,1/0)}function Fc(r,e){We(r,b.map.majorEncoded,e.value)}Fc.compareTokens=zt.compareTokens;Fc.encodedSize=function(e){return We.encodedSize(e.value)};function Bm(r,e,t,n){return new C(b.tag,t,1)}function Am(r,e,t,n){return new C(b.tag,St(r,e+1,n),2)}function Im(r,e,t,n){return new C(b.tag,_t(r,e+1,n),3)}function Sm(r,e,t,n){return new C(b.tag,kt(r,e+1,n),5)}function _m(r,e,t,n){return new C(b.tag,Rt(r,e+1,n),9)}function Vc(r,e){We(r,b.tag.majorEncoded,e.value)}Vc.compareTokens=zt.compareTokens;Vc.encodedSize=function(e){return We.encodedSize(e.value)};var b6=20,E6=21,v6=22,B6=23;function km(r,e,t,n){if(n.allowUndefined===!1)throw new Error(`${K} undefined values are not supported`);return n.coerceUndefinedToNull===!0?new C(b.null,null,1):new C(b.undefined,void 0,1)}function Rm(r,e,t,n){if(n.allowIndefinite===!1)throw new Error(`${K} indefinite length items not allowed`);return new C(b.break,void 0,1)}function Gh(r,e,t){if(t){if(t.allowNaN===!1&&Number.isNaN(r))throw new Error(`${K} NaN values are not supported`);if(t.allowInfinity===!1&&(r===1/0||r===-1/0))throw new Error(`${K} Infinity values are not supported`)}return new C(b.float,r,e)}function Tm(r,e,t,n){return Gh(jh(r,e+1),3,n)}function Cm(r,e,t,n){return Gh(Wh(r,e+1),5,n)}function Nm(r,e,t,n){return Gh(Pm(r,e+1),9,n)}function Mc(r,e,t){let n=e.value;if(n===!1)r.push([b.float.majorEncoded|b6]);else if(n===!0)r.push([b.float.majorEncoded|E6]);else if(n===null)r.push([b.float.majorEncoded|v6]);else if(n===void 0)r.push([b.float.majorEncoded|B6]);else{let i,o=!1;(!t||t.float64!==!0)&&(Lm(n),i=jh(rr,1),n===i||Number.isNaN(n)?(rr[0]=249,r.push(rr.slice(0,3)),o=!0):(Dm(n),i=Wh(rr,1),n===i&&(rr[0]=250,r.push(rr.slice(0,5)),o=!0))),o||(A6(n),i=Pm(rr,1),rr[0]=251,r.push(rr.slice(0,9)))}}Mc.encodedSize=function(e,t){let n=e.value;if(n===!1||n===!0||n===null||n===void 0)return 1;if(!t||t.float64!==!0){Lm(n);let i=jh(rr,1);if(n===i||Number.isNaN(n))return 3;if(Dm(n),i=Wh(rr,1),n===i)return 5}return 9};var Um=new ArrayBuffer(9),Kt=new DataView(Um,1),rr=new Uint8Array(Um,0);function Lm(r){if(r===1/0)Kt.setUint16(0,31744,!1);else if(r===-1/0)Kt.setUint16(0,64512,!1);else if(Number.isNaN(r))Kt.setUint16(0,32256,!1);else{Kt.setFloat32(0,r);let e=Kt.getUint32(0),t=(e&2139095040)>>23,n=e&8388607;if(t===255)Kt.setUint16(0,31744,!1);else if(t===0)Kt.setUint16(0,(r&2147483648)>>16|n>>13,!1);else{let i=t-127;i<-24?Kt.setUint16(0,0):i<-14?Kt.setUint16(0,(e&2147483648)>>16|1<<24+i,!1):Kt.setUint16(0,(e&2147483648)>>16|i+15<<10|n>>13,!1)}}}function jh(r,e){if(r.length-e<2)throw new Error(`${K} not enough data for float16`);let t=(r[e]<<8)+r[e+1];if(t===31744)return 1/0;if(t===64512)return-1/0;if(t===32256)return NaN;let n=t>>10&31,i=t&1023,o;return n===0?o=i*2**-24:n!==31?o=(i+1024)*2**(n-25):o=i===0?1/0:NaN,t&32768?-o:o}function Dm(r){Kt.setFloat32(0,r,!1)}function Wh(r,e){if(r.length-e<4)throw new Error(`${K} not enough data for float32`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,4).getFloat32(0,!1)}function A6(r){Kt.setFloat64(0,r,!1)}function Pm(r,e){if(r.length-e<8)throw new Error(`${K} not enough data for float64`);let t=(r.byteOffset||0)+e;return new DataView(r.buffer,t,8).getFloat64(0,!1)}Mc.compareTokens=zt.compareTokens;function ue(r,e,t){throw new Error(`${K} encountered invalid minor (${t}) for major ${r[e]>>>5}`)}function Hc(r){return()=>{throw new Error(`${K} ${r}`)}}var O=[];for(let r=0;r<=23;r++)O[r]=ue;O[24]=q1;O[25]=G1;O[26]=j1;O[27]=W1;O[28]=ue;O[29]=ue;O[30]=ue;O[31]=ue;for(let r=32;r<=55;r++)O[r]=ue;O[56]=Y1;O[57]=X1;O[58]=Z1;O[59]=Q1;O[60]=ue;O[61]=ue;O[62]=ue;O[63]=ue;for(let r=64;r<=87;r++)O[r]=em;O[88]=tm;O[89]=rm;O[90]=nm;O[91]=im;O[92]=ue;O[93]=ue;O[94]=ue;O[95]=Hc("indefinite length bytes/strings are not supported");for(let r=96;r<=119;r++)O[r]=om;O[120]=sm;O[121]=am;O[122]=cm;O[123]=lm;O[124]=ue;O[125]=ue;O[126]=ue;O[127]=Hc("indefinite length bytes/strings are not supported");for(let r=128;r<=151;r++)O[r]=hm;O[152]=dm;O[153]=fm;O[154]=pm;O[155]=mm;O[156]=ue;O[157]=ue;O[158]=ue;O[159]=ym;for(let r=160;r<=183;r++)O[r]=gm;O[184]=wm;O[185]=xm;O[186]=bm;O[187]=Em;O[188]=ue;O[189]=ue;O[190]=ue;O[191]=vm;for(let r=192;r<=215;r++)O[r]=Bm;O[216]=Am;O[217]=Im;O[218]=Sm;O[219]=_m;O[220]=ue;O[221]=ue;O[222]=ue;O[223]=ue;for(let r=224;r<=243;r++)O[r]=Hc("simple values are not supported");O[244]=ue;O[245]=ue;O[246]=ue;O[247]=km;O[248]=Hc("simple values are not supported");O[249]=Tm;O[250]=Cm;O[251]=Nm;O[252]=ue;O[253]=ue;O[254]=ue;O[255]=Rm;var nr=[];for(let r=0;r<24;r++)nr[r]=new C(b.uint,r,1);for(let r=-1;r>=-24;r--)nr[31-r]=new C(b.negint,r,1);nr[64]=new C(b.bytes,new Uint8Array(0),1);nr[96]=new C(b.string,"",1);nr[128]=new C(b.array,0,1);nr[160]=new C(b.map,0,1);nr[244]=new C(b.false,!1,1);nr[245]=new C(b.true,!0,1);nr[246]=new C(b.null,null,1);function Om(r){switch(r.type){case b.false:return xr([244]);case b.true:return xr([245]);case b.null:return xr([246]);case b.bytes:return r.value.length?void 0:xr([64]);case b.string:return r.value===""?xr([96]):void 0;case b.array:return r.value===0?xr([128]):void 0;case b.map:return r.value===0?xr([160]):void 0;case b.uint:return r.value<24?xr([Number(r.value)]):void 0;case b.negint:if(r.value>=-24)return xr([31-Number(r.value)])}}var S6={float64:!1,mapSorter:R6,quickEncodeToken:Om};function _6(){let r=[];return r[b.uint.major]=zt,r[b.negint.major]=Dc,r[b.bytes.major]=mo,r[b.string.major]=um,r[b.array.major]=Oc,r[b.map.major]=Fc,r[b.tag.major]=Vc,r[b.float.major]=Mc,r}var Fm=_6(),Yh=new xs,zc=class r{constructor(e,t){this.obj=e,this.parent=t}includes(e){let t=this;do if(t.obj===e)return!0;while(t=t.parent);return!1}static createCheck(e,t){if(e&&e.includes(t))throw new Error(`${tn} object contains circular references`);return new r(t,e)}},Vn={null:new C(b.null,null),undefined:new C(b.undefined,void 0),true:new C(b.true,!0),false:new C(b.false,!1),emptyArray:new C(b.array,0),emptyMap:new C(b.map,0)},Mn={number(r,e,t,n){return!Number.isInteger(r)||!Number.isSafeInteger(r)?new C(b.float,r):r>=0?new C(b.uint,r):new C(b.negint,r)},bigint(r,e,t,n){return r>=BigInt(0)?new C(b.uint,r):new C(b.negint,r)},Uint8Array(r,e,t,n){return new C(b.bytes,r)},string(r,e,t,n){return new C(b.string,r)},boolean(r,e,t,n){return r?Vn.true:Vn.false},null(r,e,t,n){return Vn.null},undefined(r,e,t,n){return Vn.undefined},ArrayBuffer(r,e,t,n){return new C(b.bytes,new Uint8Array(r))},DataView(r,e,t,n){return new C(b.bytes,new Uint8Array(r.buffer,r.byteOffset,r.byteLength))},Array(r,e,t,n){if(!r.length)return t.addBreakTokens===!0?[Vn.emptyArray,new C(b.break)]:Vn.emptyArray;n=zc.createCheck(n,r);let i=[],o=0;for(let s of r)i[o++]=$c(s,t,n);return t.addBreakTokens?[new C(b.array,r.length),i,new C(b.break)]:[new C(b.array,r.length),i]},Object(r,e,t,n){let i=e!=="Object",o=i?r.keys():Object.keys(r),s=i?r.size:o.length;if(!s)return t.addBreakTokens===!0?[Vn.emptyMap,new C(b.break)]:Vn.emptyMap;n=zc.createCheck(n,r);let a=[],c=0;for(let u of o)a[c++]=[$c(u,t,n),$c(i?r.get(u):r[u],t,n)];return k6(a,t),t.addBreakTokens?[new C(b.map,s),a,new C(b.break)]:[new C(b.map,s),a]}};Mn.Map=Mn.Object;Mn.Buffer=Mn.Uint8Array;for(let r of"Uint8Clamped Uint16 Uint32 Int8 Int16 Int32 BigUint64 BigInt64 Float32 Float64".split(" "))Mn[`${r}Array`]=Mn.DataView;function $c(r,e={},t){let n=O1(r),i=e&&e.typeEncoders&&e.typeEncoders[n]||Mn[n];if(typeof i=="function"){let s=i(r,n,e,t);if(s!=null)return s}let o=Mn[n];if(!o)throw new Error(`${tn} unsupported type: ${n}`);return o(r,n,e,t)}function k6(r,e){e.mapSorter&&r.sort(e.mapSorter)}function R6(r,e){let t=Array.isArray(r[0])?r[0][0]:r[0],n=Array.isArray(e[0])?e[0][0]:e[0];if(t.type!==n.type)return t.type.compare(n.type);let i=t.type.major,o=Fm[i].compareTokens(t,n);return o===0&&console.warn("WARNING: complex key types used, CBOR key sorting guarantees are gone"),o}function Vm(r,e,t,n){if(Array.isArray(e))for(let i of e)Vm(r,i,t,n);else t[e.type.major](r,e,n)}function Xh(r,e,t){let n=$c(r,t);if(!Array.isArray(n)&&t.quickEncodeToken){let i=t.quickEncodeToken(n);if(i)return i;let o=e[n.type.major];if(o.encodedSize){let s=o.encodedSize(n,t),a=new xs(s);if(o(a,n,t),a.chunks.length!==1)throw new Error(`Unexpected error: pre-calculated length for ${n} was wrong`);return ws(a.chunks[0])}}return Yh.reset(),Vm(Yh,n,e,t),Yh.toBytes(!0)}function gi(r,e){return e=Object.assign({},S6,e),Xh(r,Fm,e)}var T6={strict:!1,allowIndefinite:!0,allowUndefined:!0,allowBigInt:!0},Zh=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t}pos(){return this._pos}done(){return this._pos>=this.data.length}next(){let e=this.data[this._pos],t=nr[e];if(t===void 0){let n=O[e];if(!n)throw new Error(`${K} no decoder for major type ${e>>>5} (byte 0x${e.toString(16).padStart(2,"0")})`);let i=e&31;t=n(this.data,this._pos,i,this.options)}return this._pos+=t.encodedLength,t}},Bs=Symbol.for("DONE"),Kc=Symbol.for("BREAK");function C6(r,e,t){let n=[];for(let i=0;i<r.value;i++){let o=As(e,t);if(o===Kc){if(r.value===1/0)break;throw new Error(`${K} got unexpected break to lengthed array`)}if(o===Bs)throw new Error(`${K} found array but not enough entries (got ${i}, expected ${r.value})`);n[i]=o}return n}function N6(r,e,t){let n=t.useMaps===!0,i=n?void 0:{},o=n?new Map:void 0;for(let s=0;s<r.value;s++){let a=As(e,t);if(a===Kc){if(r.value===1/0)break;throw new Error(`${K} got unexpected break to lengthed map`)}if(a===Bs)throw new Error(`${K} found map but not enough entries (got ${s} [no key], expected ${r.value})`);if(n!==!0&&typeof a!="string")throw new Error(`${K} non-string keys not supported (got ${typeof a})`);if(t.rejectDuplicateMapKeys===!0&&(n&&o.has(a)||!n&&a in i))throw new Error(`${K} found repeat map key "${a}"`);let c=As(e,t);if(c===Bs)throw new Error(`${K} found map but not enough entries (got ${s} [no value], expected ${r.value})`);n?o.set(a,c):i[a]=c}return n?o:i}function As(r,e){if(r.done())return Bs;let t=r.next();if(t.type===b.break)return Kc;if(t.type.terminal)return t.value;if(t.type===b.array)return C6(t,r,e);if(t.type===b.map)return N6(t,r,e);if(t.type===b.tag){if(e.tags&&typeof e.tags[t.value]=="function"){let n=As(r,e);return e.tags[t.value](n)}throw new Error(`${K} tag not supported (${t.value})`)}throw new Error("unsupported")}function Jh(r,e){if(!(r instanceof Uint8Array))throw new Error(`${K} data to decode must be a Uint8Array`);e=Object.assign({},T6,e);let t=e.tokenizer||new Zh(r,e),n=As(t,e);if(n===Bs)throw new Error(`${K} did not find any content to decode`);if(n===Kc)throw new Error(`${K} got unexpected break`);return[n,r.subarray(t.pos())]}function at(r,e){let[t,n]=Jh(r,e);if(n.length>0)throw new Error(`${K} too many terminals, data makes no sense`);return t}var mt=re(Re(),1);var Mm=oe("ipns:utils"),Hm=Y("/ipns/"),U6=114,$m=async(r,e)=>{if(e==null||r==null){let n=new Error("one or more of the provided parameters are not defined");throw Mm.error(n),(0,mt.default)(n,$h)}let t;if(e.pubKey!=null){try{t=Mh(e.pubKey)}catch(i){throw Mm.error(i),i}if(!(await N0(e.pubKey)).equals(r))throw(0,mt.default)(new Error("Embedded public key did not match PeerID"),L1)}else r.publicKey!=null&&(t=Mh(r.publicKey));if(t!=null)return t;throw(0,mt.default)(new Error("no public key is available"),$h)},zm=(r,e,t)=>{let n=Y(e);return Ee([r,t,n])},Gc=r=>{let e=Y("ipns-signature:");return Ee([e,r])},nn=r=>"signatureV1"in r?je.encode({value:Y(r.value),signatureV1:r.signatureV1,validityType:r.validityType,validity:Y(r.validity),sequence:r.sequence,ttl:r.ttl,pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data}):je.encode({pubKey:r.pubKey,signatureV2:r.signatureV2,data:r.data});function ct(r){let e=je.decode(r);if(e.sequence!=null&&(e.sequence=BigInt(e.sequence)),e.ttl!=null&&(e.ttl=BigInt(e.ttl)),e.signatureV2==null||e.data==null)throw(0,mt.default)(new Error("missing data or signatureV2"),en);let t=qm(e.data),n=Qh(t.Value),i=Q(t.Validity);if(e.value!=null&&e.signatureV1!=null)return L6(e),{value:n,validityType:je.ValidityType.EOL,validity:i,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV1:e.signatureV1,signatureV2:e.signatureV2,data:e.data};if(e.signatureV2!=null)return{value:n,validityType:je.ValidityType.EOL,validity:i,sequence:t.Sequence,ttl:t.TTL,pubKey:e.pubKey,signatureV2:e.signatureV2,data:e.data};throw new Error("invalid record: does not include signatureV1 or signatureV2")}var wo=r=>Ee([Hm,r.toBytes()]),xo=r=>Qo(r.slice(Hm.length)),Km=(r,e,t,n,i)=>{let o;if(e===je.ValidityType.EOL)o=0;else throw(0,mt.default)(new Error("Unknown validity type"),gs);return gi({Value:r,Validity:t,ValidityType:o,Sequence:n,TTL:i})},qm=r=>{let e=at(r);if(e.ValidityType===0)e.ValidityType=je.ValidityType.EOL;else throw(0,mt.default)(new Error("Unknown validity type"),gs);return Number.isInteger(e.Sequence)&&(e.Sequence=BigInt(e.Sequence)),Number.isInteger(e.TTL)&&(e.TTL=BigInt(e.TTL)),e},Qh=r=>{if(r!=null){if(Qf(r))return`/ipns/${r.toCID().toString(Sn)}`;if(r instanceof Uint8Array){let n=Q(r);n.startsWith("/")&&(r=n)}let e=r.toString().trim();if(e.startsWith("/")&&e.length>1)return e;let t=H.asCID(r);if(t!=null)return t.code===U6?`/ipns/${t.toString(Sn)}`:`/ipfs/${t.toV1().toString()}`;try{return r instanceof Uint8Array?`/ipfs/${H.decode(r).toV1().toString()}`:`/ipfs/${H.parse(e).toV1().toString()}`}catch{}}throw(0,mt.default)(new Error("Value must be a valid content path starting with /"),U1)},L6=r=>{if(r.data==null)throw(0,mt.default)(new Error("Record data is missing"),N1);let e=qm(r.data);if(!de(e.Value,r.value??new Uint8Array(0)))throw(0,mt.default)(new Error('Field "value" did not match between protobuf and CBOR'),en);if(!de(e.Validity,r.validity??new Uint8Array(0)))throw(0,mt.default)(new Error('Field "validity" did not match between protobuf and CBOR'),en);if(e.ValidityType!==r.validityType)throw(0,mt.default)(new Error('Field "validityType" did not match between protobuf and CBOR'),en);if(e.Sequence!==r.sequence)throw(0,mt.default)(new Error('Field "sequence" did not match between protobuf and CBOR'),en);if(e.TTL!==r.ttl)throw(0,mt.default)(new Error('Field "ttl" did not match between protobuf and CBOR'),en)};var D6=oe("ipns"),P6=et.code,O6="/ipns/",gT=O6.length,jm={v1Compatible:!0};async function Wm(r,e,t,n,i=jm){let o=new Gm.default(Date.now()+Number(n)),s=je.ValidityType.EOL,[a,c]=n.toString().split("."),u=BigInt(a)*BigInt(1e5)+BigInt(c??"0");return F6(r,e,t,s,o.toString(),u,i)}var F6=async(r,e,t,n,i,o,s=jm)=>{t=BigInt(t);let a=Y(i),c=Qh(e),u=Y(c);if(r.privateKey==null)throw(0,ed.default)(new Error("Missing private key"),D1);let l=await k1(r.privateKey),h=Km(u,n,a,t,o),p=Gc(h),d=await l.sign(p),f;if(r.publicKey!=null){let m=Et(r.toBytes());(m.code!==P6||!de(r.publicKey,m.digest))&&(f=r.publicKey)}if(s.v1Compatible===!0){let m=await V6(l,u,n,a),y={value:c,signatureV1:m,validity:i,validityType:n,sequence:t,ttl:o,signatureV2:d,data:h};return f!=null&&(y.pubKey=f),y}else{let m={value:c,validity:i,validityType:n,sequence:t,ttl:o,signatureV2:d,data:h};return f!=null&&(m.pubKey=f),m}};var V6=async(r,e,t,n)=>{try{let i=zm(e,t,n);return await r.sign(i)}catch(i){throw D6.error("record signature creation failed",i),(0,ed.default)(new Error("record signature creation failed"),C1)}};var Is=re(Re(),1),Ym=re(Nc(),1);var jc=oe("ipns:validator"),M6=1024*10,H6=async(r,e)=>{let t=ct(e),n;try{let i=Gc(t.data);n=await r.verify(i,t.signatureV2)}catch{n=!1}if(!n)throw jc.error("record signature verification failed"),(0,Is.default)(new Error("record signature verification failed"),en);if(t.validityType===je.ValidityType.EOL){if(Ym.default.fromString(t.validity).toDate().getTime()<Date.now())throw jc.error("record has expired"),(0,Is.default)(new Error("record has expired"),T1)}else if(t.validityType!=null)throw jc.error("unrecognized validity type"),(0,Is.default)(new Error("unrecognized validity type"),gs);jc("ipns record for %s is valid",t.value)};async function Wc(r,e){if(e.byteLength>M6)throw(0,Is.default)(new Error("record too large"),P1);let t=xo(r),n=ct(e),i=await $m(t,n);await H6(i,e)}async function*Ss(r){let e=/\r?\n/,t=new TextDecoder("utf8"),n="";for await(let i of r){typeof i=="string"&&(i=new TextEncoder().encode(i)),n+=t.decode(i,{stream:!0});let o=n.split(e);n=o.pop()??"";for(let s=0;s<o.length;s++)yield JSON.parse(o[s])}n+=t.decode(),n!==""&&(yield JSON.parse(n))}var rd=re(Zm(),1);var ks=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},nd=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},Jm=r=>globalThis.DOMException===void 0?new nd(r):new DOMException(r),Qm=r=>{let e=r.reason===void 0?Jm("This operation was aborted."):r.reason;return e instanceof Error?e:Jm(e)};function Rs(r,e){let{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=e,s,c=new Promise((u,l)=>{if(typeof t!="number"||Math.sign(t)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(e.signal){let{signal:p}=e;p.aborted&&l(Qm(p)),p.addEventListener("abort",()=>{l(Qm(p))})}if(t===Number.POSITIVE_INFINITY){r.then(u,l);return}let h=new ks;s=o.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(p){l(p)}return}typeof r.cancel=="function"&&r.cancel(),i===!1?u():i instanceof Error?l(i):(h.message=i??`Promise timed out after ${t} milliseconds`,l(h))},t),(async()=>{try{u(await r)}catch(p){l(p)}})()}).finally(()=>{c.clear()});return c.clear=()=>{o.clearTimeout.call(void 0,s),s=void 0},c}function id(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var Ts=class{#e=[];enqueue(e,t){t={priority:0,...t};let n={priority:t.priority,run:e};if(this.size&&this.#e[this.size-1].priority>=t.priority){this.#e.push(n);return}let i=id(this.#e,n,(o,s)=>s.priority-o.priority);this.#e.splice(i,0,n)}dequeue(){return this.#e.shift()?.run}filter(e){return this.#e.filter(t=>t.priority===e.priority).map(t=>t.run)}get size(){return this.#e.length}};var yt=class extends rd.default{#e;#t;#r=0;#s;#c;#p=0;#i;#l;#n;#m;#o=0;#u;#a;#y;timeout;constructor(e){if(super(),e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:Ts,...e},!(typeof e.intervalCap=="number"&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(e.interval===void 0||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#e=e.carryoverConcurrencyCount,this.#t=e.intervalCap===Number.POSITIVE_INFINITY||e.interval===0,this.#s=e.intervalCap,this.#c=e.interval,this.#n=new e.queueClass,this.#m=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=e.throwOnTimeout===!0,this.#a=e.autoStart===!1}get#x(){return this.#t||this.#r<this.#s}get#b(){return this.#o<this.#u}#E(){this.#o--,this.#h(),this.emit("next")}#v(){this.#w(),this.#g(),this.#l=void 0}get#B(){let e=Date.now();if(this.#i===void 0){let t=this.#p-e;if(t<0)this.#r=this.#e?this.#o:0;else return this.#l===void 0&&(this.#l=setTimeout(()=>{this.#v()},t)),!0}return!1}#h(){if(this.#n.size===0)return this.#i&&clearInterval(this.#i),this.#i=void 0,this.emit("empty"),this.#o===0&&this.emit("idle"),!1;if(!this.#a){let e=!this.#B;if(this.#x&&this.#b){let t=this.#n.dequeue();return t?(this.emit("active"),t(),e&&this.#g(),!0):!1}}return!1}#g(){this.#t||this.#i!==void 0||(this.#i=setInterval(()=>{this.#w()},this.#c),this.#p=Date.now()+this.#c)}#w(){this.#r===0&&this.#o===0&&this.#i&&(clearInterval(this.#i),this.#i=void 0),this.#r=this.#e?this.#o:0,this.#d()}#d(){for(;this.#h(););}get concurrency(){return this.#u}set concurrency(e){if(!(typeof e=="number"&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#u=e,this.#d()}async#A(e){return new Promise((t,n)=>{e.addEventListener("abort",()=>{n(e.reason)},{once:!0})})}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise((n,i)=>{this.#n.enqueue(async()=>{this.#o++,this.#r++;try{t.signal?.throwIfAborted();let o=e({signal:t.signal});t.timeout&&(o=Rs(Promise.resolve(o),{milliseconds:t.timeout})),t.signal&&(o=Promise.race([o,this.#A(t.signal)]));let s=await o;n(s),this.emit("completed",s)}catch(o){if(o instanceof ks&&!t.throwOnTimeout){n();return}i(o),this.emit("error",o)}finally{this.#E()}},t),this.emit("add"),this.#h()})}async addAll(e,t){return Promise.all(e.map(async n=>this.add(n,t)))}start(){return this.#a?(this.#a=!1,this.#d(),this):this}pause(){this.#a=!0}clear(){this.#n=new this.#m}async onEmpty(){this.#n.size!==0&&await this.#f("empty")}async onSizeLessThan(e){this.#n.size<e||await this.#f("next",()=>this.#n.size<e)}async onIdle(){this.#o===0&&this.#n.size===0||await this.#f("idle")}async#f(e,t){return new Promise(n=>{let i=()=>{t&&!t()||(this.off(e,i),n())};this.on(e,i)})}get size(){return this.#n.size}sizeBy(e){return this.#n.filter(e).length}get pending(){return this.#o}get isPaused(){return this.#a}};function K6(r){return r[Symbol.asyncIterator]!=null}function q6(r){if(K6(r))return(async()=>{for await(let e of r)return e})();for(let e of r)return e}var wi=q6;var od=Y("/ipns/");function ey(r){return de(r.subarray(0,od.byteLength),od)}var ty=r=>Qo(r.slice(od.length)),Xc=class{client;constructor(e){this.client=e}async*findProviders(e,t={}){yield*jt(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs??[]}))}async provide(){}async put(e,t,n){if(!ey(e))return;let i=ty(e),o=ct(t);await this.client.putIPNS(i,o,n)}async get(e,t){if(!ey(e))throw new F("Not found","ERR_NOT_FOUND");let n=ty(e);try{let i=await this.client.getIPNS(n,t);return nn(i)}catch(i){throw i.code==="ERR_BAD_RESPONSE"?new F("Not found","ERR_NOT_FOUND"):i}}},Zc=class{client;constructor(e){this.client=e}async findPeer(e,t={}){let n=await wi(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new F("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){}};var gt=oe("delegated-routing-v1-http-api-client"),ry={concurrentRequests:4,timeout:3e4},Jc=class{started;httpQueue;shutDownController;clientUrl;timeout;contentRouting;peerRouting;constructor(e,t={}){this.started=!1,this.shutDownController=new AbortController,la(1/0,this.shutDownController.signal),this.httpQueue=new yt({concurrency:t.concurrentRequests??ry.concurrentRequests}),this.clientUrl=e instanceof URL?e:new URL(e),this.timeout=t.timeout??ry.timeout,this.contentRouting=new Xc(this),this.peerRouting=new Zc(this)}get[jo](){return this.contentRouting}get[Wo](){return this.peerRouting}isStarted(){return this.started}start(){this.started=!0}stop(){this.httpQueue.clear(),this.shutDownController.abort(),this.started=!1}async*getProviders(e,t={}){gt("getProviders starts: %c",e);let n=ei([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=Ue(),o=Ue();this.httpQueue.add(async()=>(i.resolve(),o.promise));try{await i.promise;let s=`${this.clientUrl}routing/v1/providers/${e.toString()}`,c=await fetch(s,{headers:{Accept:"application/x-ndjson"},signal:n});if(c.status===404)throw new F("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new F("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new F("Routing response had no body","ERR_BAD_RESPONSE");if(c.headers.get("Content-Type")==="application/json"){let l=await c.json();for(let h of l.Providers){let p=this.#e(h);p!=null&&(yield p)}}else for await(let l of Ss(Sa(c.body))){let h=this.#e(l);h!=null&&(yield h)}}catch(s){gt.error("getProviders errored:",s)}finally{n.clear(),o.resolve(),gt("getProviders finished: %c",e)}}async*getPeers(e,t={}){gt("getPeers starts: %c",e);let n=ei([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=Ue(),o=Ue();this.httpQueue.add(async()=>(i.resolve(),o.promise));try{await i.promise;let s=`${this.clientUrl}routing/v1/peers/${e.toCID().toString()}`,c=await fetch(s,{headers:{Accept:"application/x-ndjson"},signal:n});if(c.status===404)throw new F("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new F("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new F("Routing response had no body","ERR_BAD_RESPONSE");if(c.headers.get("Content-Type")==="application/json"){let l=await c.json();for(let h of l.Peers){let p=this.#e(h);p!=null&&(yield p)}}else for await(let l of Ss(Sa(c.body))){let h=this.#e(l);h!=null&&(yield h)}}catch(s){gt.error("getPeers errored:",s)}finally{n.clear(),o.resolve(),gt("getPeers finished: %c",e)}}async getIPNS(e,t={}){gt("getIPNS starts: %c",e);let n=ei([this.shutDownController.signal,t.signal,AbortSignal.timeout(this.timeout)]),i=Ue(),o=Ue();this.httpQueue.add(async()=>(i.resolve(),o.promise));let s=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await i.promise;let c=await fetch(s,{headers:{Accept:"application/vnd.ipfs.ipns-record"},signal:n});if(gt("getIPNS GET %s %d",s,c.status),c.status===404)throw new F("No matching records found.","ERR_NOT_FOUND");if(c.status===422)throw new F("Request does not conform to schema or semantic constraints.","ERR_INVALID_REQUEST");if(c.body==null)throw new F("GET ipns response had no body","ERR_BAD_RESPONSE");let u=await c.arrayBuffer(),l=new Uint8Array(u,0,u.byteLength);return t.validate!==!1&&await Wc(wo(e),l),ct(l)}catch(a){throw gt.error("getIPNS GET %s error:",s,a),a}finally{n.clear(),o.resolve(),gt("getIPNS finished: %c",e)}}async putIPNS(e,t,n={}){gt("putIPNS starts: %c",e);let i=ei([this.shutDownController.signal,n.signal,AbortSignal.timeout(this.timeout)]),o=Ue(),s=Ue();this.httpQueue.add(async()=>(o.resolve(),s.promise));let a=`${this.clientUrl}routing/v1/ipns/${e.toCID().toString()}`;try{await o.promise;let c=nn(t),l=await fetch(a,{method:"PUT",headers:{"Content-Type":"application/vnd.ipfs.ipns-record"},body:c,signal:i});if(gt("putIPNS PUT %s %d",a,l.status),l.status!==200)throw new F("PUT ipns response had status other than 200","ERR_BAD_RESPONSE")}catch(c){throw gt.error("putIPNS PUT %s error:",a,c.stack),c}finally{i.clear(),s.resolve(),gt("putIPNS finished: %c",e)}}#e(e){let t=[],n=e.Addrs?.map(sh)??[];return e.Protocols!=null&&t.push(...e.Protocols),e.Protocol!=null&&(t.push(e.Protocol),delete e.Protocol),{...e,Schema:"peer",ID:Yt(e.ID),Addrs:n,Protocols:t}}};function ny(r,e={}){return new Jc(new URL(r),e)}var iy=Y("/ipns/");function oy(r){return de(r.subarray(0,iy.byteLength),iy)}var sd=class{client;constructor(e){this.client=ny(e)}async provide(e,t){}async*findProviders(e,t){yield*jt(this.client.getProviders(e,t),n=>({id:n.ID,multiaddrs:n.Addrs,protocols:n.Protocols}))}async put(e,t,n){if(!oy(e))return;let i=xo(e),o=ct(t);await this.client.putIPNS(i,o,n)}async get(e,t){if(!oy(e))throw new F("Not found","ERR_NOT_FOUND");let n=xo(e);try{let i=await this.client.getIPNS(n,t);return nn(i)}catch(i){throw i.code==="ERR_BAD_RESPONSE"?new F("Not found","ERR_NOT_FOUND"):i}}async findPeer(e,t){let n=await wi(this.client.getPeers(e,t));if(n!=null)return{id:n.ID,multiaddrs:n.Addrs??[]};throw new F("Not found","ERR_NOT_FOUND")}async*getClosestPeers(e,t){}};function Cs(r){return new sd(new URL(r))}var ad=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=t??"ABORT_ERR"}};async function Qc(r,e,t,n){let i=new ad(n?.errorMessage,n?.errorCode);return t?.aborted===!0?Promise.reject(i):new Promise((o,s)=>{let a=u=>{try{if(n?.filter?.(u)===!1)return}catch(l){r.removeEventListener(e,a),t?.removeEventListener("abort",c),s(l);return}r.removeEventListener(e,a),t?.removeEventListener("abort",c),o(u)},c=()=>{r.removeEventListener(e,a),t?.removeEventListener("abort",c),s(i)};r.addEventListener(e,a),t?.addEventListener("abort",c)})}var el=class extends Error{type;code;constructor(e,t){super(e??"The operation was aborted"),this.type="aborted",this.name="AbortError",this.code=t??"ABORT_ERR"}};async function sy(r,e,t){if(e==null)return r;if(e.aborted)return Promise.reject(new el(t?.errorMessage,t?.errorCode));let n,i=new el(t?.errorMessage,t?.errorCode);try{return await Promise.race([r,new Promise((o,s)=>{n=()=>{s(i)},e.addEventListener("abort",n)})])}finally{n!=null&&e.removeEventListener("abort",n)}}var tl=class{deferred;signal;where;constructor(e,t){this.signal=t,this.deferred=Ue(),this.where=e,this.onAbort=this.onAbort.bind(this),this.signal?.addEventListener("abort",this.onAbort)}onAbort(){this.deferred.reject(new En)}cleanup(){this.signal?.removeEventListener("abort",this.onAbort)}};function G6(){return`${parseInt(String(Math.random()*1e9),10).toString()}${Date.now()}`}var rl=class{id;fn;options;priority;recipients;status;timeline;controller;constructor(e,t,n=0){this.id=G6(),this.status="queued",this.fn=e,this.priority=n,this.options=t,this.recipients=[],this.timeline={created:Date.now()},this.controller=new AbortController,la(1/0,this.controller.signal),this.onAbort=this.onAbort.bind(this)}abort(e){this.controller.abort(e)}onAbort(){this.recipients.reduce((t,n)=>t&&n.signal?.aborted===!0,!0)&&this.controller.abort(new En)}async join(e={}){let t=new tl(new Error("where").stack,e.signal);return this.recipients.push(t),e.signal?.addEventListener("abort",this.onAbort),t.deferred.promise}async run(){this.status="running",this.timeline.started=Date.now();try{this.controller.signal.throwIfAborted();let e=await sy(this.fn({...this.options??{},signal:this.controller.signal}),this.controller.signal);this.recipients.forEach(t=>{t.deferred.resolve(e)}),this.status="complete"}catch(e){this.recipients.forEach(t=>{t.deferred.reject(e)}),this.status="errored"}finally{this.timeline.finished=Date.now(),this.cleanup()}}cleanup(){this.recipients.forEach(e=>{e.signal?.removeEventListener("abort",this.onAbort)})}};function j6(r,e,t){let n=0,i=r.length;for(;i>0;){let o=Math.trunc(i/2),s=n+o;t(r[s],e)<=0?(n=++s,i-=o+1):i=o}return n}var Ns=class extends ca{concurrency;queue;pending;constructor(e={}){super(),this.concurrency=e.concurrency??Number.POSITIVE_INFINITY,this.pending=0,e.metricName!=null&&e.metrics?.registerMetricGroup(e.metricName,{calculate:()=>({size:this.queue.length,running:this.pending,queued:this.queue.length-this.pending})}),this.queue=[]}tryToStartAnother(){if(this.size===0)return queueMicrotask(()=>{this.safeDispatchEvent("empty")}),this.running===0&&queueMicrotask(()=>{this.safeDispatchEvent("idle")}),!1;if(this.pending<this.concurrency){let e;for(let t of this.queue)if(t.status==="queued"){e=t;break}return e==null?!1:(this.safeDispatchEvent("active"),this.pending++,e.run().finally(()=>{for(let t=0;t<this.queue.length;t++)if(this.queue[t]===e){this.queue.splice(t,1);break}this.pending--,this.tryToStartAnother(),this.safeDispatchEvent("next")}),!0)}return!1}enqueue(e){if(this.queue[this.size-1]?.priority>=e.priority){this.queue.push(e);return}let t=j6(this.queue,e,(n,i)=>i.priority-n.priority);this.queue.splice(t,0,e)}async add(e,t){t?.signal?.throwIfAborted();let n=new rl(e,t,t?.priority),i=n.join(t).then(o=>(this.safeDispatchEvent("completed",{detail:o}),o)).catch(o=>{throw this.safeDispatchEvent("error",{detail:o}),o});return this.enqueue(n),this.safeDispatchEvent("add"),this.tryToStartAnother(),i}clear(){this.queue.splice(0,this.queue.length)}abort(){this.queue.forEach(e=>{e.abort(new En)}),this.clear()}async onEmpty(e){this.size!==0&&await Qc(this,"empty",e?.signal)}async onSizeLessThan(e,t){this.size<e||await Qc(this,"next",t?.signal,{filter:()=>this.size<e})}async onIdle(e){this.pending===0&&this.size===0||await Qc(this,"idle",e?.signal)}get size(){return this.queue.length}get queued(){return this.queue.length-this.pending}get running(){return this.pending}async*toGenerator(e){e?.signal?.throwIfAborted();let t=Vt({objectMode:!0}),n=c=>{c!=null?this.abort():this.clear(),t.end(c)},i=c=>{c.detail!=null&&t.push(c.detail)},o=c=>{n(c.detail)},s=()=>{n()},a=()=>{n(new F("Queue aborted","ERR_QUEUE_ABORTED"))};this.addEventListener("completed",i),this.addEventListener("error",o),this.addEventListener("idle",s),e?.signal?.addEventListener("abort",a);try{yield*t}finally{this.removeEventListener("completed",i),this.removeEventListener("error",o),this.removeEventListener("idle",s),e?.signal?.removeEventListener("abort",a),n()}}};var uy="/pin/",ay="/pinned-block/",cd=Sn,cy=1;function ly(r){return r.version===0&&(r=r.toV1()),new Fe(`${uy}${r.toString(cd)}`)}var nl=class{datastore;blockstore;dagWalkers;constructor(e,t,n){this.datastore=e,this.blockstore=t,this.dagWalkers=n}async*add(e,t={}){let n=ly(e);if(await this.datastore.has(n))throw new Error("Already pinned");let i=Math.round(t.depth??1/0);if(i<0)throw new Error("Depth must be greater than or equal to 0");let o=new Ns({concurrency:cy});for await(let a of this.#e(e,o,{...t,depth:i}))await this.#t(a,c=>c.pinnedBy.find(u=>de(u,e.bytes))!=null?!1:(c.pinCount++,c.pinnedBy.push(e.bytes),!0),t),yield a;let s={depth:i,metadata:t.metadata??{}};await this.datastore.put(n,gi(s),t)}async*#e(e,t,n){if(n.depth===-1)return;let i=this.dagWalkers[e.code];if(i==null)throw new Error(`No dag walker found for cid codec ${e.code}`);let o=await this.blockstore.get(e,n);yield e;for await(let s of i.walk(o))yield*await t.add(async()=>this.#e(s,t,{...n,depth:n.depth-1}))}async#t(e,t,n){let i=new Fe(`${ay}${cd.encode(e.multihash.bytes)}`),o={pinCount:0,pinnedBy:[]};try{o=at(await this.datastore.get(i,n))}catch(a){if(a.code!=="ERR_NOT_FOUND")throw a}if(t(o)){if(o.pinCount===0&&await this.datastore.has(i)){await this.datastore.delete(i);return}await this.datastore.put(i,gi(o),n),n.onProgress?.(new P("helia:pin:add",e))}}async*rm(e,t={}){let n=ly(e),i=await this.datastore.get(n,t),o=at(i);await this.datastore.delete(n,t);let s=new Ns({concurrency:cy});for await(let a of this.#e(e,s,{...t,depth:o.depth}))await this.#t(a,c=>(c.pinCount--,c.pinnedBy=c.pinnedBy.filter(u=>de(u,e.bytes)),!0),{...t,depth:o.depth}),yield a}async*ls(e={}){for await(let{key:t,value:n}of this.datastore.query({prefix:uy+(e.cid!=null?`${e.cid.toString(Sn)}`:"")},e)){let i=H.parse(t.toString().substring(5),Sn),o=at(n);yield{cid:i,...o}}}async isPinned(e,t={}){let n=new Fe(`${ay}${cd.encode(e.multihash.bytes)}`);return this.datastore.has(n,t)}};function ld(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 bo=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 ld(this.set.entries(),e=>{let t=Yt(e[0]);return[t,t]})}forEach(e){this.set.forEach(t=>{let n=Yt(t);e(n,n,this)})}has(e){return this.set.has(e.toString())}values(){return ld(this.set.values(),e=>Yt(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 il=class{log;routers;constructor(e,t){this.log=e.logger.forComponent("helia:routing"),this.routers=t.routers??[]}async start(){await vn(...this.routers)}async stop(){await Bn(...this.routers)}async*findProviders(e,t={}){if(this.routers.length===0)throw new F("No content routers available","ERR_NO_ROUTERS_AVAILABLE");let n=new bo;for await(let i of Vr(...Eo(this.routers,"findProviders").map(o=>o.findProviders(e,t))))i!=null&&(n.has(i.id)||(n.add(i.id),yield i))}async provide(e,t={}){if(this.routers.length===0)throw new F("No content routers available","ERR_NO_ROUTERS_AVAILABLE");await Promise.all(Eo(this.routers,"provide").map(async n=>{await n.provide(e,t)}))}async put(e,t,n){await Promise.all(Eo(this.routers,"put").map(async i=>{await i.put(e,t,n)}))}async get(e,t){return Promise.any(Eo(this.routers,"get").map(async n=>n.get(e,t)))}async findPeer(e,t){if(this.routers.length===0)throw new F("No peer routers available","ERR_NO_ROUTERS_AVAILABLE");let n=this,i=Vr(...Eo(this.routers,"findPeer").map(o=>async function*(){try{yield await o.findPeer(e,t)}catch(s){n.log.error(s)}}()));for await(let o of i)if(o!=null)return o;throw new F("Could not find peer in routing","ERR_NOT_FOUND")}async*getClosestPeers(e,t={}){if(this.routers.length===0)throw new F("No peer routers available","ERR_NO_ROUTERS_AVAILABLE");let n=new bo;for await(let i of Vr(...Eo(this.routers,"getClosestPeers").map(o=>o.getClosestPeers(e,t))))i!=null&&(n.has(i.id)||(n.add(i.id),yield i))}};function Eo(r,e){return r.filter(t=>t[e]!=null)}var Hn={},vo=r=>{r.addEventListener("message",e=>{vo.dispatchEvent("message",r,e)}),r.port!=null&&r.port.addEventListener("message",e=>{vo.dispatchEvent("message",r,e)})};vo.addEventListener=(r,e)=>{Hn[r]==null&&(Hn[r]=[]),Hn[r].push(e)};vo.removeEventListener=(r,e)=>{Hn[r]!=null&&(Hn[r]=Hn[r].filter(t=>t===e))};vo.dispatchEvent=function(r,e,t){Hn[r]!=null&&Hn[r].forEach(n=>n(e,t))};var ud=vo;var hd="lock:worker:request-read",dd="lock:worker:release-read",fd="lock:master:grant-read",pd="lock:worker:request-write",md="lock:worker:release-write",yd="lock:master:grant-write";var hy=(r=21)=>Math.random().toString().substring(2);var dy=(r,e,t,n,i)=>(o,s)=>{if(s.data.type!==t)return;let a={type:s.data.type,name:s.data.name,identifier:s.data.identifier};r.dispatchEvent(new MessageEvent(e,{data:{name:a.name,handler:async()=>{o.postMessage({type:i,name:a.name,identifier:a.identifier}),await new Promise(c=>{let u=l=>{if(l==null||l.data==null)return;let h={type:l.data.type,name:l.data.name,identifier:l.data.identifier};h.type===n&&h.identifier===a.identifier&&(o.removeEventListener("message",u),c())};o.addEventListener("message",u)})}}}))},fy=(r,e,t,n)=>async()=>{let i=hy();return globalThis.postMessage({type:e,identifier:i,name:r}),new Promise(o=>{let s=a=>{if(a==null||a.data==null)return;let c={type:a.data.type,identifier:a.data.identifier};c.type===t&&c.identifier===i&&(globalThis.removeEventListener("message",s),o(()=>{globalThis.postMessage({type:n,identifier:i,name:r})}))};globalThis.addEventListener("message",s)})},W6={singleProcess:!1},py=r=>{if(r=Object.assign({},W6,r),!!globalThis.document||r.singleProcess){let t=new EventTarget;return ud.addEventListener("message",dy(t,"requestReadLock",hd,dd,fd)),ud.addEventListener("message",dy(t,"requestWriteLock",pd,md,yd)),t}return{isWorker:!0,readLock:t=>fy(t,hd,fd,dd),writeLock:t=>fy(t,pd,yd,md)}};var xi={},$n;async function gd(r,e){let t,n=new Promise(i=>{t=i});return r.add(async()=>Rs((async()=>{await new Promise(i=>{t(()=>{i()})})})(),{milliseconds:e.timeout})),n}var Y6=(r,e)=>{if($n.isWorker===!0)return{readLock:$n.readLock(r,e),writeLock:$n.writeLock(r,e)};let t=new yt({concurrency:1}),n;return{async readLock(){if(n!=null)return gd(n,e);n=new yt({concurrency:e.concurrency,autoStart:!1});let i=n,o=gd(n,e);return t.add(async()=>{i.start(),await i.onIdle().then(()=>{n===i&&(n=null)})}),o},async writeLock(){return n=null,gd(t,e)}}},X6={name:"lock",concurrency:1/0,timeout:846e5,singleProcess:!1};function wd(r){let e=Object.assign({},X6,r);return $n==null&&($n=py(e),$n.isWorker!==!0&&($n.addEventListener("requestReadLock",t=>{xi[t.data.name]!=null&&xi[t.data.name].readLock().then(async n=>t.data.handler().finally(()=>{n()}))}),$n.addEventListener("requestWriteLock",async t=>{xi[t.data.name]!=null&&xi[t.data.name].writeLock().then(async n=>t.data.handler().finally(()=>{n()}))}))),xi[e.name]==null&&(xi[e.name]=Y6(e.name,e)),xi[e.name]}var ol=class{lock;child;pins;started;constructor(e,t,n={}){this.child=e,this.pins=t,this.lock=wd({singleProcess:n.holdGcLock}),this.started=!1}isStarted(){return this.started}async start(){await vn(this.child),this.started=!0}async stop(){await Bn(this.child),this.started=!1}unwrap(){return this.child}async put(e,t,n={}){let i=await this.lock.readLock();try{return await this.child.put(e,t,n)}finally{i()}}async*putMany(e,t={}){let n=await this.lock.readLock();try{yield*this.child.putMany(e,t)}finally{n()}}async get(e,t={}){let n=await this.lock.readLock();try{return await this.child.get(e,t)}finally{n()}}async*getMany(e,t={}){let n=await this.lock.readLock();try{yield*this.child.getMany(e,t)}finally{n()}}async delete(e,t={}){let n=await this.lock.writeLock();try{if(await this.pins.isPinned(e))throw new Error("CID was pinned");await this.child.delete(e,t)}finally{n()}}async*deleteMany(e,t={}){let n=await this.lock.writeLock();try{let i=this;yield*this.child.deleteMany(async function*(){for await(let o of e){if(await i.pins.isPinned(o))throw new Error("CID was pinned");yield o}}(),t)}finally{n()}}async has(e,t={}){let n=await this.lock.readLock();try{return await this.child.has(e,t)}finally{n()}}async*getAll(e={}){let t=await this.lock.readLock();try{yield*this.child.getAll(e)}finally{t()}}};var yy=42;function Z6(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}function J6(r){if(r.asCID!==r&&r["/"]!==r.bytes)return null;let e=H.asCID(r);if(!e)return null;let t=new Uint8Array(e.bytes.byteLength+1);return t.set(e.bytes,1),[new C(b.tag,yy),new C(b.bytes,t)]}function Q6(){throw new Error("`undefined` is not supported by the IPLD Data Model and cannot be encoded")}function ev(r){if(Number.isNaN(r))throw new Error("`NaN` is not supported by the IPLD Data Model and cannot be encoded");if(r===1/0||r===-1/0)throw new Error("`Infinity` and `-Infinity` is not supported by the IPLD Data Model and cannot be encoded");return null}var my={float64:!0,typeEncoders:{Object:J6,undefined:Q6,number:ev}},wN={...my,typeEncoders:{...my.typeEncoders}};function tv(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return H.decode(r.subarray(1))}var sl={allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};sl.tags[yy]=tv;var xN={...sl,tags:sl.tags.slice()};var Bo=113;var gy=r=>at(Z6(r),sl);var bd=class extends Array{constructor(){super(),this.inRecursive=[]}prefix(e){let t=this.inRecursive[this.inRecursive.length-1];t&&(t.type===b.array&&(t.elements++,t.elements!==1&&e.push([44])),t.type===b.map&&(t.elements++,t.elements!==1&&(t.elements%2===1?e.push([44]):e.push([58]))))}[b.uint.major](e,t){this.prefix(e);let n=String(t.value),i=[];for(let o=0;o<n.length;o++)i[o]=n.charCodeAt(o);e.push(i)}[b.negint.major](e,t){this[b.uint.major](e,t)}[b.bytes.major](e,t){throw new Error(`${tn} unsupported type: Uint8Array`)}[b.string.major](e,t){this.prefix(e);let n=Lc(JSON.stringify(t.value));e.push(n.length>32?ws(n):n)}[b.array.major](e,t){this.prefix(e),this.inRecursive.push({type:b.array,elements:0}),e.push([91])}[b.map.major](e,t){this.prefix(e),this.inRecursive.push({type:b.map,elements:0}),e.push([123])}[b.tag.major](e,t){}[b.float.major](e,t){if(t.type.name==="break"){let s=this.inRecursive.pop();if(s){if(s.type===b.array)e.push([93]);else if(s.type===b.map)e.push([125]);else throw new Error("Unexpected recursive type; this should not happen!");return}throw new Error("Unexpected break; this should not happen!")}if(t.value===void 0)throw new Error(`${tn} unsupported type: undefined`);if(this.prefix(e),t.type.name==="true"){e.push([116,114,117,101]);return}else if(t.type.name==="false"){e.push([102,97,108,115,101]);return}else if(t.type.name==="null"){e.push([110,117,108,108]);return}let n=String(t.value),i=[],o=!1;for(let s=0;s<n.length;s++)i[s]=n.charCodeAt(s),!o&&(i[s]===46||i[s]===101||i[s]===69)&&(o=!0);o||(i.push(46),i.push(48)),e.push(i)}};function rv(r,e){if(Array.isArray(r[0])||Array.isArray(e[0]))throw new Error(`${tn} complex map keys are not supported`);let t=r[0],n=e[0];if(t.type!==b.string||n.type!==b.string)throw new Error(`${tn} non-string map keys are not supported`);if(t<n)return-1;if(t>n)return 1;throw new Error(`${tn} unexpected duplicate map keys, this is not supported`)}var nv={addBreakTokens:!0,mapSorter:rv};function al(r,e){return e=Object.assign({},nv,e),Xh(r,new bd,e)}var zn=class{constructor(e,t={}){this._pos=0,this.data=e,this.options=t,this.modeStack=["value"],this.lastToken=""}pos(){return this._pos}done(){return this._pos>=this.data.length}ch(){return this.data[this._pos]}currentMode(){return this.modeStack[this.modeStack.length-1]}skipWhitespace(){let e=this.ch();for(;e===32||e===9||e===13||e===10;)e=this.data[++this._pos]}expect(e){if(this.data.length-this._pos<e.length)throw new Error(`${K} unexpected end of input at position ${this._pos}`);for(let t=0;t<e.length;t++)if(this.data[this._pos++]!==e[t])throw new Error(`${K} unexpected token at position ${this._pos}, expected to find '${String.fromCharCode(...e)}'`)}parseNumber(){let e=this._pos,t=!1,n=!1,i=a=>{for(;!this.done();){let c=this.ch();if(a.includes(c))this._pos++;else break}};if(this.ch()===45&&(t=!0,this._pos++),this.ch()===48)if(this._pos++,this.ch()===46)this._pos++,n=!0;else return new C(b.uint,0,this._pos-e);if(i([48,49,50,51,52,53,54,55,56,57]),t&&this._pos===e+1)throw new Error(`${K} unexpected token at position ${this._pos}`);if(!this.done()&&this.ch()===46){if(n)throw new Error(`${K} unexpected token at position ${this._pos}`);n=!0,this._pos++,i([48,49,50,51,52,53,54,55,56,57])}!this.done()&&(this.ch()===101||this.ch()===69)&&(n=!0,this._pos++,!this.done()&&(this.ch()===43||this.ch()===45)&&this._pos++,i([48,49,50,51,52,53,54,55,56,57]));let o=String.fromCharCode.apply(null,this.data.subarray(e,this._pos)),s=parseFloat(o);return n?new C(b.float,s,this._pos-e):this.options.allowBigInt!==!0||Number.isSafeInteger(s)?new C(s>=0?b.uint:b.negint,s,this._pos-e):new C(s>=0?b.uint:b.negint,BigInt(o),this._pos-e)}parseString(){if(this.ch()!==34)throw new Error(`${K} unexpected character at position ${this._pos}; this shouldn't happen`);this._pos++;for(let o=this._pos,s=0;o<this.data.length&&s<65536;o++,s++){let a=this.data[o];if(a===92||a<32||a>=128)break;if(a===34){let c=String.fromCharCode.apply(null,this.data.subarray(this._pos,o));return this._pos=o+1,new C(b.string,c,s)}}let e=this._pos,t=[],n=()=>{if(this._pos+4>=this.data.length)throw new Error(`${K} unexpected end of unicode escape sequence at position ${this._pos}`);let o=0;for(let s=0;s<4;s++){let a=this.ch();if(a>=48&&a<=57)a-=48;else if(a>=97&&a<=102)a=a-97+10;else if(a>=65&&a<=70)a=a-65+10;else throw new Error(`${K} unexpected unicode escape character at position ${this._pos}`);o=o*16+a,this._pos++}return o},i=()=>{let o=this.ch(),s=null,a=o>239?4:o>223?3:o>191?2:1;if(this._pos+a>this.data.length)throw new Error(`${K} unexpected unicode sequence at position ${this._pos}`);let c,u,l,h;switch(a){case 1:o<128&&(s=o);break;case 2:c=this.data[this._pos+1],(c&192)===128&&(h=(o&31)<<6|c&63,h>127&&(s=h));break;case 3:c=this.data[this._pos+1],u=this.data[this._pos+2],(c&192)===128&&(u&192)===128&&(h=(o&15)<<12|(c&63)<<6|u&63,h>2047&&(h<55296||h>57343)&&(s=h));break;case 4:c=this.data[this._pos+1],u=this.data[this._pos+2],l=this.data[this._pos+3],(c&192)===128&&(u&192)===128&&(l&192)===128&&(h=(o&15)<<18|(c&63)<<12|(u&63)<<6|l&63,h>65535&&h<1114112&&(s=h))}s===null?(s=65533,a=1):s>65535&&(s-=65536,t.push(s>>>10&1023|55296),s=56320|s&1023),t.push(s),this._pos+=a};for(;!this.done();){let o=this.ch(),s;switch(o){case 92:if(this._pos++,this.done())throw new Error(`${K} unexpected string termination at position ${this._pos}`);switch(s=this.ch(),this._pos++,s){case 34:case 39:case 92:case 47:t.push(s);break;case 98:t.push(8);break;case 116:t.push(9);break;case 110:t.push(10);break;case 102:t.push(12);break;case 114:t.push(13);break;case 117:t.push(n());break;default:throw new Error(`${K} unexpected string escape character at position ${this._pos}`)}break;case 34:return this._pos++,new C(b.string,Kh(t),this._pos-e);default:if(o<32)throw new Error(`${K} invalid control character at position ${this._pos}`);o<128?(t.push(o),this._pos++):i()}}throw new Error(`${K} unexpected end of string at position ${this._pos}`)}parseValue(){switch(this.ch()){case 123:return this.modeStack.push("obj-start"),this._pos++,new C(b.map,1/0,1);case 91:return this.modeStack.push("array-start"),this._pos++,new C(b.array,1/0,1);case 34:return this.parseString();case 110:return this.expect([110,117,108,108]),new C(b.null,null,4);case 102:return this.expect([102,97,108,115,101]),new C(b.false,!1,5);case 116:return this.expect([116,114,117,101]),new C(b.true,!0,4);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.parseNumber();default:throw new Error(`${K} unexpected character at position ${this._pos}`)}}next(){switch(this.skipWhitespace(),this.currentMode()){case"value":return this.modeStack.pop(),this.parseValue();case"array-value":{if(this.modeStack.pop(),this.ch()===93)return this._pos++,this.skipWhitespace(),new C(b.break,void 0,1);if(this.ch()!==44)throw new Error(`${K} unexpected character at position ${this._pos}, was expecting array delimiter but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue()}case"array-start":return this.modeStack.pop(),this.ch()===93?(this._pos++,this.skipWhitespace(),new C(b.break,void 0,1)):(this.modeStack.push("array-value"),this.skipWhitespace(),this.parseValue());case"obj-key":if(this.ch()===125)return this.modeStack.pop(),this._pos++,this.skipWhitespace(),new C(b.break,void 0,1);if(this.ch()!==44)throw new Error(`${K} unexpected character at position ${this._pos}, was expecting object delimiter but found '${String.fromCharCode(this.ch())}'`);this._pos++,this.skipWhitespace();case"obj-start":{if(this.modeStack.pop(),this.ch()===125)return this._pos++,this.skipWhitespace(),new C(b.break,void 0,1);let e=this.parseString();if(this.skipWhitespace(),this.ch()!==58)throw new Error(`${K} unexpected character at position ${this._pos}, was expecting key/value delimiter ':' but found '${String.fromCharCode(this.ch())}'`);return this._pos++,this.modeStack.push("obj-value"),e}case"obj-value":return this.modeStack.pop(),this.modeStack.push("obj-key"),this.skipWhitespace(),this.parseValue();default:throw new Error(`${K} unexpected parse state at position ${this._pos}; this shouldn't happen`)}}};function Us(r,e){return e=Object.assign({tokenizer:new zn(r,e)},e),at(r,e)}function iv(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var Ed=class extends zn{constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===b.map){let t=this._next();if(t.type===b.string&&t.value==="/"){let n=this._next();if(n.type===b.string){if(this._next().type!==b.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new C(b.tag,42,0)}if(n.type===b.map){let i=this._next();if(i.type===b.string&&i.value==="bytes"){let o=this._next();if(o.type===b.string){for(let a=0;a<2;a++)if(this._next().type!==b.break)throw new Error("Invalid encoded Bytes form");let s=Pr.decode(`m${o.value}`);return new C(b.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},vd={allowIndefinite:!1,allowUndefined:!1,allowNaN:!1,allowInfinity:!1,allowBigInt:!0,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:[]};vd.tags[42]=H.parse;var Ao=297;var xy=r=>{let e=iv(r),t=Object.assign(vd,{tokenizer:new Ed(e,vd)});return Us(e,t)};var PN=new TextDecoder;var ON=new TextEncoder;var De={};Ae(De,{code:()=>Te,createLink:()=>Ry,createNode:()=>ky,decode:()=>ve,encode:()=>ce,name:()=>mv,prepare:()=>_e,validate:()=>Sd});var ov=new TextDecoder;function Ad(r,e){let t=0;for(let n=0;;n+=7){if(n>=64)throw new Error("protobuf: varint overflow");if(e>=r.length)throw new Error("protobuf: unexpected end of data");let i=r[e++];if(t+=n<28?(i&127)<<n:(i&127)*2**n,i<128)break}return[t,e]}function cl(r,e){let t;[t,e]=Ad(r,e);let n=e+t;if(t<0||n<0)throw new Error("protobuf: invalid length");if(n>r.length)throw new Error("protobuf: unexpected end of data");return[r.subarray(e,n),n]}function by(r,e){let t;return[t,e]=Ad(r,e),[t&7,t>>3,e]}function sv(r){let e={},t=r.length,n=0;for(;n<t;){let i,o;if([i,o,n]=by(r,n),o===1){if(e.Hash)throw new Error("protobuf: (PBLink) duplicate Hash section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Hash`);if(e.Name!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Name before Hash");if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Hash");[e.Hash,n]=cl(r,n)}else if(o===2){if(e.Name!==void 0)throw new Error("protobuf: (PBLink) duplicate Name section");if(i!==2)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Name`);if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) invalid order, found Tsize before Name");let s;[s,n]=cl(r,n),e.Name=ov.decode(s)}else if(o===3){if(e.Tsize!==void 0)throw new Error("protobuf: (PBLink) duplicate Tsize section");if(i!==0)throw new Error(`protobuf: (PBLink) wrong wireType (${i}) for Tsize`);[e.Tsize,n]=Ad(r,n)}else throw new Error(`protobuf: (PBLink) invalid fieldNumber, expected 1, 2 or 3, got ${o}`)}if(n>t)throw new Error("protobuf: (PBLink) unexpected end of data");return e}function Ey(r){let e=r.length,t=0,n,i=!1,o;for(;t<e;){let a,c;if([a,c,t]=by(r,t),a!==2)throw new Error(`protobuf: (PBNode) invalid wireType, expected 2, got ${a}`);if(c===1){if(o)throw new Error("protobuf: (PBNode) duplicate Data section");[o,t]=cl(r,t),n&&(i=!0)}else if(c===2){if(i)throw new Error("protobuf: (PBNode) duplicate Links section");n||(n=[]);let u;[u,t]=cl(r,t),n.push(sv(u))}else throw new Error(`protobuf: (PBNode) invalid fieldNumber, expected 1 or 2, got ${c}`)}if(t>e)throw new Error("protobuf: (PBNode) unexpected end of data");let s={};return o&&(s.Data=o),s.Links=n||[],s}var By=new TextEncoder,vy=2**32,av=2**31;function cv(r,e){let t=e.length;if(typeof r.Tsize=="number"){if(r.Tsize<0)throw new Error("Tsize cannot be negative");if(!Number.isSafeInteger(r.Tsize))throw new Error("Tsize too large for encoding");t=Ls(e,t,r.Tsize)-1,e[t]=24}if(typeof r.Name=="string"){let n=By.encode(r.Name);t-=n.length,e.set(n,t),t=Ls(e,t,n.length)-1,e[t]=18}return r.Hash&&(t-=r.Hash.length,e.set(r.Hash,t),t=Ls(e,t,r.Hash.length)-1,e[t]=10),e.length-t}function Ay(r){let e=uv(r),t=new Uint8Array(e),n=e;if(r.Data&&(n-=r.Data.length,t.set(r.Data,n),n=Ls(t,n,r.Data.length)-1,t[n]=10),r.Links)for(let i=r.Links.length-1;i>=0;i--){let o=cv(r.Links[i],t.subarray(0,n));n-=o,n=Ls(t,n,o)-1,t[n]=18}return t}function lv(r){let e=0;if(r.Hash){let t=r.Hash.length;e+=1+t+Io(t)}if(typeof r.Name=="string"){let t=By.encode(r.Name).length;e+=1+t+Io(t)}return typeof r.Tsize=="number"&&(e+=1+Io(r.Tsize)),e}function uv(r){let e=0;if(r.Data){let t=r.Data.length;e+=1+t+Io(t)}if(r.Links)for(let t of r.Links){let n=lv(t);e+=1+n+Io(n)}return e}function Ls(r,e,t){e-=Io(t);let n=e;for(;t>=av;)r[e++]=t&127|128,t/=128;for(;t>=128;)r[e++]=t&127|128,t>>>=7;return r[e]=t,n}function Io(r){return r%2===0&&r++,Math.floor((hv(r)+6)/7)}function hv(r){let e=0;return r>=vy&&(r=Math.floor(r/vy),e=32),r>=65536&&(r>>>=16,e+=16),r>=256&&(r>>>=8,e+=8),e+dv[r]}var dv=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8];var fv=["Data","Links"],pv=["Hash","Name","Tsize"],Id=new TextEncoder;function Sy(r,e){if(r===e)return 0;let t=r.Name?Id.encode(r.Name):[],n=e.Name?Id.encode(e.Name):[],i=t.length,o=n.length;for(let s=0,a=Math.min(i,o);s<a;++s)if(t[s]!==n[s]){i=t[s],o=n[s];break}return i<o?-1:o<i?1:0}function Iy(r,e){return!Object.keys(r).some(t=>!e.includes(t))}function _y(r){if(typeof r.asCID=="object"){let t=H.asCID(r);if(!t)throw new TypeError("Invalid DAG-PB form");return{Hash:t}}if(typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Hash){let t=H.asCID(r.Hash);try{t||(typeof r.Hash=="string"?t=H.parse(r.Hash):r.Hash instanceof Uint8Array&&(t=H.decode(r.Hash)))}catch(n){throw new TypeError(`Invalid DAG-PB form: ${n.message}`)}t&&(e.Hash=t)}if(!e.Hash)throw new TypeError("Invalid DAG-PB form");return typeof r.Name=="string"&&(e.Name=r.Name),typeof r.Tsize=="number"&&(e.Tsize=r.Tsize),e}function _e(r){if((r instanceof Uint8Array||typeof r=="string")&&(r={Data:r}),typeof r!="object"||Array.isArray(r))throw new TypeError("Invalid DAG-PB form");let e={};if(r.Data!==void 0)if(typeof r.Data=="string")e.Data=Id.encode(r.Data);else if(r.Data instanceof Uint8Array)e.Data=r.Data;else throw new TypeError("Invalid DAG-PB form");if(r.Links!==void 0)if(Array.isArray(r.Links))e.Links=r.Links.map(_y),e.Links.sort(Sy);else throw new TypeError("Invalid DAG-PB form");else e.Links=[];return e}function Sd(r){if(!r||typeof r!="object"||Array.isArray(r)||r instanceof Uint8Array||r["/"]&&r["/"]===r.bytes)throw new TypeError("Invalid DAG-PB form");if(!Iy(r,fv))throw new TypeError("Invalid DAG-PB form (extraneous properties)");if(r.Data!==void 0&&!(r.Data instanceof Uint8Array))throw new TypeError("Invalid DAG-PB form (Data must be bytes)");if(!Array.isArray(r.Links))throw new TypeError("Invalid DAG-PB form (Links must be a list)");for(let e=0;e<r.Links.length;e++){let t=r.Links[e];if(!t||typeof t!="object"||Array.isArray(t)||t instanceof Uint8Array||t["/"]&&t["/"]===t.bytes)throw new TypeError("Invalid DAG-PB form (bad link)");if(!Iy(t,pv))throw new TypeError("Invalid DAG-PB form (extraneous properties on link)");if(t.Hash===void 0)throw new TypeError("Invalid DAG-PB form (link must have a Hash)");if(t.Hash==null||!t.Hash["/"]||t.Hash["/"]!==t.Hash.bytes)throw new TypeError("Invalid DAG-PB form (link Hash must be a CID)");if(t.Name!==void 0&&typeof t.Name!="string")throw new TypeError("Invalid DAG-PB form (link Name must be a string)");if(t.Tsize!==void 0){if(typeof t.Tsize!="number"||t.Tsize%1!==0)throw new TypeError("Invalid DAG-PB form (link Tsize must be an integer)");if(t.Tsize<0)throw new TypeError("Invalid DAG-PB form (link Tsize cannot be negative)")}if(e>0&&Sy(t,r.Links[e-1])===-1)throw new TypeError("Invalid DAG-PB form (links must be sorted by Name bytes)")}}function ky(r,e=[]){return _e({Data:r,Links:e})}function Ry(r,e,t){return _y({Hash:t,Name:r,Tsize:e})}function Ty(r){return r instanceof ArrayBuffer?new Uint8Array(r,0,r.byteLength):r}var mv="dag-pb",Te=112;function ce(r){Sd(r);let e={};return r.Links&&(e.Links=r.Links.map(t=>{let n={};return t.Hash&&(n.Hash=t.Hash.bytes),t.Name!==void 0&&(n.Name=t.Name),t.Tsize!==void 0&&(n.Tsize=t.Tsize),n})),r.Data&&(e.Data=r.Data),Ay(e)}function ve(r){let e=Ty(r),t=Ey(e),n={};return t.Data&&(n.Data=t.Data),t.Links&&(n.Links=t.Links.map(i=>{let o={};try{o.Hash=H.decode(i.Hash)}catch{}if(!o.Hash)throw new Error("Invalid Hash field found in link, expected CID");return i.Name!==void 0&&(o.Name=i.Name),i.Tsize!==void 0&&(o.Tsize=i.Tsize),o})),n}var yv={codec:Te,*walk(r){yield*ve(r).Links.map(t=>t.Hash)}},gv={codec:Ne,*walk(){}},Cy=42,wv={codec:Bo,*walk(r){let e=[],t=[];t[Cy]=n=>{if(n[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");let i=H.decode(n.subarray(1));return e.push(i),i},at(r,{tags:t}),yield*e}},_d=class extends zn{tokenBuffer;constructor(e,t){super(e,t),this.tokenBuffer=[]}done(){return this.tokenBuffer.length===0&&super.done()}_next(){return this.tokenBuffer.length>0?this.tokenBuffer.pop():super.next()}next(){let e=this._next();if(e.type===b.map){let t=this._next();if(t.type===b.string&&t.value==="/"){let n=this._next();if(n.type===b.string){if(this._next().type!==b.break)throw new Error("Invalid encoded CID form");return this.tokenBuffer.push(n),new C(b.tag,42,0)}if(n.type===b.map){let i=this._next();if(i.type===b.string&&i.value==="bytes"){let o=this._next();if(o.type===b.string){for(let a=0;a<2;a++)if(this._next().type!==b.break)throw new Error("Invalid encoded Bytes form");let s=Pr.decode(`m${o.value}`);return new C(b.bytes,s,o.value.length)}this.tokenBuffer.push(o)}this.tokenBuffer.push(i)}this.tokenBuffer.push(n)}this.tokenBuffer.push(t)}return e}},xv={codec:Ao,*walk(r){let e=[],t=[];t[Cy]=n=>{let i=H.parse(n);return e.push(i),i},Us(r,{tags:t,tokenizer:new _d(r,{tags:t,allowIndefinite:!0,allowUndefined:!0,allowNaN:!0,allowInfinity:!0,allowBigInt:!0,strict:!1,rejectDuplicateMapKeys:!1})}),yield*e}},bv={codec:$i,*walk(){}};function Ny(r=[]){let e={};return[yv,gv,wv,xv,bv,...r].forEach(t=>{e[t.codec]=t}),e}var kd=new Fe("/version"),Uy=1;async function Ly(r){if(!await r.has(kd)){await r.put(kd,Y(`${Uy}`));return}let e=await r.get(kd),t=Q(e);if(parseInt(t,10)!==Uy)throw new Error("Unknown datastore version, a datastore migration may be required")}function Dy(r=[]){let e={};return[he,fu,et,...r].forEach(t=>{e[t.code]=t}),e}var br=class{has(e,t){return Promise.reject(new Error(".has is not implemented"))}put(e,t,n){return Promise.reject(new Error(".put is not implemented"))}async*putMany(e,t){for await(let{cid:n,block:i}of e)await this.put(n,i,t),yield n}get(e,t){return Promise.reject(new Error(".get is not implemented"))}async*getMany(e,t){for await(let n of e)yield{cid:n,block:await this.get(n,t)}}delete(e,t){return Promise.reject(new Error(".delete is not implemented"))}async*deleteMany(e,t){for await(let n of e)await this.delete(n,t),yield n}async*getAll(e){throw new Error(".getAll is not implemented")}};var bi={};Ae(bi,{abortedError:()=>Iv,closeFailedError:()=>vv,deleteFailedError:()=>Td,getFailedError:()=>Bv,hasFailedError:()=>Av,notFoundError:()=>Kn,openFailedError:()=>Ev,putFailedError:()=>Rd});var on=re(Re(),1);function Ev(r){return r=r??new Error("Open failed"),(0,on.default)(r,"ERR_OPEN_FAILED")}function vv(r){return r=r??new Error("Close failed"),(0,on.default)(r,"ERR_CLOSE_FAILED")}function Rd(r){return r=r??new Error("Put failed"),(0,on.default)(r,"ERR_PUT_FAILED")}function Bv(r){return r=r??new Error("Get failed"),(0,on.default)(r,"ERR_GET_FAILED")}function Td(r){return r=r??new Error("Delete failed"),(0,on.default)(r,"ERR_DELETE_FAILED")}function Av(r){return r=r??new Error("Has failed"),(0,on.default)(r,"ERR_HAS_FAILED")}function Kn(r){return r=r??new Error("Not Found"),(0,on.default)(r,"ERR_NOT_FOUND")}function Iv(r){return r=r??new Error("Aborted"),(0,on.default)(r,"ERR_ABORTED")}var Py=0,ll=class extends br{put(e){return e}get(e){if(e.code===Py)return e.multihash.digest;throw Kn()}has(e){return e.code===Py}delete(){}*getAll(){}};function Sv(r){return r[Symbol.asyncIterator]!=null}function _v(r,e){if(Sv(r))return async function*(){for await(let a of r)await e(a)&&(yield a)}();let t=Ni(r),{value:n,done:i}=t.next();if(i===!0)return function*(){}();let o=e(n);if(typeof o.then=="function")return async function*(){await o&&(yield n);for await(let a of t)await e(a)&&(yield a)}();let s=e;return function*(){o===!0&&(yield n);for(let a of t)s(a)&&(yield a)}()}var wt=_v;var kv=oe("blockstore:core:tiered"),Ds=class extends br{stores;constructor(e){super(),this.stores=e.slice()}async put(e,t,n){try{return await Promise.all(this.stores.map(async i=>{await i.put(e,t,n)})),e}catch(i){throw Rd(i)}}async get(e,t){for(let n of this.stores)try{let i=await n.get(e,t);if(i!=null)return i}catch(i){kv.error(i)}throw Kn()}async has(e,t){for(let n of this.stores)if(await n.has(e,t))return!0;return!1}async delete(e,t){try{await Promise.all(this.stores.map(async n=>{await n.delete(e,t)}))}catch(n){throw Td(n)}}async*putMany(e,t={}){let n,i=this.stores.map(o=>{let s=Vt({objectMode:!0});return Fr(o.putMany(s,t)).catch(a=>{n=a}),s});try{for await(let o of e){if(n!=null)throw n;i.forEach(s=>s.push(o)),yield o.cid}}finally{i.forEach(o=>o.end())}}async*deleteMany(e,t={}){let n,i=this.stores.map(o=>{let s=Vt({objectMode:!0});return Fr(o.deleteMany(s,t)).catch(a=>{n=a}),s});try{for await(let o of e){if(n!=null)throw n;i.forEach(s=>s.push(o)),yield o}}finally{i.forEach(o=>o.end())}}async*getAll(e){let t=new Set;yield*wt(Vr(...this.stores.map(n=>n.getAll(e))),n=>{let i=n.cid.toString();return t.has(i)?!1:(t.add(i),!0)})}};function Rv(r){return typeof r.retrieve=="function"}function Tv(r){return typeof r.announce=="function"}var ul=class{child;blockRetrievers;blockAnnouncers;hashers;started;log;constructor(e){this.log=e.logger.forComponent("helia:networked-storage"),this.child=new Ds([new ll,e.blockstore]),this.blockRetrievers=(e.blockBrokers??[]).filter(Rv),this.blockAnnouncers=(e.blockBrokers??[]).filter(Tv),this.hashers=e.hashers??{},this.started=!1}isStarted(){return this.started}async start(){await vn(this.child,...new Set([...this.blockRetrievers,...this.blockAnnouncers])),this.started=!0}async stop(){await Bn(this.child,...new Set([...this.blockRetrievers,...this.blockAnnouncers])),this.started=!1}unwrap(){return this.child}async put(e,t,n={}){return await this.child.has(e)?(n.onProgress?.(new P("blocks:put:duplicate",e)),e):(n.onProgress?.(new P("blocks:put:providers:notify",e)),this.blockAnnouncers.forEach(i=>{i.announce(e,t,n)}),n.onProgress?.(new P("blocks:put:blockstore:put",e)),this.child.put(e,t,n))}async*putMany(e,t={}){let n=wt(e,async({cid:o})=>{let s=await this.child.has(o);return s&&t.onProgress?.(new P("blocks:put-many:duplicate",o)),!s}),i=Jl(n,({cid:o,block:s})=>{t.onProgress?.(new P("blocks:put-many:providers:notify",o)),this.blockAnnouncers.forEach(a=>{a.announce(o,s,t)})});t.onProgress?.(new P("blocks:put-many:blockstore:put-many")),yield*this.child.putMany(i,t)}async get(e,t={}){if(t.offline!==!0&&!await this.child.has(e)){t.onProgress?.(new P("blocks:get:providers:get",e));let n=await Oy(e,this.blockRetrievers,this.hashers[e.multihash.code],{...t,log:this.log});return t.onProgress?.(new P("blocks:get:blockstore:put",e)),await this.child.put(e,n,t),t.onProgress?.(new P("blocks:get:providers:notify",e)),this.blockAnnouncers.forEach(i=>{i.announce(e,n,t)}),n}return t.onProgress?.(new P("blocks:get:blockstore:get",e)),this.child.get(e,t)}async*getMany(e,t={}){t.onProgress?.(new P("blocks:get-many:blockstore:get-many")),yield*this.child.getMany(Jl(e,async n=>{if(t.offline!==!0&&!await this.child.has(n)){t.onProgress?.(new P("blocks:get-many:providers:get",n));let i=await Oy(n,this.blockRetrievers,this.hashers[n.multihash.code],{...t,log:this.log});t.onProgress?.(new P("blocks:get-many:blockstore:put",n)),await this.child.put(n,i,t),t.onProgress?.(new P("blocks:get-many:providers:notify",n)),this.blockAnnouncers.forEach(o=>{o.announce(n,i,t)})}}))}async delete(e,t={}){t.onProgress?.(new P("blocks:delete:blockstore:delete",e)),await this.child.delete(e,t)}async*deleteMany(e,t={}){t.onProgress?.(new P("blocks:delete-many:blockstore:delete-many")),yield*this.child.deleteMany(async function*(){for await(let n of e)yield n}(),t)}async has(e,t={}){return this.child.has(e,t)}async*getAll(e={}){e.onProgress?.(new P("blocks:get-all:blockstore:get-many")),yield*this.child.getAll(e)}},Cv=(r,e)=>{if(e==null)throw new F(`No hasher configured for multihash code 0x${r.multihash.code.toString(16)}, please configure one. You can look up which hash this is at https://github.com/multiformats/multicodec/blob/master/table.csv`,"ERR_UNKNOWN_HASH_ALG");return async t=>{let n=await e.digest(t);if(!de(n.digest,r.multihash.digest))throw new F("Hash of downloaded block did not match multihash from passed CID","ERR_HASH_MISMATCH")}};async function Oy(r,e,t,n){let i=Cv(r,t),o=new AbortController,s=ei([o.signal,n.signal]);try{return await Promise.any(e.map(async a=>{try{let c=!1,u=await a.retrieve(r,{...n,signal:s,validateFn:async l=>{await i(l),c=!0}});return c||await i(u),u}catch(c){throw n.log.error("could not retrieve verified block for %c",r,c),c}}))}finally{s.clear()}}var hl=class{blockstore;datastore;pins;logger;routing;dagWalkers;hashers;log;constructor(e){this.logger=e.logger??a0(),this.log=this.logger.forComponent("helia"),this.hashers=Dy(e.hashers),this.dagWalkers=Ny(e.dagWalkers);let t={blockstore:e.blockstore,datastore:e.datastore,hashers:this.hashers,dagWalkers:this.dagWalkers,logger:this.logger,blockBrokers:[],...e.components??{}};t.blockBrokers=e.blockBrokers.map(i=>i(t));let n=new ul(t);this.pins=new nl(e.datastore,n,this.dagWalkers),this.blockstore=new ol(n,this.pins,{holdGcLock:e.holdGcLock??!0}),this.datastore=e.datastore,this.routing=new il(t,{routers:(e.routers??[]).flatMap(i=>{let o=[i];return i[jo]!=null&&o.push(i[jo]),i[Wo]!=null&&o.push(i[Wo]),o})})}async start(){await Ly(this.datastore),await vn(this.blockstore,this.datastore,this.routing)}async stop(){await Bn(this.blockstore,this.datastore,this.routing)}async gc(e={}){let t=await this.blockstore.lock.writeLock();try{let n=this,i=this.blockstore.unwrap();this.log("gc start"),await Fr(i.deleteMany(async function*(){for await(let{cid:o}of i.getAll())try{if(await n.pins.isPinned(o,e))continue;yield o,e.onProgress?.(new P("helia:gc:deleted",o))}catch(s){n.log.error("Error during gc",s),e.onProgress?.(new P("helia:gc:error",s))}}()))}finally{t()}this.log("gc finished")}};var Ps=class extends br{data;constructor(){super(),this.data=new Map}put(e,t){return this.data.set(qe.encode(e.multihash.bytes),t),e}get(e){let t=this.data.get(qe.encode(e.multihash.bytes));if(t==null)throw Kn();return t}has(e){return this.data.has(qe.encode(e.multihash.bytes))}async delete(e){this.data.delete(qe.encode(e.multihash.bytes))}async*getAll(){for(let[e,t]of this.data.entries())yield{cid:H.createV1(Ne,Et(qe.decode(e))),block:t}}};var zU={...bi};var Fy=re(Re(),1);function dl(r){return r=r??new Error("Not Found"),(0,Fy.default)(r,"ERR_NOT_FOUND")}var Vy="SHARDING";function Uv(r){return r[Symbol.asyncIterator]!=null}function Lv(r){if(Uv(r))return(async()=>{let t=[];for await(let n of r)t.push(n);return t})();let e=[];for(let t of r)e.push(t);return e}var fl=Lv;function Dv(r){return r[Symbol.asyncIterator]!=null}function Pv(r,e){return Dv(r)?async function*(){yield*(await fl(r)).sort(e)}():function*(){yield*fl(r).sort(e)}()}var pl=Pv;var sn=class{put(e,t,n){return Promise.reject(new Error(".put is not implemented"))}get(e,t){return Promise.reject(new Error(".get is not implemented"))}has(e,t){return Promise.reject(new Error(".has is not implemented"))}delete(e,t){return Promise.reject(new Error(".delete is not implemented"))}async*putMany(e,t={}){for await(let{key:n,value:i}of e)await this.put(n,i,t),yield n}async*getMany(e,t={}){for await(let n of e)yield{key:n,value:await this.get(n,t)}}async*deleteMany(e,t={}){for await(let n of e)await this.delete(n,t),yield n}batch(){let e=[],t=[];return{put(n,i){e.push({key:n,value:i})},delete(n){t.push(n)},commit:async n=>{await Fr(this.putMany(e,n)),e=[],await Fr(this.deleteMany(t,n)),t=[]}}}async*_all(e,t){throw new Error("._all is not implemented")}async*_allKeys(e,t){throw new Error("._allKeys is not implemented")}query(e,t){let n=this._all(e,t);if(e.prefix!=null){let i=e.prefix;n=wt(n,o=>o.key.toString().startsWith(i))}if(Array.isArray(e.filters)&&(n=e.filters.reduce((i,o)=>wt(i,o),n)),Array.isArray(e.orders)&&(n=e.orders.reduce((i,o)=>pl(i,o),n)),e.offset!=null){let i=0,o=e.offset;n=wt(n,()=>i++>=o)}return e.limit!=null&&(n=xa(n,e.limit)),n}queryKeys(e,t){let n=this._allKeys(e,t);if(e.prefix!=null){let i=e.prefix;n=wt(n,o=>o.toString().startsWith(i))}if(Array.isArray(e.filters)&&(n=e.filters.reduce((i,o)=>wt(i,o),n)),Array.isArray(e.orders)&&(n=e.orders.reduce((i,o)=>pl(i,o),n)),e.offset!=null){let i=e.offset,o=0;n=wt(n,()=>o++>=i)}return e.limit!=null&&(n=xa(n,e.limit)),n}};var Fs=class extends sn{data;constructor(){super(),this.data=new Map}put(e,t){return this.data.set(e.toString(),t),e}get(e){let t=this.data.get(e.toString());if(t==null)throw dl();return t}has(e){return this.data.has(e.toString())}delete(e){this.data.delete(e.toString())}*_all(){for(let[e,t]of this.data.entries())yield{key:new Fe(e),value:t}}*_allKeys(){for(let e of this.data.keys())yield new Fe(e)}};var gL=new Fe(Vy);var RL=oe("datastore:core:tiered");async function Hy(r={}){let e=r.datastore??new Fs,t=r.blockstore??new Ps,n=new hl({...r,datastore:e,blockstore:t,blockBrokers:r.blockBrokers??[Zo()],routers:r.routers??[Cs("https://delegated-ipfs.dev")]});return r.start!==!1&&await n.start(),n}var Cd=re(Nc(),1);function $y(r,e){let t=e.map((n,i)=>({record:ct(n),index:i}));return t.sort((n,i)=>{let o=n.record.sequence,s=i.record.sequence;if(o>s)return-1;if(o<s)return 1;if(n.record.validityType===je.ValidityType.EOL&&i.record.validityType===je.ValidityType.EOL){let a=Cd.default.fromString(n.record.validity).toDate(),c=Cd.default.fromString(i.record.validity).toDate();if(a.getTime()>c.getTime())return-1;if(a.getTime()<c.getTime())return 1}return 0}),t[0].index}var Vv=r=>{let e=r.data;return e.startsWith('"')&&(e=e.substring(1)),e.endsWith('"')&&(e=e.substring(0,e.length-1)),e.replace("dnslink=","")},Nd=(r,e)=>{let t=Mv(r,e);return{ipfsPath:Vv(t),answer:t}},Mv=(r,e)=>{let t=e.Answer?.filter(n=>n.data.includes("dnslink=/ipfs")||n.data.includes("dnslink=/ipns")).pop();if(t==null)throw new F(`No dnslink records found for domain: ${r}`,"ERR_DNSLINK_NOT_FOUND");return t},Vs=32,So=async(r,e,t,n={})=>{if(e===0)throw new Error("recursion limit exceeded");let i;try{i=await t(r,n)}catch(a){if(a.code!=="ENOTFOUND"&&a.code!=="ERR_DNSLINK_NOT_FOUND"&&a.code!=="ENODATA")throw a;r.startsWith("_dnslink.")?r=r.replace("_dnslink.",""):r=`_dnslink.${r}`,i=await t(r,n)}let o=i.replace("dnslink=",""),s=o.split("/")[2];try{return H.parse(s),o}catch{}return So(s,e-1,t,n)},Hv=/^dnslink=.+$/,zy=async(r,e)=>{let i=(await r.resolveTxt(e)).flat().filter(o=>Hv.test(o))[0];if(i==null)throw new F(`No dnslink records found for domain: ${e}`,"ERR_DNSLINK_NOT_FOUND");return i};var Ld=re(yu(),1),Dd=re(Gy(),1);function ml(r,e,t){return`${r}?name=${e}&type=${t}`}async function jy(r,e){return await(await fetch(r,{headers:new Headers({accept:"application/dns-json"}),signal:e})).json()}function Ei(r,e){return`${e}_${r}`}var Ud=Object.assign((0,Ld.default)("dns-over-http-resolver"),{error:(0,Ld.default)("dns-over-http-resolver:error")}),Pd=class{_cache;_TXTcache;_servers;_request;_abortControllers;constructor(e={}){this._cache=new Dd.default({max:e?.maxCache??100}),this._TXTcache=new Dd.default({max:e?.maxCache??100}),this._servers=["https://cloudflare-dns.com/dns-query","https://dns.google/resolve"],this._request=e.request??jy,this._abortControllers=[]}cancel(){this._abortControllers.forEach(e=>{e.abort()})}getServers(){return this._servers}_getShuffledServers(){let e=[...this._servers];for(let t=e.length-1;t>0;t--){let n=Math.floor(Math.random()*t),i=e[t];e[t]=e[n],e[n]=i}return e}setServers(e){this._servers=e}async resolve(e,t="A"){switch(t){case"A":return this.resolve4(e);case"AAAA":return this.resolve6(e);case"TXT":return this.resolveTxt(e);default:throw new Error(`${t} is not supported`)}}async resolve4(e){let t="A",n=this._cache.get(Ei(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(ml(o,e,t),s.signal),c=a.Answer.map(l=>l.data),u=Math.min(...a.Answer.map(l=>l.TTL));return this._cache.set(Ei(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),Ud.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryA ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}async resolve6(e){let t="AAAA",n=this._cache.get(Ei(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(ml(o,e,t),s.signal),c=a.Answer.map(l=>l.data),u=Math.min(...a.Answer.map(l=>l.TTL));return this._cache.set(Ei(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),Ud.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryAaaa ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}async resolveTxt(e){let t="TXT",n=this._TXTcache.get(Ei(e,t));if(n!=null)return n;let i=!1;for(let o of this._getShuffledServers()){let s=new AbortController;this._abortControllers.push(s);try{let a=await this._request(ml(o,e,t),s.signal),c=a.Answer.map(l=>[l.data.replace(/['"]+/g,"")]),u=Math.min(...a.Answer.map(l=>l.TTL));return this._TXTcache.set(Ei(e,t),c,{ttl:u}),c}catch{s.signal.aborted&&(i=!0),Ud.error(`${o} could not resolve ${e} record ${t}`)}finally{this._abortControllers=this._abortControllers.filter(a=>a!==s)}}throw i?Object.assign(new Error("queryTxt ECANCELLED"),{code:"ECANCELLED"}):new Error(`Could not resolve ${e} record ${t}`)}clearCache(){this._cache.clear(),this._TXTcache.clear()}},Wy=Pd;var Xy=re(Od(),1),Gn=class{lru;constructor(e){this.lru=(0,Xy.default)(e)}get(e){let t=this.lru.get(e);if(t!=null){if(t.expire!=null&&t.expire<Date.now()){this.lru.remove(e);return}return t.value}}set(e,t,n){this.lru.set(e,{value:t,expire:Date.now()+n})}has(e){return this.get(e)!=null}remove(e){this.lru.remove(e)}clear(){this.lru.clear()}};var Fd=new Gn(1e3),Gv=60*1e3,jv=new yt({concurrency:4}),Wv=async function(e,t={}){let n=new Wy({maxCache:0});if(t.nocache!==!0&&Fd.has(e)){let o=Fd.get(e);if(o!=null)return t?.onProgress?.(new P("dnslink:cache",{detail:o})),o}t.onProgress?.(new P("dnslink:query",{detail:e}));let i=await jv.add(async()=>{let o=await zy(n,e);return t.onProgress?.(new P("dnslink:answer",{detail:o})),Fd.set(e,o,Gv),o},{signal:t?.signal});if(i==null)throw new Error("No DNS response received");return i},Zy=Wv;function Jy(){return async(r,e={})=>So(r,Vs,Zy,e)}var Vd=class{routing;constructor(e){this.routing=e}async put(e,t,n={}){try{await this.routing.put(e,t,n)}catch(i){n.onProgress?.(new P("ipns:routing:helia:error",i))}}async get(e,t={}){try{return await this.routing.get(e,t)}catch(n){t.onProgress?.(new P("ipns:routing:helia:error",n))}throw new Error("Not found")}};function Qy(r){return new Vd(r)}var yl=globalThis.CustomEvent??Event;async function*vi(r,e={}){let t=e.concurrency??1/0;t<1&&(t=1/0);let n=e.ordered==null?!1:e.ordered,i=new EventTarget,o=[],s=Ue(),a=Ue(),c=!1,u,l=!1;i.addEventListener("task-complete",()=>{a.resolve()}),Promise.resolve().then(async()=>{try{for await(let f of r){if(o.length===t&&(s=Ue(),await s.promise),l)break;let m={done:!1};o.push(m),f().then(y=>{m.done=!0,m.ok=!0,m.value=y,i.dispatchEvent(new yl("task-complete"))},y=>{m.done=!0,m.err=y,i.dispatchEvent(new yl("task-complete"))})}c=!0,i.dispatchEvent(new yl("task-complete"))}catch(f){u=f,i.dispatchEvent(new yl("task-complete"))}});function h(){return n?o[0]?.done:!!o.find(f=>f.done)}function*p(){for(;o.length>0&&o[0].done;){let f=o[0];if(o.shift(),f.ok)yield f.value;else throw l=!0,s.resolve(),f.err;s.resolve()}}function*d(){for(;h();)for(let f=0;f<o.length;f++)if(o[f].done){let m=o[f];if(o.splice(f,1),f--,m.ok)yield m.value;else throw l=!0,s.resolve(),m.err;s.resolve()}}for(;;){if(h()||(a=Ue(),await a.promise),u!=null)throw u;if(n?yield*p():yield*d(),c&&o.length===0)break}}var Ms;(function(r){let e;r.codec=()=>(e==null&&(e=Ft((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)=>{let i={key:new Uint8Array(0),value:new Uint8Array(0),timeReceived:""},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.key=t.bytes();break;case 2:i.value=t.bytes();break;case 5:i.timeReceived=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Ot(t,r.codec()),r.decode=t=>Dt(t,r.codec())})(Ms||(Ms={}));function eg(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"),o=String(r.getUTCMinutes()).padStart(2,"0"),s=String(r.getUTCSeconds()).padStart(2,"0"),a=r.getUTCMilliseconds(),c=String(a*1e3*1e3).padStart(9,"0");return`${e}-${t}-${n}T${i}:${o}:${s}.${c}Z`}function tg(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,o=parseInt(t[3],10),s=parseInt(t[4],10),a=parseInt(t[5],10),c=parseInt(t[6],10),u=parseInt(t[7].slice(0,-6),10);return new Date(Date.UTC(n,i,o,s,a,c,u))}var _o=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 Ms.encode(this.prepareSerialize())}prepareSerialize(){return{key:this.key,value:this.value,timeReceived:eg(this.timeReceived)}}static deserialize(e){let t=Ms.decode(e);return new r(t.key,t.value,new Date(t.timeReceived))}static fromDeserialized(e){let t=tg(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)}};var rg;(function(r){r[r.SEND_QUERY=0]="SEND_QUERY",r[r.PEER_RESPONSE=1]="PEER_RESPONSE",r[r.FINAL_PEER=2]="FINAL_PEER",r[r.QUERY_ERROR=3]="QUERY_ERROR",r[r.PROVIDER=4]="PROVIDER",r[r.VALUE=5]="VALUE",r[r.ADD_PEER=6]="ADD_PEER",r[r.DIAL_PEER=7]="DIAL_PEER"})(rg||(rg={}));var ng;(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"})(ng||(ng={}));function Md(r){return new Fe("/dht/record/"+Q(r,"base32"),!1)}function ig(r){return{async put(e,t,n={}){try{let i=Md(e),o=new _o(e,t,new Date);n.onProgress?.(new P("ipns:routing:datastore:put")),await r.put(i,o.serialize(),n)}catch(i){throw n.onProgress?.(new P("ipns:routing:datastore:error",i)),i}},async get(e,t={}){try{let n=Md(e);t.onProgress?.(new P("ipns:routing:datastore:get"));let i=await r.get(n,t);return _o.deserialize(i).value}catch(n){throw t.onProgress?.(new P("ipns:routing:datastore:error",n)),n}},async has(e,t={}){let n=Md(e);return r.has(n,t)}}}var Bi=oe("helia:ipns"),Xv=60*1e3,og=60*Xv,Zv=24*og,Hd=23*og,$d=class{routers;localStore;timeout;defaultResolvers;constructor(e,t=[],n=[]){this.routers=[Qy(e.routing),...t],this.localStore=ig(e.datastore),this.defaultResolvers=n.length>0?n:[Jy()]}async publish(e,t,n={}){try{let i=1n,o=wo(e);if(await this.localStore.has(o,n)){let c=await this.localStore.get(o,n);i=ct(c).sequence+1n}let s=await Wm(e,t,i,n.lifetime??Zv,n),a=nn(s);return await this.localStore.put(o,a,n),n.offline!==!0&&await Promise.all(this.routers.map(async c=>{await c.put(o,a,n)})),s}catch(i){throw n.onProgress?.(new P("ipns:publish:error",i)),i}}async resolve(e,t={}){let n=wo(e),i=await this.#t(n,t);return this.#e(i.value,t)}async resolveDns(e,t={}){let n=t.resolvers??this.defaultResolvers,i=await Promise.any(n.map(async o=>o(e,t)));return this.#e(i,t)}republish(e={}){if(this.timeout!=null)throw new Error("Republish is already running");e.signal?.addEventListener("abort",()=>{clearTimeout(this.timeout)});async function t(){let n=Date.now();e.onProgress?.(new P("ipns:republish:start"));let o=Date.now()-n,s=Hd-o;s<0&&(s=e.interval??Hd),setTimeout(()=>{t().catch(a=>{Bi.error("error republishing",a)})},s)}this.timeout=setTimeout(()=>{t().catch(n=>{Bi.error("error republishing",n)})},e.interval??Hd)}async#e(e,t={}){let n=e.split("/");try{let i=n[1];if(i==="ipns"){let{cid:o}=await this.resolve(Yt(n[2]),t),s=n.slice(3).join("/");return{cid:o,path:s}}else if(i==="ipfs"){let o=H.parse(n[2]),s=n.slice(3).join("/");return{cid:o,path:s}}}catch(i){Bi.error("error parsing ipfs path",i)}throw Bi.error("invalid ipfs path %s",e),new Error("Invalid value")}async#t(e,t={}){let n=[this.localStore,...this.routers];t.offline===!0&&(n=[this.localStore]);let i=[],o=0;if(await Promise.all(n.map(async a=>{let c;try{c=await a.get(e,{...t,validate:!1})}catch(u){a===this.localStore&&u.code==="ERR_NOT_FOUND"?Bi("did not have record locally"):Bi.error("error finding IPNS record",u);return}try{await Wc(e,c),i.push(c)}catch(u){o++,Bi.error("error finding IPNS record",u)}})),i.length===0)throw o>0?new F(`${o>1?`${o} records`:"Record"} found for routing key ${o>1?"were":"was"} invalid`,"ERR_RECORDS_FAILED_VALIDATION"):new F("Could not find record for routing key","ERR_NOT_FOUND");let s=i[$y(e,i)];return await this.localStore.put(e,s,t),ct(s)}};function sg(r,{routers:e=[],resolvers:t=[]}={}){return new $d(r,e,t)}var O4=re(Qd(),1),F4=re(Og(),1);var lP=new Gn(1e3),uP=60*1e3;var uf=new Gn(1e3),V4=60*1e3;function vl(r){let e=new yt({concurrency:4}),t=async(n,i={})=>{let o=new URLSearchParams;o.set("name",n),o.set("type","TXT");let s=o.toString();if(i.nocache!==!0&&uf.has(s)){let c=uf.get(s);if(c!=null)return i.onProgress?.(new P("dnslink:cache",{detail:c})),c}i.onProgress?.(new P("dnslink:query",{detail:n}));let a=await e.add(async()=>{let c=await fetch(`${r}?${o}`,{headers:{accept:"application/dns-json"},signal:i.signal});if(c.status!==200)throw new Error(`Unexpected HTTP status: ${c.status} - ${c.statusText}`);let u=new URL(c.url).search.slice(1),l=await c.json();i.onProgress?.(new P("dnslink:answer",{detail:l}));let{ipfsPath:h,answer:p}=Nd(n,l);return uf.set(u,h,p.TTL??V4),h},{signal:i.signal});if(a==null)throw new Error("No DNS response received");return a};return async(n,i={})=>So(n,Vs,t,i)}var yf=re(Re(),1);function M4(r){return r[Symbol.asyncIterator]!=null}function H4(r,e=1){return e=Number(e),M4(r)?async function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for await(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}():function*(){let t=[];if(e<1&&(e=1),e!==Math.round(e))throw new Error("Batch size must be an integer");for(let n of r)for(t.push(n);t.length>=e;)yield t.slice(0,e),t=t.slice(e);for(;t.length>0;)yield t.slice(0,e),t=t.slice(e)}()}var zs=H4;async function*Ks(r,e=1){for await(let t of zs(r,e)){let n=t.map(async i=>i().then(o=>({ok:!0,value:o}),o=>({ok:!1,err:o})));for(let i=0;i<n.length;i++){let o=await n[i];if(o.ok)yield o.value;else throw o.err}}}var $4=262144,qs=(r={})=>{let e=r.chunkSize??$4;return async function*(n){let i=new ai,o=0,s=!1;for await(let a of n)for(i.append(a),o+=a.length;o>=e;)if(yield i.slice(0,e),s=!0,e===i.length)i=new ai,o=0;else{let c=new ai;c.append(i.sublist(e)),i=c,o-=e}(!s||o>0)&&(yield i.subarray(0,o))}};var hf=re(Re(),1);var ar;(function(r){let e;(function(i){i.Raw="Raw",i.Directory="Directory",i.File="File",i.Metadata="Metadata",i.Symlink="Symlink",i.HAMTShard="HAMTShard"})(e=r.DataType||(r.DataType={}));let t;(function(i){i[i.Raw=0]="Raw",i[i.Directory=1]="Directory",i[i.File=2]="File",i[i.Metadata=3]="Metadata",i[i.Symlink=4]="Symlink",i[i.HAMTShard=5]="HAMTShard"})(t||(t={})),function(i){i.codec=()=>si(t)}(e=r.DataType||(r.DataType={}));let n;r.codec=()=>(n==null&&(n=Ft((i,o,s={})=>{if(s.lengthDelimited!==!1&&o.fork(),i.Type!=null&&(o.uint32(8),r.DataType.codec().encode(i.Type,o)),i.Data!=null&&(o.uint32(18),o.bytes(i.Data)),i.filesize!=null&&(o.uint32(24),o.uint64(i.filesize)),i.blocksizes!=null)for(let a of i.blocksizes)o.uint32(32),o.uint64(a);i.hashType!=null&&(o.uint32(40),o.uint64(i.hashType)),i.fanout!=null&&(o.uint32(48),o.uint64(i.fanout)),i.mode!=null&&(o.uint32(56),o.uint32(i.mode)),i.mtime!=null&&(o.uint32(66),Bl.codec().encode(i.mtime,o)),s.lengthDelimited!==!1&&o.ldelim()},(i,o)=>{let s={blocksizes:[]},a=o==null?i.len:i.pos+o;for(;i.pos<a;){let c=i.uint32();switch(c>>>3){case 1:s.Type=r.DataType.codec().decode(i);break;case 2:s.Data=i.bytes();break;case 3:s.filesize=i.uint64();break;case 4:s.blocksizes.push(i.uint64());break;case 5:s.hashType=i.uint64();break;case 6:s.fanout=i.uint64();break;case 7:s.mode=i.uint32();break;case 8:s.mtime=Bl.codec().decode(i,i.uint32());break;default:i.skipType(c&7);break}}return s})),n),r.encode=i=>Ot(i,r.codec()),r.decode=i=>Dt(i,r.codec())})(ar||(ar={}));var Bl;(function(r){let e;r.codec=()=>(e==null&&(e=Ft((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.Seconds!=null&&(n.uint32(8),n.int64(t.Seconds)),t.FractionalNanoseconds!=null&&(n.uint32(21),n.fixed32(t.FractionalNanoseconds)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.Seconds=t.int64();break;case 2:i.FractionalNanoseconds=t.fixed32();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Ot(t,r.codec()),r.decode=t=>Dt(t,r.codec())})(Bl||(Bl={}));var Fg;(function(r){let e;r.codec=()=>(e==null&&(e=Ft((t,n,i={})=>{i.lengthDelimited!==!1&&n.fork(),t.MimeType!=null&&(n.uint32(10),n.string(t.MimeType)),i.lengthDelimited!==!1&&n.ldelim()},(t,n)=>{let i={},o=n==null?t.len:t.pos+n;for(;t.pos<o;){let s=t.uint32();switch(s>>>3){case 1:i.MimeType=t.string();break;default:t.skipType(s&7);break}}return i})),e),r.encode=t=>Ot(t,r.codec()),r.decode=t=>Dt(t,r.codec())})(Fg||(Fg={}));var Vg={Raw:"raw",Directory:"directory",File:"file",Metadata:"metadata",Symlink:"symlink",HAMTShard:"hamt-sharded-directory"},z4=["directory","hamt-sharded-directory"],Mg=parseInt("0644",8),Hg=parseInt("0755",8),W=class r{static unmarshal(e){let t=ar.decode(e),n=new r({type:Vg[t.Type!=null?t.Type.toString():"File"],data:t.Data,blockSizes:t.blocksizes,mode:t.mode,mtime:t.mtime!=null?{secs:t.mtime.Seconds??0n,nsecs:t.mtime.FractionalNanoseconds}:void 0,fanout:t.fanout});return n._originalMode=t.mode??0,n}type;data;blockSizes;hashType;fanout;mtime;_mode;_originalMode;constructor(e={type:"file"}){let{type:t,data:n,blockSizes:i,hashType:o,fanout:s,mtime:a,mode:c}=e;if(t!=null&&!Object.values(Vg).includes(t))throw(0,hf.default)(new Error("Type: "+t+" is not valid"),"ERR_INVALID_TYPE");this.type=t??"file",this.data=n,this.hashType=o,this.fanout=s,this.blockSizes=i??[],this._originalMode=0,this.mode=c,this.mtime=a}set mode(e){e==null?this._mode=this.isDirectory()?Hg:Mg:this._mode=e&4095}get mode(){return this._mode}isDirectory(){return z4.includes(this.type)}addBlockSize(e){this.blockSizes.push(e)}removeBlockSize(e){this.blockSizes.splice(e,1)}fileSize(){if(this.isDirectory())return 0n;let e=0n;return this.blockSizes.forEach(t=>{e+=t}),this.data!=null&&(e+=BigInt(this.data.length)),e}marshal(){let e;switch(this.type){case"raw":e=ar.DataType.Raw;break;case"directory":e=ar.DataType.Directory;break;case"file":e=ar.DataType.File;break;case"metadata":e=ar.DataType.Metadata;break;case"symlink":e=ar.DataType.Symlink;break;case"hamt-sharded-directory":e=ar.DataType.HAMTShard;break;default:throw(0,hf.default)(new Error(`Type: ${e} is not valid`),"ERR_INVALID_TYPE")}let t=this.data;(this.data==null||this.data.length===0)&&(t=void 0);let n;this.mode!=null&&(n=this._originalMode&4294963200|(this.mode??0),n===Mg&&!this.isDirectory()&&(n=void 0),n===Hg&&this.isDirectory()&&(n=void 0));let i;return this.mtime!=null&&(i={Seconds:this.mtime.secs,FractionalNanoseconds:this.mtime.nsecs}),ar.encode({Type:e,Data:t,filesize:this.isDirectory()?void 0:this.fileSize(),blocksizes:this.blockSizes,hashType:this.hashType,fanout:this.fanout,mode:n,mtime:i})}};var cr=async(r,e,t)=>{t.codec==null&&(t.codec=De);let n=await he.digest(r),i=H.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,t),i};function $g(r){return async function*(t,n){let i=0n;for await(let o of t.content)yield async()=>{let s,a={codec:De,cidVersion:r.cidVersion,onProgress:r.onProgress};r.rawLeaves?(a.codec=Pt,a.cidVersion=1):(s=new W({type:r.leafType,data:o}),o=ce({Data:s.marshal(),Links:[]}));let c=await cr(o,n,a);return i+=BigInt(o.byteLength),r.onProgress?.(new P("unixfs:importer:progress:file:write",{bytesWritten:i,cid:c,path:t.path})),{cid:c,unixfs:s,size:BigInt(o.length),block:o}}}}var df=re(Re(),1);var zg=async(r,e,t)=>{let n=new W({type:"directory",mtime:r.mtime,mode:r.mode}),i=ce(_e({Data:n.marshal()})),o=await cr(i,e,t),s=r.path;return{cid:o,path:s,unixfs:n,size:BigInt(i.length),originalPath:r.originalPath,block:i}};async function*K4(r,e,t){let n=-1,i;for await(let o of Ks(t.bufferImporter(r,e),t.blockWriteConcurrency)){if(n++,n===0){i={...o,single:!0};continue}else n===1&&i!=null&&(yield{...i,block:void 0,single:void 0},i=void 0);yield{...o,block:void 0}}i!=null&&(yield i)}function Kg(r){return r.single===!0}var q4=(r,e,t)=>async function(i){if(i.length===1&&Kg(i[0])&&t.reduceSingleLeafToSelf){let l=i[0],h=l.block;return Kg(l)&&(r.mtime!==void 0||r.mode!==void 0)&&(l.unixfs=new W({type:"file",mtime:r.mtime,mode:r.mode,data:l.block}),h={Data:l.unixfs.marshal(),Links:[]},l.block=ce(_e(h)),l.cid=await cr(l.block,e,{...t,cidVersion:t.cidVersion}),l.size=BigInt(l.block.length)),t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:l.cid,path:l.originalPath})),{cid:l.cid,path:r.path,unixfs:l.unixfs,size:l.size,originalPath:l.originalPath}}let o=new W({type:"file",mtime:r.mtime,mode:r.mode}),s=i.filter(l=>l.cid.code===Ne&&l.size>0||l.unixfs!=null&&l.unixfs.data==null&&l.unixfs.fileSize()>0n?!0:!!l.unixfs?.data?.length).map(l=>l.cid.code===Ne?(o.addBlockSize(l.size),{Name:"",Tsize:Number(l.size),Hash:l.cid}):(l.unixfs==null||l.unixfs.data==null?o.addBlockSize(l.unixfs?.fileSize()??0n):o.addBlockSize(BigInt(l.unixfs.data.length)),{Name:"",Tsize:Number(l.size),Hash:l.cid})),a={Data:o.marshal(),Links:s},c=ce(_e(a)),u=await cr(c,e,t);return t.onProgress?.(new P("unixfs:importer:progress:file:layout",{cid:u,path:r.originalPath})),{cid:u,path:r.path,unixfs:o,size:BigInt(c.length+a.Links.reduce((l,h)=>l+(h.Tsize??0),0)),originalPath:r.originalPath,block:c}},qg=async(r,e,t)=>t.layout(K4(r,e,t),q4(r,e,t));function G4(r){return Symbol.iterator in r}function j4(r){return Symbol.asyncIterator in r}function W4(r){try{if(r instanceof Uint8Array)return async function*(){yield r}();if(G4(r))return async function*(){yield*r}();if(j4(r))return r}catch{throw(0,df.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}throw(0,df.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}function Gg(r){return async function*(t,n){for await(let i of t){let o;if(i.path!=null&&(o=i.path,i.path=i.path.split("/").filter(s=>s!=null&&s!==".").join("/")),Y4(i)){let s={path:i.path,mtime:i.mtime,mode:i.mode,content:async function*(){let a=0n;for await(let c of r.chunker(r.chunkValidator(W4(i.content)))){let u=BigInt(c.byteLength);a+=u,r.onProgress?.(new P("unixfs:importer:progress:file:read",{bytesRead:a,chunkSize:u,path:i.path})),yield c}}(),originalPath:o};yield async()=>qg(s,n,r)}else if(i.path!=null){let s={path:i.path,mtime:i.mtime,mode:i.mode,originalPath:o};yield async()=>zg(s,n,r)}else throw new Error("Import candidate must have content or path or both")}}}function Y4(r){return r.content!=null}var ff=re(Re(),1);var jg=()=>async function*(e){for await(let t of e){if(t.length===void 0)throw(0,ff.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT");if(typeof t=="string"||t instanceof String)yield Y(t.toString());else if(Array.isArray(t))yield Uint8Array.from(t);else if(t instanceof Uint8Array)yield t;else throw(0,ff.default)(new Error("Content was invalid"),"ERR_INVALID_CONTENT")}};var X4=174;function Gs(r){let e=r?.maxChildrenPerNode??X4;return async function t(n,i){let o=[];for await(let s of zs(n,e))o.push(await i(s));return o.length>1?t(o,i):o[0]}}var Tr=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},js=H.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Ws=H.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var _i=class extends Tr{_children;constructor(e,t){super(e,t),this._children=new Map}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,this._children.set(e,t)}async get(e){return Promise.resolve(this._children.get(e))}childCount(){return this._children.size}directChildrenCount(){return this.childCount()}onlyChild(){return this._children.values().next().value}async*eachChildSeries(){for(let[e,t]of this._children.entries())yield{key:e,child:t}}estimateNodeSize(){if(this.nodeSize!==void 0)return this.nodeSize;this.nodeSize=0;for(let[e,t]of this._children.entries())t.size!=null&&t.cid!=null&&(this.nodeSize+=e.length+(this.options.cidVersion===1?Ws.bytes.byteLength:js.bytes.byteLength));return this.nodeSize}async*flush(e){let t=[];for(let[c,u]of this._children.entries()){let l=u;if(u instanceof Tr)for await(let h of u.flush(e))l=h,yield h;l.size!=null&&l.cid!=null&&t.push({Name:c,Tsize:Number(l.size),Hash:l.cid})}let n=new W({type:"directory",mtime:this.mtime,mode:this.mode}),i={Data:n.marshal(),Links:t},o=ce(_e(i)),s=await cr(o,e,this.options),a=o.length+i.Links.reduce((c,u)=>c+(u.Tsize==null?0:u.Tsize),0);this.cid=s,this.size=a,yield{cid:s,unixfs:n,path:this.path,size:BigInt(a)}}};var Il=re(Xg(),1);function Z4(r){let e=new Array(4);for(let t=0;t<4;t++)e[t]=r&255,r=r>>8;return new Uint8Array(e)}var E7=ti({name:"murmur3-32",code:35,encode:r=>Z4(Il.default.x86.hash32(r))}),ki=ti({name:"murmur3-128",code:34,encode:r=>Ui.fromHex(Il.default.x64.hash128(r))}),v7=ti({name:"murmur3-x64-64",code:34,encode:r=>Ui.fromHex(Il.default.x64.hash128(r)).subarray(0,8)});var Qg=re(Sl(),1);var Ut=class r{_options;_popCount;_parent;_posAtParent;_children;key;constructor(e,t,n=0){this._options=e,this._popCount=0,this._parent=t,this._posAtParent=n,this._children=new Qg.default,this.key=null}async put(e,t){let n=await this._findNewBucketAndPos(e);n.bucket._putAt(n,e,t)}async get(e){let t=await this._findChild(e);if(t!=null)return t.value}async del(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);n!=null&&n.key===e&&t.bucket._delAt(t.pos)}leafCount(){return this._children.compactArray().reduce((t,n)=>n instanceof r?t+n.leafCount():t+1,0)}childrenCount(){return this._children.length}onlyChild(){return this._children.get(0)}*eachLeafSeries(){let e=this._children.compactArray();for(let t of e)t instanceof r?yield*t.eachLeafSeries():yield t}serialize(e,t){let n=[];return t(this._children.reduce((i,o,s)=>(o!=null&&(o instanceof r?i.push(o.serialize(e,t)):i.push(e(o,s))),i),n))}async asyncTransform(e,t){return ew(this,e,t)}toJSON(){return this.serialize(rB,nB)}prettyPrint(){return JSON.stringify(this.toJSON(),null," ")}tableSize(){return Math.pow(2,this._options.bits)}async _findChild(e){let t=await this._findPlace(e),n=t.bucket._at(t.pos);if(!(n instanceof r)&&n!=null&&n.key===e)return n}async _findPlace(e){let t=this._options.hash(typeof e=="string"?Y(e):e),n=await t.take(this._options.bits),i=this._children.get(n);return i instanceof r?i._findPlace(t):{bucket:this,pos:n,hash:t,existingChild:i}}async _findNewBucketAndPos(e){let t=await this._findPlace(e);if(t.existingChild!=null&&t.existingChild.key!==e){let n=new r(this._options,t.bucket,t.pos);t.bucket._putObjectAt(t.pos,n);let i=await n._findPlace(t.existingChild.hash);return i.bucket._putAt(i,t.existingChild.key,t.existingChild.value),n._findNewBucketAndPos(t.hash)}return t}_putAt(e,t,n){this._putObjectAt(e.pos,{key:t,value:n,hash:e.hash})}_putObjectAt(e,t){this._children.get(e)==null&&this._popCount++,this._children.set(e,t)}_delAt(e){if(e===-1)throw new Error("Invalid position");this._children.get(e)!=null&&this._popCount--,this._children.unset(e),this._level()}_level(){if(this._parent!=null&&this._popCount<=1)if(this._popCount===1){let e=this._children.find(tB);if(e!=null&&!(e instanceof r)){let t=e.hash;t.untake(this._options.bits);let n={pos:this._posAtParent,hash:t,bucket:this._parent};this._parent._putAt(n,e.key,e.value)}}else this._parent._delAt(this._posAtParent)}_at(e){return this._children.get(e)}};function tB(r){return!!r}function rB(r,e){return r.key}function nB(r){return r}async function ew(r,e,t){let n=[];for(let i of r._children.compactArray())if(i instanceof Ut)await ew(i,e,t);else{let o=await e(i);n.push({bitField:r._children.bitField(),children:o})}return t(n)}var iB=[255,254,252,248,240,224,192,128],oB=[1,3,7,15,31,63,127,255],_l=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=sB(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function sB(r,e,t){let n=aB(e,t);return(r&n)>>>e}function aB(r,e){return iB[r]&oB[Math.min(e+r-1,7)]}function tw(r){function e(t){return t instanceof kl?t:new kl(t,r)}return e}var kl=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?Ee([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new _l(t);this._buffers.push(n),this._availableBits+=n.availableBits()}};function Uo(r){if(r==null||r.hashFn==null)throw new Error("please define an options.hashFn");let e={bits:r.bits??8,hash:tw(r.hashFn)};return new Ut(e)}async function cB(r){return(await ki.encode(r)).slice(0,8).reverse()}var rw=BigInt(34),lB=8,pf=class extends Tr{_bucket;constructor(e,t){super(e,t),this._bucket=Uo({hashFn:cB,bits:t.shardFanoutBits??lB})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=ow(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of iw(this._bucket,e,this,this.options))yield{...t,path:this.path}}},nw=pf;async function*iw(r,e,t,n){let i=r._children,o=(r.tableSize()-1).toString(16).length,s=[],a=0n;for(let f=0;f<i.length;f++){let m=i.get(f);if(m==null)continue;let y=f.toString(16).toUpperCase().padStart(o,"0");if(m instanceof Ut){let g;for await(let w of iw(m,e,null,n))g=w;if(g==null)throw new Error("Could not flush sharded directory, no subshard found");s.push({Name:y,Tsize:Number(g.size),Hash:g.cid}),a+=g.size}else if(uB(m.value)){let g=m.value,w;for await(let A of g.flush(e))w=A,yield w;if(w==null)throw new Error("Did not flush dir");let x=y+m.key;s.push({Name:x,Tsize:Number(w.size),Hash:w.cid}),a+=w.size}else{let g=m.value;if(g.cid==null)continue;let w=y+m.key,x=g.size;s.push({Name:w,Tsize:Number(x),Hash:g.cid}),a+=BigInt(x??0)}}let c=Uint8Array.from(i.bitField().reverse()),u=new W({type:"hamt-sharded-directory",data:c,fanout:BigInt(r.tableSize()),hashType:rw,mtime:t?.mtime,mode:t?.mode}),l={Data:u.marshal(),Links:s},h=ce(_e(l)),p=await cr(h,e,n),d=BigInt(h.byteLength)+a;yield{cid:p,unixfs:u,size:d}}function uB(r){return typeof r.flush=="function"}function ow(r,e,t){let n=r._children,i=(r.tableSize()-1).toString(16).length,o=[];for(let u=0;u<n.length;u++){let l=n.get(u);if(l==null)continue;let h=u.toString(16).toUpperCase().padStart(i,"0");if(l instanceof Ut){let p=ow(l,null,t);o.push({Name:h,Tsize:Number(p),Hash:t.cidVersion===0?js:Ws})}else if(typeof l.value.flush=="function"){let d=l.value.nodeSize();o.push({Name:h+l.key,Tsize:Number(d),Hash:t.cidVersion===0?js:Ws})}else{let p=l.value;if(p.cid==null)continue;let d=h+l.key,f=p.size;o.push({Name:d,Tsize:Number(f),Hash:p.cid})}}let s=Uint8Array.from(n.bitField().reverse()),a=new W({type:"hamt-sharded-directory",data:s,fanout:BigInt(r.tableSize()),hashType:rw,mtime:e?.mtime,mode:e?.mode});return ce(_e({Data:a.marshal(),Links:o})).length}async function mf(r,e,t,n){let i=e;e instanceof _i&&e.estimateNodeSize()>t&&(i=await hB(e,n));let o=i.parent;if(o!=null){if(i!==e){if(r!=null&&(r.parent=i),i.parentKey==null)throw new Error("No parent key found");await o.put(i.parentKey,i)}return mf(i,o,t,n)}return i}async function hB(r,e){let t=new nw({root:r.root,dir:!0,parent:r.parent,parentKey:r.parentKey,path:r.path,dirty:r.dirty,flat:!1,mtime:r.mtime,mode:r.mode},e);for await(let{key:n,child:i}of r.eachChildSeries())await t.put(n,i);return t}var sw=(r="")=>r.split(/(?<!\\)\//).filter(Boolean);async function dB(r,e,t){let n=sw(r.path??""),i=n.length-1,o=e,s="";for(let a=0;a<n.length;a++){let c=n[a];s+=`${s!==""?"/":""}${c}`;let u=a===i;if(o.dirty=!0,o.cid=void 0,o.size=void 0,u)await o.put(c,r),e=await mf(null,o,t.shardSplitThresholdBytes,t);else{let l=await o.get(c);(l==null||!(l instanceof Tr))&&(l=new _i({root:!1,dir:!0,parent:o,parentKey:c,path:s,dirty:!0,flat:!0,mtime:l?.unixfs?.mtime,mode:l?.unixfs?.mode},t)),await o.put(c,l),o=l}}return e}async function*aw(r,e){if(!(r instanceof Tr)){r.unixfs?.isDirectory()===!0&&(yield r);return}yield*r.flush(e)}function cw(r){return async function*(t,n){let i=new _i({root:!0,dir:!0,path:"",dirty:!0,flat:!0},r),o,s=!1;for await(let a of t){if(a==null)continue;let c=`${a.originalPath??""}`.split("/")[0];c!=null&&c!==""&&(o==null?(o=c,s=!0):o!==c&&(s=!1)),i=await dB(a,i,r),(a.unixfs==null||!a.unixfs.isDirectory())&&(yield a)}if(r.wrapWithDirectory||s&&i.childCount()>1)yield*aw(i,n);else for await(let a of i.eachChildSeries())a!=null&&(yield*aw(a.child,n))}}async function*Yn(r,e,t={}){let n;Symbol.asyncIterator in r||Symbol.iterator in r?n=r:n=[r];let i=t.wrapWithDirectory??!1,o=t.shardSplitThresholdBytes??262144,s=t.shardFanoutBits??8,a=t.cidVersion??1,c=t.rawLeaves??!0,u=t.leafType??"file",l=t.fileImportConcurrency??50,h=t.blockWriteConcurrency??10,p=t.reduceSingleLeafToSelf??!0,d=t.chunker??qs(),f=t.chunkValidator??jg(),m=t.dagBuilder??Gg({chunker:d,chunkValidator:f,wrapWithDirectory:i,layout:t.layout??Gs(),bufferImporter:t.bufferImporter??$g({cidVersion:a,rawLeaves:c,leafType:u,onProgress:t.onProgress}),blockWriteConcurrency:h,reduceSingleLeafToSelf:p,cidVersion:a,onProgress:t.onProgress}),y=t.treeBuilder??cw({wrapWithDirectory:i,shardSplitThresholdBytes:o,shardFanoutBits:s,cidVersion:a,onProgress:t.onProgress});for await(let g of y(Ks(m(n,e),l),e))yield{cid:g.cid,path:g.path,unixfs:g.unixfs,size:g.size}}async function Rl(r,e,t={}){let n=await wi(Yn([r],e,t));if(n==null)throw(0,yf.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function lw(r,e,t={}){let n=await wi(Yn([r],e,t));if(n==null)throw(0,yf.default)(new Error("Nothing imported"),"ERR_INVALID_PARAMS");return n}async function uw(r,e,t={}){return Rl({content:r},e,t)}async function hw(r,e,t={}){return Rl({content:r},e,t)}var wB=re(Re(),1),xB=re(Aw(),1);var Qs={cidVersion:1,rawLeaves:!0,layout:Gs({maxChildrenPerNode:1024}),chunker:qs({chunkSize:1048576})};async function*Iw(r,e,t={}){yield*Yn(r,e,{...Qs,...t})}async function Sw(r,e,t={}){let{cid:n}=await uw(r,e,{...Qs,...t});return n}async function _w(r,e,t={}){let{cid:n}=await hw(r,e,{...Qs,...t});return n}async function kw(r,e,t={}){let{cid:n}=await Rl(r,e,{...Qs,...t});return n}async function Rw(r,e,t={}){let{cid:n}=await lw({...r,path:r.path??"-"},e,{...Qs,...t});return n}var Cl=re(Re(),1);function bB(r){return r[Symbol.asyncIterator]!=null}function EB(r){if(bB(r))return(async()=>{let t;for await(let n of r)t=n;return t})();let e;for(let t of r)e=t;return e}var Xn=EB;var Gw=re(Re(),1);var Tw=re(Re(),1);function Lo(r,e,t,n,i,o,s){let a=r,c=i;for(;o.length>0;){let u=o[0];if(u in a){o.shift(),c=`${c}/${u}`;let l=H.asCID(a[u]);if(l!=null)return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}},next:{cid:l,name:u,path:c,toResolve:o}};a=a[u]}else throw(0,Tw.default)(new Error(`No property named ${u} found in node ${t}`),"ERR_NO_PROP")}return{entry:{type:"object",name:n,path:i,cid:t,node:e,depth:s,size:BigInt(e.length),content:async function*(){yield r}}}}var vB=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=gy(c);return Lo(u,c,r,e,t,n,o)},Cw=vB;var BB=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=xy(c);return Lo(u,c,r,e,t,n,o)},Nw=BB;var Uw=re(Re(),1);function AB(r,e,t,n){let i=BigInt(r.length),o=BigInt(e+i);return t>=o||n<e?new Uint8Array(0):(n>=e&&n<o&&(r=r.subarray(0,Number(n-e))),t>=e&&t<o&&(r=r.subarray(Number(t-e))),r)}var Ri=AB;var ea=re(Re(),1),IB=(r,e=0,t=r)=>{let n=BigInt(r),i=BigInt(e??0),o=BigInt(t);if(o!==n&&(o=i+o),o>n&&(o=n),i<0n)throw(0,ea.default)(new Error("Offset must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(i>n)throw(0,ea.default)(new Error("Offset must be less than the file size"),"ERR_INVALID_PARAMS");if(o<0n)throw(0,ea.default)(new Error("Length must be greater than or equal to 0"),"ERR_INVALID_PARAMS");if(o>n)throw(0,ea.default)(new Error("Length must be less than the file size"),"ERR_INVALID_PARAMS");return{start:i,end:o}},Do=IB;var SB=r=>{async function*e(t={}){let{start:n,end:i}=Do(r.length,t.offset,t.length),o=Ri(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:identity",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},_B=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Uw.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=Et(r.multihash.bytes);return{entry:{type:"identity",name:e,path:t,cid:r,content:SB(c.digest),depth:o,size:BigInt(c.digest.length),node:c.digest}}},Lw=_B;var kB=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=w0(c);return Lo(u,c,r,e,t,n,o)},Dw=kB;var Pw=re(Re(),1);var RB=r=>{async function*e(t={}){let{start:n,end:i}=Do(r.length,t.offset,t.length),o=Ri(r,0n,n,i);t.onProgress?.(new P("unixfs:exporter:progress:raw",{bytesRead:BigInt(o.byteLength),totalBytes:i-n,fileSize:BigInt(r.byteLength)})),yield o}return e},TB=async(r,e,t,n,i,o,s,a)=>{if(n.length>0)throw(0,Pw.default)(new Error(`No link named ${t} found in raw node ${r}`),"ERR_NOT_FOUND");let c=await s.get(r,a);return{entry:{type:"raw",name:e,path:t,cid:r,content:RB(c),depth:o,size:BigInt(c.length),node:c}}},Ow=TB;var ra=re(Re(),1);var ta=re(Re(),1);var CB=async function(r){return(await ki.encode(r)).slice(0,8).reverse()},NB=async(r,e,t)=>{let n=(e.tableSize()-1).toString(16).length;await Promise.all(r.map(async i=>{if(i.Name==null)throw new Error("Unexpected Link without a Name");if(i.Name.length===n){let o=parseInt(i.Name,16);e._putObjectAt(o,new Ut({hash:t._options.hash,bits:t._options.bits},e,o));return}await t.put(i.Name.substring(2),!0)}))},Fw=(r,e)=>r.toString(16).toUpperCase().padStart(e,"0").substring(0,e),UB=r=>{let e=r.bucket,t=[];for(;e._parent!=null;)t.push(e),e=e._parent;return t.push(e),t.reverse()},Vw=async(r,e,t,n,i)=>{if(n==null){if(r.Data==null)throw(0,ta.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let h;try{h=W.unmarshal(r.Data)}catch(d){throw(0,ta.default)(d,"ERR_NOT_UNIXFS")}if(h.type!=="hamt-sharded-directory")throw(0,ta.default)(new Error("not a HAMT"),"ERR_NOT_UNIXFS");if(h.fanout==null)throw(0,ta.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let p=Uo({hashFn:CB,bits:Math.log2(Number(h.fanout))});n={rootBucket:p,hamtDepth:1,lastBucket:p}}let o=(n.lastBucket.tableSize()-1).toString(16).length;await NB(r.Links,n.lastBucket,n.rootBucket);let s=await n.rootBucket._findNewBucketAndPos(e),a=Fw(s.pos,o),c=UB(s);c.length>n.hamtDepth&&(n.lastBucket=c[n.hamtDepth],a=Fw(n.lastBucket._posAtParent,o));let u=r.Links.find(h=>{if(h.Name==null)return!1;let p=h.Name.substring(0,o),d=h.Name.substring(o);return!(p!==a||d!==""&&d!==e)});if(u==null)return;if(u.Name!=null&&u.Name.substring(o)===e)return u.Hash;n.hamtDepth++;let l=await t.get(u.Hash,i);return r=ve(l),Vw(r,e,t,n,i)},Mw=Vw;var LB=(r,e,t,n,i,o,s)=>{async function*a(c={}){let u=c.offset??0,l=c.length??e.Links.length,h=e.Links.slice(u,l);c.onProgress?.(new P("unixfs:exporter:walk:directory",{cid:r})),yield*Wt(h,p=>jt(p,d=>async()=>{let f=d.Name??"",m=`${n}/${f}`;return(await i(d.Hash,f,m,[],o+1,s,c)).entry}),p=>vi(p,{ordered:!0,concurrency:c.blockReadConcurrency}),p=>wt(p,d=>d!=null))}return a},Hw=LB;var Ti=re(Re(),1);async function $w(r,e,t,n,i,o,s){if(e instanceof Uint8Array){let u=Ri(e,n,i,o);t.push(u);return}if(e.Data==null)throw(0,Ti.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=W.unmarshal(e.Data)}catch(u){throw(0,Ti.default)(u,"ERR_NOT_UNIXFS")}if(a.data!=null){let u=a.data,l=Ri(u,n,i,o);t.push(l),n+=BigInt(l.byteLength)}let c=[];if(e.Links.length!==a.blockSizes.length)throw(0,Ti.default)(new Error("Inconsistent block sizes and dag links"),"ERR_NOT_UNIXFS");for(let u=0;u<e.Links.length;u++){let l=e.Links[u],h=n,p=h+a.blockSizes[u];if((i>=h&&i<p||o>=h&&o<=p||i<h&&o>p)&&c.push({link:l,blockStart:n}),n=p,n>o)break}await Wt(c,u=>jt(u,l=>async()=>{let h=await r.get(l.link.Hash,s);return{...l,block:h}}),u=>vi(u,{ordered:!0,concurrency:s.blockReadConcurrency}),async u=>{for await(let{link:l,block:h,blockStart:p}of u){let d;switch(l.Hash.code){case Te:d=ve(h);break;case Ne:d=h;break;default:t.end((0,Ti.default)(new Error(`Unsupported codec: ${l.Hash.code}`),"ERR_NOT_UNIXFS"));return}let f=new yt({concurrency:1});f.on("error",m=>{t.end(m)}),f.add(async()=>{s.onProgress?.(new P("unixfs:exporter:walk:file",{cid:l.Hash})),await $w(r,d,t,p,i,o,s)}),await f.onIdle()}}),n>=o&&t.end()}var DB=(r,e,t,n,i,o,s)=>{async function*a(c={}){let u=t.fileSize();if(u===void 0)throw new Error("File was a directory");let{start:l,end:h}=Do(u,c.offset,c.length);if(h===0n)return;let p=0n,d=h-l,f=Vt();c.onProgress?.(new P("unixfs:exporter:walk:file",{cid:r})),$w(s,e,f,0n,l,h,c).catch(m=>{f.end(m)});for await(let m of f)if(m!=null){if(p+=BigInt(m.byteLength),p>d)throw f.end(),(0,Ti.default)(new Error("Read too many bytes - the file size reported by the UnixFS data in the root node may be incorrect"),"ERR_OVER_READ");p===d&&f.end(),c.onProgress?.(new P("unixfs:exporter:progress:unixfs:file",{bytesRead:p,totalBytes:d,fileSize:u})),yield m}if(p<d)throw(0,Ti.default)(new Error("Traversed entire DAG but did not read enough bytes"),"ERR_UNDER_READ")}return a},Ef=DB;var Tl=re(Re(),1);var PB=(r,e,t,n,i,o,s)=>{function a(c={}){return c.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:r})),zw(e,n,i,o,s,c)}return a};async function*zw(r,e,t,n,i,o){let s=r.Links;if(r.Data==null)throw(0,Tl.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");let a;try{a=W.unmarshal(r.Data)}catch(l){throw(0,Tl.default)(l,"ERR_NOT_UNIXFS")}if(a.fanout==null)throw(0,Tl.default)(new Error("missing fanout"),"ERR_NOT_UNIXFS");let c=(a.fanout-1n).toString(16).length,u=Wt(s,l=>jt(l,h=>async()=>{let p=h.Name!=null?h.Name.substring(c):null;if(p!=null&&p!==""){let d=await t(h.Hash,p,`${e}/${p}`,[],n+1,i,o);return{entries:d.entry==null?[]:[d.entry]}}else{let d=await i.get(h.Hash,o);return r=ve(d),o.onProgress?.(new P("unixfs:exporter:walk:hamt-sharded-directory",{cid:h.Hash})),{entries:zw(r,e,t,n,i,o)}}}),l=>vi(l,{ordered:!0,concurrency:o.blockReadConcurrency}));for await(let{entries:l}of u)yield*l}var Kw=PB;var OB=(r,e)=>r.Links.find(n=>n.Name===e)?.Hash,FB={raw:Ef,file:Ef,directory:Hw,"hamt-sharded-directory":Kw,metadata:(r,e,t,n,i,o,s)=>()=>[],symlink:(r,e,t,n,i,o,s)=>()=>[]},VB=async(r,e,t,n,i,o,s,a)=>{let c=await s.get(r,a),u=ve(c),l,h;if(e==null&&(e=r.toString()),u.Data==null)throw(0,ra.default)(new Error("no data in PBNode"),"ERR_NOT_UNIXFS");try{l=W.unmarshal(u.Data)}catch(d){throw(0,ra.default)(d,"ERR_NOT_UNIXFS")}if(t==null&&(t=e),n.length>0){let d;if(l?.type==="hamt-sharded-directory"?d=await Mw(u,n[0],s):d=OB(u,n[0]),d==null)throw(0,ra.default)(new Error("file does not exist"),"ERR_NOT_FOUND");let f=n.shift(),m=`${t}/${f}`;h={cid:d,toResolve:n,name:f??"",path:m}}let p=FB[l.type](r,u,l,t,i,o,s);if(p==null)throw(0,ra.default)(new Error("could not find content exporter"),"ERR_NOT_FOUND");return l.isDirectory()?{entry:{type:"directory",name:e,path:t,cid:r,content:p,unixfs:l,depth:o,node:u,size:l.fileSize()},next:h}:{entry:{type:"file",name:e,path:t,cid:r,content:p,unixfs:l,depth:o,node:u,size:l.fileSize()},next:h}},qw=VB;var MB={[Te]:qw,[Ne]:Ow,[Bo]:Cw,[Ao]:Nw,[et.code]:Lw,[$i]:Dw},jw=async(r,e,t,n,i,o,s)=>{let a=MB[r.code];if(a==null)throw(0,Gw.default)(new Error(`No resolver for code ${r.code}`),"ERR_NO_RESOLVER");return a(r,e,t,n,jw,i,o,s)},Ww=jw;var HB=(r="")=>(r.trim().match(/([^\\^/]|\\\/)+/g)??[]).filter(Boolean),$B=r=>{if(r instanceof Uint8Array)return{cid:H.decode(r),toResolve:[]};let e=H.asCID(r);if(e!=null)return{cid:e,toResolve:[]};if(typeof r=="string"){r.indexOf("/ipfs/")===0&&(r=r.substring(6));let t=HB(r);return{cid:H.parse(t[0]),toResolve:t.slice(1)}}throw(0,Cl.default)(new Error(`Unknown path type ${r}`),"ERR_BAD_PATH")};async function*vf(r,e,t={}){let{cid:n,toResolve:i}=$B(r),o=n.toString(),s=o,a=i.length;for(;;){let c=await Ww(n,o,s,i,a,e,t);if(c.entry==null&&c.next==null)throw(0,Cl.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");if(c.entry!=null&&(yield c.entry),c.next==null)return;i=c.next.toResolve,n=c.next.cid,o=c.next.name,s=c.next.path}}async function Xe(r,e,t={}){let n=await Xn(vf(r,e,t));if(n==null)throw(0,Cl.default)(new Error(`Could not resolve ${r}`),"ERR_NOT_FOUND");return n}async function*Nl(r,e,t={}){let n=await Xe(r,e,t);if(n==null)return;if(yield n,n.type==="directory")for await(let o of i(n,t))yield o;async function*i(o,s){for await(let a of o.content(s))yield a,!(a instanceof Uint8Array)&&a.type==="directory"&&(yield*i(a,s))}}var n2=re(r2(),1),nt=n2.default;var lr=class extends Error{name;code;constructor(e,t,n){super(e),this.name=t,this.code=n}},Cr=class extends lr{constructor(e="not a Unixfs node"){super(e,"NotUnixFSError","ERR_NOT_UNIXFS")}},ht=class extends lr{constructor(e="invalid PBNode"){super(e,"InvalidPBNodeError","ERR_INVALID_PBNODE")}},wn=class extends lr{constructor(e="unknown error"){super(e,"InvalidPBNodeError","ERR_UNKNOWN_ERROR")}},na=class extends lr{constructor(e="path already exists"){super(e,"AlreadyExistsError","ERR_ALREADY_EXISTS")}},Dl=class extends lr{constructor(e="path does not exist"){super(e,"DoesNotExistError","ERR_DOES_NOT_EXIST")}},Fo=class extends lr{constructor(e="no content"){super(e,"NoContentError","ERR_NO_CONTENT")}},Pl=class extends lr{constructor(e="not a file"){super(e,"NotAFileError","ERR_NOT_A_FILE")}},Zn=class extends lr{constructor(e="not a directory"){super(e,"NotADirectoryError","ERR_NOT_A_DIRECTORY")}},it=class extends lr{constructor(e="invalid parameters"){super(e,"InvalidParametersError","ERR_INVALID_PARAMETERS")}};var _f=re(Sl(),1);function Fl(r){function e(t){return t instanceof Ol?t:new Ol(t,r)}return e}var Ol=class{_value;_hashFn;_depth;_availableBits;_currentBufferIndex;_buffers;constructor(e,t){if(!(e instanceof Uint8Array))throw new Error("can only hash Uint8Arrays");this._value=e,this._hashFn=t,this._depth=-1,this._availableBits=0,this._currentBufferIndex=0,this._buffers=[]}async take(e){let t=e;for(;this._availableBits<t;)await this._produceMoreBits();let n=0;for(;t>0;){let i=this._buffers[this._currentBufferIndex],o=Math.min(i.availableBits(),t),s=i.take(o);n=(n<<o)+s,t-=o,this._availableBits-=o,i.availableBits()===0&&this._currentBufferIndex++}return n}untake(e){let t=e;for(;t>0;){let n=this._buffers[this._currentBufferIndex],i=Math.min(n.totalBits()-n.availableBits(),t);n.untake(i),t-=i,this._availableBits+=i,this._currentBufferIndex>0&&n.totalBits()===n.availableBits()&&(this._depth--,this._currentBufferIndex--)}}async _produceMoreBits(){this._depth++;let e=this._depth>0?Ee([this._value,Uint8Array.from([this._depth])]):this._value,t=await this._hashFn(e),n=new Af(t);this._buffers.push(n),this._availableBits+=n.availableBits()}},WB=[255,254,252,248,240,224,192,128],YB=[1,3,7,15,31,63,127,255],Af=class{_value;_currentBytePos;_currentBitPos;constructor(e){this._value=e,this._currentBytePos=e.length-1,this._currentBitPos=7}availableBits(){return this._currentBitPos+1+this._currentBytePos*8}totalBits(){return this._value.length*8}take(e){let t=e,n=0;for(;t>0&&this._haveBits();){let i=this._value[this._currentBytePos],o=this._currentBitPos+1,s=Math.min(o,t),a=XB(i,o-s,s);n=(n<<s)+a,t-=s,this._currentBitPos-=s,this._currentBitPos<0&&(this._currentBitPos=7,this._currentBytePos--)}return n}untake(e){for(this._currentBitPos+=e;this._currentBitPos>7;)this._currentBitPos-=8,this._currentBytePos+=1}_haveBits(){return this._currentBytePos>=0}};function XB(r,e,t){let n=ZB(e,t);return(r&n)>>>e}function ZB(r,e){return WB[r]&YB[Math.min(e+r-1,7)]}var ia=BigInt(ki.code),Ci=8;async function Vo(r){return(await ki.encode(r)).subarray(0,8).reverse()}var s2=re(Sl(),1);var ur=async(r,e,t)=>{t.codec==null&&(t.codec=De);let n=await he.digest(r),i=H.create(t.cidVersion,t.codec.code,n);return await e.put(i,r,{...t,signal:t.signal}),i};var If=class{options;root;dir;path;dirty;flat;parent;parentKey;unixfs;mode;mtime;cid;size;nodeSize;constructor(e,t){this.options=t??{},this.root=e.root,this.dir=e.dir,this.path=e.path,this.dirty=e.dirty,this.flat=e.flat,this.parent=e.parent,this.parentKey=e.parentKey,this.unixfs=e.unixfs,this.mode=e.mode,this.mtime=e.mtime}},Vl=class extends If{_bucket;constructor(e,t){super(e,t),this._bucket=Uo({hashFn:Vo,bits:8})}async put(e,t){this.cid=void 0,this.size=void 0,this.nodeSize=void 0,await this._bucket.put(e,t)}async get(e){return this._bucket.get(e)}childCount(){return this._bucket.leafCount()}directChildrenCount(){return this._bucket.childrenCount()}onlyChild(){return this._bucket.onlyChild()}async*eachChildSeries(){for await(let{key:e,value:t}of this._bucket.eachLeafSeries())yield{key:e,child:t}}estimateNodeSize(){return this.nodeSize!==void 0?this.nodeSize:(this.nodeSize=o2(this._bucket,this,this.options),this.nodeSize)}async*flush(e){for await(let t of i2(this._bucket,e,this,this.options))yield{...t,path:this.path}}};async function*i2(r,e,t,n){let i=r._children,o=[],s=0n;for(let d=0;d<i.length;d++){let f=i.get(d);if(f==null)continue;let m=d.toString(16).toUpperCase().padStart(2,"0");if(f instanceof Ut){let y;for await(let g of i2(f,e,null,n))y=g;if(y==null)throw new Error("Could not flush sharded directory, no subshard found");o.push({Name:m,Tsize:Number(y.size),Hash:y.cid}),s+=y.size}else if(JB(f.value)){let y=f.value,g;for await(let x of y.flush(e))g=x,yield g;if(g==null)throw new Error("Did not flush dir");let w=m+f.key;o.push({Name:w,Tsize:Number(g.size),Hash:g.cid}),s+=g.size}else{let y=f.value;if(y.cid==null)continue;let g=m+f.key,w=y.size;o.push({Name:g,Tsize:Number(w),Hash:y.cid}),s+=BigInt(w??0)}}let a=Uint8Array.from(i.bitField().reverse()),c=new W({type:"hamt-sharded-directory",data:a,fanout:BigInt(r.tableSize()),hashType:ia,mtime:t?.mtime,mode:t?.mode}),u={Data:c.marshal(),Links:o},l=ce(_e(u)),h=await ur(l,e,n),p=BigInt(l.byteLength)+s;yield{cid:h,unixfs:c,size:p}}function JB(r){return typeof r.flush=="function"}function o2(r,e,t){let n=r._children,i=[];for(let c=0;c<n.length;c++){let u=n.get(c);if(u==null)continue;let l=c.toString(16).toUpperCase().padStart(2,"0");if(u instanceof Ut){let h=o2(u,null,t);i.push({Name:l,Tsize:Number(h),Hash:t.cidVersion===0?Ml:Hl})}else if(typeof u.value.flush=="function"){let p=u.value.nodeSize();i.push({Name:l+u.key,Tsize:Number(p),Hash:t.cidVersion===0?Ml:Hl})}else{let h=u.value;if(h.cid==null)continue;let p=l+u.key,d=h.size;i.push({Name:p,Tsize:Number(d),Hash:h.cid})}}let o=Uint8Array.from(n.bitField().reverse()),s=new W({type:"hamt-sharded-directory",data:o,fanout:BigInt(r.tableSize()),hashType:ia,mtime:e?.mtime,mode:e?.mode});return ce(_e({Data:s.marshal(),Links:i})).length}var Ml=H.parse("QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn"),Hl=H.parse("zdj7WbTaiJT1fgatdet9Ei9iDB5hdCxkbVyhyh8YTUnXMiwYi");var Sf=oe("helia:unixfs:commands:utils:hamt-utils"),$l=r=>r.toString(16).toUpperCase().padStart(2,"0").substring(0,2),a2=async(r,e,t)=>{let n=new Vl({root:!0,dir:!0,parent:void 0,parentKey:void 0,path:"",dirty:!0,flat:!1,mtime:t.mtime,mode:t.mode},t);for(let o=0;o<e.length;o++)await n._bucket.put(e[o].name,{size:e[o].size,cid:e[o].cid});let i=await Xn(n.flush(r));if(i==null)throw new Error("Flushing shard yielded no result");return i},zl=async(r,e,t)=>{let n=W.unmarshal(r[0].node.Data??new Uint8Array(0)),i=BigInt(Math.pow(2,Ci));r.reverse();let o,s;for(let a=0;a<r.length;a++){let c=a===r.length-1,u=r[a],l=Uint8Array.from(u.children.bitField().reverse()),h=new W({type:"hamt-sharded-directory",data:l,fanout:i,hashType:ia});c&&(h.mtime=n.mtime,h.mode=n.mode),s={Data:h.marshal(),Links:u.node.Links};let p=ce(_e(s));if(o=await ur(p,e,t),!c){let d=r[a+1];if(d==null)throw new Error("Was not operating on shard root but also had no parent?");Sf("updating link in parent sub-shard with prefix %s",d.prefix),d.node.Links=d.node.Links.filter(f=>f.Name!==d.prefix),d.node.Links.push({Name:d.prefix,Hash:o,Tsize:u.node.Links.reduce((f,m)=>f+(m.Tsize??0),p.byteLength)})}}if(o==null||s==null)throw new Error("Noting persisted");return{cid:o,node:s}},Kl=async(r,e,t,n)=>{let o=Fl(Vo)(Y(e)),s=[];for(;;){let a=await t.get(r,n),c=ve(a),u=new s2.default,l=await o.take(Ci),h=$l(l);s.push({prefix:h,children:u,node:c});let p;for(let f of c.Links){let m=f.Name??"";if(m.length<2)throw new Error("Invalid HAMT - link name was too short");let y=parseInt(m.substring(0,2),16);u.set(y,!0),m.startsWith(h)&&(p=f)}if(p==null){Sf("no link found with prefix %s for %s",h,e);break}let d=p.Name??"";if(d.length<2)throw new Error("Invalid HAMT - link name was too short");if(d.length===2){r=p.Hash,Sf("descend into sub-shard with prefix %s",d);continue}break}return{path:s,hash:o}};async function ql(r,e,t,n){if(r.Data==null)throw new Error("DagPB node had no data");let i=W.unmarshal(r.Data),o;if(i.type==="directory")o=QB(r);else if(i.type==="hamt-sharded-directory")o=await c2(r,0,t,e,n);else throw new Error("Can only estimate the size of directories or shards");return o>t}function QB(r){let e=0;for(let t of r.Links)e+=(t.Name??"").length,e+=t.Hash.version===1?Hl.bytes.byteLength:Ml.bytes.byteLength;return e}async function c2(r,e,t,n,i){if(e>t)return t;if(r.Data==null||!W.unmarshal(r.Data).isDirectory())return e;for(let s of r.Links){let a=s.Name??"";if(a=a.substring(2),e+=a.length,e+=s.Hash.bytes.byteLength,s.Hash.code===Te){let c=await n.get(s.Hash,i),u=ve(c);e+=await c2(u,e,t,n,i)}}return e}var Nr=oe("helia:unixfs:components:utils:add-link");async function Mo(r,e,t,n){if(r.node.Data==null)throw new it("Invalid parent passed to addLink");if(W.unmarshal(r.node.Data).type==="hamt-sharded-directory")return Nr("adding link to sharded directory"),rA(r,e,t,n);Nr(`adding ${e.Name} (${e.Hash}) to regular directory`);let o=await tA(r,e,t,n);if(await ql(o.node,t,n.shardSplitThresholdBytes,n)){Nr("converting directory to sharded directory");let s=await eA(o,t);o.cid=s.cid,o.node=ve(await t.get(s.cid,n))}return o}var eA=async(r,e)=>{if(r.node.Data==null)throw new it("Invalid parent passed to convertToShardedDirectory");let t=W.unmarshal(r.node.Data),n=await a2(e,r.node.Links.map(i=>({name:i.Name??"",size:BigInt(i.Tsize??0),cid:i.Hash})),{mode:t.mode,mtime:t.mtime,cidVersion:r.cid.version});return Nr(`converted directory to sharded directory ${n.cid}`),n},tA=async(r,e,t,n)=>{let i=r.node.Links.filter(l=>{let h=l.Name===e.Name;if(h&&!n.allowOverwriting)throw new na;return!h});if(i.push(e),r.node.Data==null)throw new ht("Parent node with no data passed to addToDirectory");let o=W.unmarshal(r.node.Data),s;if(o.mtime!=null){let l=Date.now(),h=Math.floor(l/1e3);o.mtime={secs:BigInt(h),nsecs:(l-h*1e3)*1e3},s=o.marshal()}else s=r.node.Data;r.node=_e({Data:s,Links:i});let a=ce(r.node),c=await he.digest(a),u=H.create(r.cid.version,Te,c);return await t.put(u,a),{node:r.node,cid:u}},rA=async(r,e,t,n)=>{let{path:i,hash:o}=await Kl(r.cid,e.Name,t,n),s=i[i.length-1];if(s==null)throw new Error("Invalid HAMT, could not generate path");let a=s.prefix,c=parseInt(a,16);Nr("next prefix for %s is %s",e.Name,a);let u=`${a}${e.Name}`,l=s.node.Links.find(h=>(h.Name??"").startsWith(a));if(l!=null)if(Nr("link %s was present in shard",u),l.Name===u){if(!n.allowOverwriting)throw new na;Nr("overwriting %s in subshard",e.Name),s.node.Links=s.node.Links.filter(h=>h.Name!==u),s.node.Links.push({Name:u,Hash:e.Hash,Tsize:e.Tsize})}else{if(l.Name?.length===2)throw new Error("Existing link was subshard?!");{Nr("prefix %s already exists, creating new subshard",a);let h=s.node.Links.findIndex(y=>y.Name?.startsWith(a)),p=s.node.Links.splice(h,1)[0],d=(p.Name??"").substring(2),m=Fl(Vo)(Y(d));for(let y=0;y<i.length;y++)await m.take(Ci);for(;;){let y=await m.take(Ci),g=$l(y);p.Name=`${g}${d}`;let w=await o.take(Ci),x=$l(w);if(g===x){let I=new _f.default;I.set(w,!0),i.push({prefix:x,children:I,node:{Links:[]}});continue}let A=new _f.default;A.set(w,!0),A.set(y,!0),i.push({prefix:a,children:A,node:{Links:[p,{Name:`${x}${e.Name}`,Hash:e.Hash,Tsize:e.Tsize}]}});break}}}else Nr("link %s was not present in sub-shard",u),e.Name=u,s.node.Links.push(e),s.children.set(c,!0),Nr("adding %s to existing sub-shard",u);return zl(i,t,n)};async function Jn(r,e,t={}){let n=await Xe(r,e,t);if(n.type!=="directory")throw new Zn(`${r.toString()} was not a UnixFS directory`);return{cid:r,node:n.node}}async function Ho(r,e,t,n){let i=await Xe(r,t,n);if(i.type!=="directory"&&i.type!=="file"&&i.type!=="raw")throw new Cr(`${r.toString()} was not a UnixFS node`);return{Name:e,Tsize:i.node instanceof Uint8Array?i.node.byteLength:nA(i.node),Hash:r}}function nA(r){let e=r.Links.reduce((t,n)=>t+(n.Tsize??0),0);return ce(r).byteLength+e}var kf=oe("helia:unixfs:components:utils:resolve");async function Ur(r,e,t,n){if(e==null||e==="")return{cid:r};kf('resolve "%s" under %c',e,r);let i=e.split("/").filter(Boolean),o=[{name:"",cid:r,size:0n}];for(let s=0;s<i.length;s++){let a=i[s],c=await Xe(r,t,n);if(kf('resolving "%s"',a,c),c.type==="file"){if(s<i.length-1)throw new it("Path was invalid");r=c.cid}else if(c.type==="directory"){let u;for await(let l of c.content())if(l.name===a){u=l.cid;break}if(u==null)throw new Dl("Could not find path in directory");r=u,o.push({name:a,cid:r,size:c.size})}else throw new it("Could not resolve path")}return kf("resolved %s to %c",e,r),{cid:r,path:e,segments:o}}async function $o(r,e,t,n){if(e.segments==null||e.segments.length===0)return r;let i=e.segments.pop();if(i==null)throw new Error("Insufficient segments");i.cid=r,e.segments.reverse();for(let o of e.segments){let[s,a]=await Promise.all([Jn(o.cid,t,n),Ho(i.cid,i.name,t,n)]);r=(await Mo(s,a,t,{...n,allowOverwriting:!0,cidVersion:r.version})).cid,o.cid=r,i=o}return r}var iA=nt.bind({ignoreUndefined:!0}),oA={};async function*l2(r,e,t={}){let n=iA(oA,t),i=await Ur(r,n.path,e,n),o=await Xe(i.cid,e,n);if(o.type!=="file"&&o.type!=="raw")throw new Pl;if(o.content==null)throw new Fo;yield*o.content(n)}var sA=nt.bind({ignoreUndefined:!0}),aA=oe("helia:unixfs:chmod"),cA={recursive:!1,shardSplitThresholdBytes:262144};async function u2(r,e,t,n={}){let i=sA(cA,n),o=await Ur(r,i.path,t,n);if(aA("chmod %c %d",o.cid,e),i.recursive){let p=await Wt(async function*(){for await(let d of Nl(o.cid,t,n)){let f,m=[];if(d.type==="raw")f=new W({type:"file",data:d.node});else if(d.type==="file"||d.type==="directory")f=d.unixfs,m=d.node.Links;else throw new Cr;f.mode=e;let y={Data:f.marshal(),Links:m};yield{path:d.path,content:y}}},d=>Yn(d,t,{...i,dagBuilder:async function*(f,m){for await(let y of f)yield async function(){let g=y.content,w=ce(g),x=await ur(w,m,{...i,cidVersion:r.version});if(g.Data==null)throw new ht(`${x} had no data`);let A=W.unmarshal(g.Data);return{cid:x,size:BigInt(w.length),path:y.path,unixfs:A}}}}),async d=>Xn(d));if(p==null)throw new wn(`Could not chmod ${o.cid.toString()}`);return $o(p.cid,o,t,i)}let s=await t.get(o.cid,n),a,c=[];if(o.cid.code===Ne)a=new W({type:"file",data:s});else{let p=ve(s);if(p.Data==null)throw new ht(`${o.cid.toString()} had no data`);c=p.Links,a=W.unmarshal(p.Data)}a.mode=e;let u=ce({Data:a.marshal(),Links:c}),l=await he.digest(u),h=H.create(o.cid.version,Te,l);return await t.put(h,u),$o(h,o,t,i)}var lA=nt.bind({ignoreUndefined:!0}),uA=oe("helia:unixfs:cp"),hA={force:!1,shardSplitThresholdBytes:262144};async function h2(r,e,t,n,i={}){let o=lA(hA,i);if(t.includes("/"))throw new it("Name must not have slashes");let[s,a]=await Promise.all([Jn(e,n,o),Ho(r,t,n,o)]);return uA('Adding %c as "%s" to %c',r,t,e),(await Mo(s,a,n,{allowOverwriting:o.force,cidVersion:e.version,...o})).cid}var dA=nt.bind({ignoreUndefined:!0}),fA={};async function*d2(r,e,t={}){let n=dA(fA,t),i=await Ur(r,n.path,e,n),o=await Xe(i.cid,e);if(o.type==="file"||o.type==="raw"){yield o;return}if(o.content==null)throw new Fo;if(o.type!=="directory")throw new Zn;yield*o.content({offset:t.offset,length:t.length})}var pA=nt.bind({ignoreUndefined:!0}),f2=oe("helia:unixfs:mkdir"),mA={cidVersion:1,force:!1,shardSplitThresholdBytes:262144};async function p2(r,e,t,n={}){let i=pA(mA,n);if(e.includes("/"))throw new it("Path must not have slashes");if((await Xe(r,t,n)).type!=="directory")throw new Zn(`${r.toString()} was not a UnixFS directory`);f2("creating %s",e);let a={Data:new W({type:"directory",mode:i.mode,mtime:i.mtime}).marshal(),Links:[]},c=ce(a),u=await he.digest(c),l=H.create(i.cidVersion,Te,u);await t.put(l,c);let[h,p]=await Promise.all([Jn(r,t,i),Ho(l,e,t,i)]);return f2("adding empty dir called %s to %c",e,r),(await Mo(h,p,t,{...i,allowOverwriting:i.force})).cid}var Gl=oe("helia:unixfs:utils:remove-link");async function m2(r,e,t,n){if(r.node.Data==null)throw new ht("Parent node had no data");if(W.unmarshal(r.node.Data).type==="hamt-sharded-directory"){Gl(`removing ${e} from sharded directory`);let o=await gA(r,e,t,n);return await ql(o.node,t,n.shardSplitThresholdBytes,n)?o:(Gl("converting shard to flat directory %c",r.cid),wA(o,t,n))}return Gl(`removing link ${e} regular directory`),yA(r,e,t,n)}var yA=async(r,e,t,n)=>{r.node.Links=r.node.Links.filter(s=>s.Name!==e);let i=ce(r.node),o=await ur(i,t,{...n,cidVersion:r.cid.version});return Gl(`Updated regular directory ${o}`),{node:r.node,cid:o}},gA=async(r,e,t,n)=>{let{path:i}=await Kl(r.cid,e,t,n),o=i[i.length-1];if(o==null)throw new Error("Invalid HAMT, could not generate path");let s=o.node.Links.filter(u=>(u.Name??"").substring(2)===e).map(u=>u.Name).pop();if(s==null)throw new Error("File not found");let a=s.substring(0,2),c=parseInt(a,16);if(o.node.Links=o.node.Links.filter(u=>u.Name!==s),o.children.unset(c),o.node.Links.length===1)for(;i.length!==1;){let u=i[i.length-1];if(u==null||u.node.Links.length>1)break;i.pop();let l=i[i.length-1];if(l==null)break;let h=u.node.Links[0];l.node.Links=l.node.Links.filter(p=>!(p.Name??"").startsWith(l.prefix)),l.node.Links.push({Hash:h.Hash,Name:`${l.prefix}${(h.Name??"").substring(2)}`,Tsize:h.Tsize})}return zl(i,t,n)},wA=async(r,e,t)=>{if(r.node.Data==null)throw new it("Invalid parent passed to convertToFlatDirectory");let n={Links:[]},i=await Xe(r.cid,e);if(i.type!=="directory")throw new Error("Unexpected node type");for await(let c of i.content()){let u=0;c.node instanceof Uint8Array?u=c.node.byteLength:u=ce(c.node).length,n.Links.push({Hash:c.cid,Name:c.name,Tsize:u})}let o=W.unmarshal(r.node.Data);n.Data=new W({type:"directory",mode:o.mode,mtime:o.mtime}).marshal();let s=ce(_e(n));return{cid:await ur(s,e,{codec:De,cidVersion:r.cid.version,signal:t.signal}),node:n}};var xA=nt.bind({ignoreUndefined:!0}),bA=oe("helia:unixfs:rm"),EA={shardSplitThresholdBytes:262144};async function y2(r,e,t,n={}){let i=xA(EA,n);if(e.includes("/"))throw new it("Name must not have slashes");let o=await Jn(r,t,i);return bA("Removing %s from %c",e,r),(await m2(o,e,t,{...i,cidVersion:r.version})).cid}var vA=nt.bind({ignoreUndefined:!0}),BA=oe("helia:unixfs:stat"),AA={};async function g2(r,e,t={}){let n=vA(AA,t),i=await Ur(r,t.path,e,n);BA("stat %c",i.cid);let o=await Xe(i.cid,e,n);if(o.type!=="file"&&o.type!=="directory"&&o.type!=="raw")throw new Cr;let s=0n,a=0n,c=0n,u=0n,l=0,h,p,d=o.type,f;if(o.type==="raw"&&(s=BigInt(o.node.byteLength),a=BigInt(o.node.byteLength),c=BigInt(o.node.byteLength),u=BigInt(o.node.byteLength),l=1),o.type==="directory"&&(s=0n,a=BigInt(o.unixfs.marshal().byteLength),c=0n,u=a,l=1,h=o.unixfs.mode,p=o.unixfs.mtime,f=o.unixfs),o.type==="file"){let m=await w2(i.cid,e,n);s=o.unixfs.fileSize(),a=BigInt((o.node.Data?.byteLength??0)+o.node.Links.reduce((y,g)=>y+(g.Tsize??0),0)),c=BigInt(m.localFileSize),u=BigInt(m.localDagSize),l=m.blocks,h=o.unixfs.mode,p=o.unixfs.mtime,f=o.unixfs}return{cid:i.cid,mode:h,mtime:p,fileSize:s,dagSize:a,localFileSize:c,localDagSize:u,blocks:l,type:d,unixfs:f}}async function w2(r,e,t){let n={localFileSize:0,localDagSize:0,blocks:0};if(await e.has(r,t)){let i=await e.get(r,t);if(n.blocks++,n.localDagSize+=i.byteLength,r.code===Ne)n.localFileSize+=i.byteLength;else if(r.code===Te){let o=ve(i);if(o.Links.length>0)for(let s of o.Links){let a=await w2(s.Hash,e,t);n.localFileSize+=a.localFileSize,n.localDagSize+=a.localDagSize,n.blocks+=a.blocks}else{if(o.Data==null)throw new ht(`PBNode ${r.toString()} had no data`);let s=W.unmarshal(o.Data);if(s.data==null)throw new ht(`UnixFS node ${r.toString()} had no data`);n.localFileSize+=s.data.byteLength??0}}else throw new wn(`${r.toString()} was neither DAG_PB nor RAW`)}return n}var IA=nt.bind({ignoreUndefined:!0}),SA=oe("helia:unixfs:touch"),_A={recursive:!1,shardSplitThresholdBytes:262144};async function x2(r,e,t={}){let n=IA(_A,t),i=await Ur(r,n.path,e,n),o=n.mtime??{secs:BigInt(Math.round(Date.now()/1e3)),nsecs:0};if(SA("touch %c %o",i.cid,o),n.recursive){let p=await Wt(async function*(){for await(let d of Nl(i.cid,e)){let f,m;if(d.type==="raw")f=new W({data:d.node}),m=[];else if(d.type==="file"||d.type==="directory")f=d.unixfs,m=d.node.Links;else throw new Cr;f.mtime=o;let y={Data:f.marshal(),Links:m};yield{path:d.path,content:y}}},d=>Yn(d,e,{...n,dagBuilder:async function*(f,m){for await(let y of f)yield async function(){let g=y.content,w=ce(g),x=await ur(w,m,{...n,cidVersion:r.version});if(g.Data==null)throw new ht(`${x} had no data`);let A=W.unmarshal(g.Data);return{cid:x,size:BigInt(w.length),path:y.path,unixfs:A}}}}),async d=>Xn(d));if(p==null)throw new wn(`Could not chmod ${i.cid.toString()}`);return $o(p.cid,i,e,n)}let s=await e.get(i.cid,t),a,c=[];if(i.cid.code===Ne)a=new W({data:s});else{let p=ve(s);if(c=p.Links,p.Data==null)throw new ht(`${i.cid.toString()} had no data`);a=W.unmarshal(p.Data)}a.mtime=o;let u=ce({Data:a.marshal(),Links:c}),l=await he.digest(u),h=H.create(i.cid.version,Te,l);return await e.put(h,u),$o(h,i,e,n)}var Rf=class{components;constructor(e){this.components=e}async*addAll(e,t={}){yield*Iw(e,this.components.blockstore,t)}async addBytes(e,t={}){return Sw(e,this.components.blockstore,t)}async addByteStream(e,t={}){return _w(e,this.components.blockstore,t)}async addFile(e,t={}){return kw(e,this.components.blockstore,t)}async addDirectory(e={},t={}){return Rw(e,this.components.blockstore,t)}async*cat(e,t={}){yield*l2(e,this.components.blockstore,t)}async chmod(e,t,n={}){return u2(e,t,this.components.blockstore,n)}async cp(e,t,n,i={}){return h2(e,t,n,this.components.blockstore,i)}async*ls(e,t={}){yield*d2(e,this.components.blockstore,t)}async mkdir(e,t,n={}){return p2(e,t,this.components.blockstore,n)}async rm(e,t,n={}){return y2(e,t,this.components.blockstore,n)}async stat(e,t={}){return g2(e,this.components.blockstore,t)}async touch(e,t={}){return x2(e,this.components.blockstore,t)}};function b2(r){return new Rf(r)}var kA=42;function RA(r){if(r[0]!==0)throw new Error("Invalid CID for CBOR tag 42; expected leading 0x00");return H.decode(r.subarray(1))}function E2(r){let e=[];e[kA]=RA;let t=at(r,{allowIndefinite:!1,coerceUndefinedToNull:!0,allowNaN:!1,allowInfinity:!1,strict:!0,useMaps:!1,rejectDuplicateMapKeys:!0,tags:e,allowBigInt:!1});return new TextDecoder().decode(al(t))}async function v2(r,e,t,n){let i=t.forComponent("helia:verified-fetch:get-stream-from-async-iterable"),o=r[Symbol.asyncIterator](),{value:s,done:a}=await o.next();if(a===!0)throw i.error("No content found for path",e),new Error("No content found");return{stream:new ReadableStream({async start(u){n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),u.enqueue(s)},async pull(u){let{value:l,done:h}=await o.next();if(h===!0){l!=null&&(n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),u.enqueue(l)),u.close();return}n?.onProgress?.(new P("verified-fetch:request:progress:chunk")),u.enqueue(l)}}),firstChunk:s}}var B2=re(Od(),1),jl=class{lru;constructor(e){this.lru=(0,B2.default)(e)}get(e){let t=this.lru.get(e);if(t!=null){if(t.expire!=null&&t.expire<Date.now()){this.lru.remove(e);return}return t.value}}set(e,t,n){this.lru.set(e,{value:t,expire:Date.now()+n})}has(e){return this.get(e)!=null}remove(e){this.lru.remove(e)}clear(){this.lru.clear()}};var Tf=new jl(1e3),TA=/^(?<protocol>ip[fn]s):\/\/(?<cidOrPeerIdOrDnsLink>[^/$?]+)\/?(?<path>[^$?]*)\??(?<queryString>.*)$/;async function A2({urlString:r,ipns:e,logger:t},n){let i=t.forComponent("helia:verified-fetch:parse-url-string"),o=r.match(TA);if(o==null||o.groups==null)throw new TypeError(`Invalid URL: ${r}, please use ipfs:// or ipns:// URLs only.`);let{protocol:s,cidOrPeerIdOrDnsLink:a,path:c,queryString:u}=o.groups,l,h,p=[];if(s==="ipfs")try{l=H.parse(a)}catch(y){i.error(y),p.push(new TypeError("Invalid CID for ipfs://<cid> URL"))}else{let y=Tf.get(a);if(y!=null)l=y.cid,h=y.path,i.trace("resolved %s to %c from cache",a,l);else{i.trace("Attempting to resolve PeerId for %s",a);let g=null;try{g=Yt(a),y=await e.resolve(g,{onProgress:n?.onProgress}),l=y?.cid,h=y?.path,i.trace("resolved %s to %c",a,l),Tf.set(a,y,60*1e3*2)}catch(w){g==null?(i.error('Could not parse PeerId string "%s"',a,w),p.push(new TypeError(`Could not parse PeerId in ipns url "${a}", ${w.message}`))):(i.error("Could not resolve PeerId %c",g,w),p.push(new TypeError(`Could not resolve PeerId "${a}", ${w.message}`)))}if(l==null){i.trace("Attempting to resolve DNSLink for %s",a);try{y=await e.resolveDns(a,{onProgress:n?.onProgress}),l=y?.cid,h=y?.path,i.trace("resolved %s to %c",a,l),Tf.set(a,y,60*1e3*2)}catch(w){i.error('Could not resolve DnsLink for "%s"',a,w),p.push(w)}}}}if(l==null)throw new AggregateError(p,`Invalid resource. Cannot determine CID from URL "${r}"`);let d={};if(u!=null&&u.length>0){let y=u.split("&");for(let g of y){let[w,x]=g.split("=");d[w]=decodeURIComponent(x)}}let f=[];c.length>0&&f.push(c),h!=null&&h.length>0&&f.push(h);let m=f.join("/");return{protocol:s,cid:l,path:m,query:d}}async function I2(r,{ipns:e,logger:t},n){if(typeof r=="string")return A2({urlString:r,ipns:e,logger:t},{onProgress:n?.onProgress});let i=H.asCID(r);if(i!=null)return{cid:i,protocol:"ipfs",path:"",query:{}};throw new TypeError(`Invalid resource. Cannot determine CID from resource: ${r}`)}async function S2(r,e,t){let n=[],i;for await(let o of vf(e,r,t))n.push(o.cid),i=o;if(i==null)throw new Error("No terminal element found");return{ipfsRoots:n,terminalElement:i}}function CA(r){if(r==null)return;let e;return r?.signal===null&&(e=void 0),{...r,signal:e}}function Wl(r){return new Response(r,{status:200,statusText:"OK"})}function Lr(r){return new Response(r,{status:501,statusText:"Not Implemented"})}var Yl=class{helia;ipns;unixfs;pathWalker;log;contentTypeParser;constructor({helia:e,ipns:t,unixfs:n,pathWalker:i},o){this.helia=e,this.log=e.logger.forComponent("helia:verified-fetch"),this.ipns=t??sg(e,{resolvers:[vl("https://mozilla.cloudflare-dns.com/dns-query"),vl("https://dns.google/resolve")]}),this.unixfs=n??b2(e),this.pathWalker=i??S2,this.contentTypeParser=o?.contentTypeParser,this.log.trace("created VerifiedFetch instance")}async handleIPNSRecord({cid:e,path:t,options:n}){let i=Lr("vnd.ipfs.ipns-record support is not implemented");return i.headers.set("X-Content-Type-Options","nosniff"),i}async handleIPLDCar({cid:e,path:t,options:n}){let i=Lr("vnd.ipld.car support is not implemented");return i.headers.set("X-Content-Type-Options","nosniff"),i}async handleJson({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e,path:t}));let i=await this.helia.blockstore.get(e,{signal:n?.signal,onProgress:n?.onProgress}),o=Wl(i);return o.headers.set("content-type","application/json"),n?.onProgress?.(new P("verified-fetch:request:end",{cid:e,path:t})),o}async handleDagCbor({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e,path:t}));let i=await this.helia.blockstore.get(e),o;try{o=E2(i)}catch(a){this.log("could not decode DAG-CBOR as JSON-safe, falling back to `application/octet-stream`",a),o=i}let s=Wl(o);return s.headers.set("content-type",o instanceof Uint8Array?"application/octet-stream":"application/json"),n?.onProgress?.(new P("verified-fetch:request:end",{cid:e,path:t})),s}async handleDagPb({cid:e,path:t,options:n,terminalElement:i}){this.log.trace("fetching %c/%s",e,t);let o=i?.cid??e,s;if(i?.type==="directory"){let h=i.cid,p="index.html";try{this.log.trace("found directory at %c/%s, looking for index.html",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:h,path:p})),s=await this.unixfs.stat(h,{path:p,signal:n?.signal,onProgress:n?.onProgress}),this.log.trace("found root file at %c/%s with cid %c",h,p,s.cid),t=p,o=s.cid}catch(d){return this.log("error loading path %c/%s",h,p,d),Lr("Unable to find index.html for directory at given path. Support for directories with implicit root is not implemented")}finally{n?.onProgress?.(new P("verified-fetch:request:end",{cid:h,path:p}))}}n?.onProgress?.(new P("verified-fetch:request:start",{cid:o,path:""}));let a=this.unixfs.cat(o,{signal:n?.signal,onProgress:n?.onProgress});this.log("got async iterator for %c/%s",e,t);let{stream:c,firstChunk:u}=await v2(a,t??"",this.helia.logger,{onProgress:n?.onProgress}),l=Wl(c);return await this.setContentType(u,t,l),n?.onProgress?.(new P("verified-fetch:request:end",{cid:o,path:""})),l}async handleRaw({cid:e,path:t,options:n}){this.log.trace("fetching %c/%s",e,t),n?.onProgress?.(new P("verified-fetch:request:start",{cid:e,path:t}));let i=await this.helia.blockstore.get(e),o=Wl(i);return await this.setContentType(i,t,o),n?.onProgress?.(new P("verified-fetch:request:end",{cid:e,path:t})),o}async setContentType(e,t,n){let i="application/octet-stream";if(this.contentTypeParser!=null)try{let o=t.split("/").pop()?.trim();o=o===""?void 0:o;let s=this.contentTypeParser(e,o);if(NA(s)){let a=await s;a!=null&&(i=a)}else s!=null&&(i=s)}catch(o){this.log.error("Error parsing content type",o)}n.headers.set("content-type",i)}getFormat({headerFormat:e,queryFormat:t}){let n={"vnd.ipld.raw":"raw","vnd.ipld.car":"car","application/x-tar":"tar","application/vnd.ipld.dag-json":"dag-json","application/vnd.ipld.dag-cbor":"dag-cbor","application/json":"json","application/cbor":"cbor","vnd.ipfs.ipns-record":"ipns-record"};if(e!=null){for(let i in n)if(e.includes(i))return n[i]}else if(t!=null)return t;return null}formatHandlers={raw:async()=>Lr("application/vnd.ipld.raw support is not implemented"),car:this.handleIPLDCar,"ipns-record":this.handleIPNSRecord,tar:async()=>Lr("application/x-tar support is not implemented"),"dag-json":async()=>Lr("application/vnd.ipld.dag-json support is not implemented"),"dag-cbor":async()=>Lr("application/vnd.ipld.dag-cbor support is not implemented"),json:async()=>Lr("application/json support is not implemented"),cbor:async()=>Lr("application/cbor support is not implemented")};codecHandlers={[Te]:this.handleDagPb,[Ao]:this.handleJson,[$i]:this.handleJson,[Bo]:this.handleDagCbor,[Ne]:this.handleRaw,[et.code]:this.handleRaw};async fetch(e,t){let n=CA(t),{path:i,query:o,...s}=await I2(e,{ipns:this.ipns,logger:this.helia.logger},n),a=s.cid,c,u=this.getFormat({headerFormat:new Headers(n?.headers).get("accept"),queryFormat:o.format??null});if(u!=null){let p=this.formatHandlers[u];if(p!=null&&(c=await p.call(this,{cid:a,path:i,options:n}),c.status===501))return c}let l,h;try{let p=await this.pathWalker(this.helia.blockstore,`${a.toString()}/${i}`,n);h=p.ipfsRoots,l=p.terminalElement}catch(p){this.log.error("Error walking path %s",i,p)}if(c==null){let p=this.codecHandlers[a.code];if(p!=null)c=await p.call(this,{cid:a,path:i,options:n,terminalElement:l});else return Lr(`Support for codec with code ${a.code} is not yet implemented. Please open an issue at https://github.com/ipfs/helia/issues/new`)}return c.headers.set("etag",a.toString()),c.headers.set("cache-control","public, max-age=29030400, immutable"),c.headers.set("X-Ipfs-Path",e.toString()),h!=null&&c.headers.set("X-Ipfs-Roots",h.map(p=>p.toV1().toString()).join(",")),c}async start(){await this.helia.start()}async stop(){await this.helia.stop()}};function NA(r){return r?.then!=null}var oa,Xl=async function(e,t){return oa==null&&(oa=await Cf()),oa(e,t)};Xl.start=async function(){await oa?.start()};Xl.stop=async function(){await oa?.stop()};async function Cf(r,e){let t=e?.contentTypeParser;UA(r)||(r=await Hy({blockBrokers:[Zo({gateways:r?.gateways})],routers:(r?.routers??["https://delegated-ipfs.dev"]).map(o=>Cs(o))}));let n=new Yl({helia:r},{contentTypeParser:t});async function i(o,s){return n.fetch(o,s)}return i.stop=n.stop.bind(n),i.start=n.start.bind(n),i}function UA(r){return r?.blockstore!=null&&r?.datastore!=null&&r?.gc!=null&&r?.stop!=null&&r?.start!=null}return M2(LA);})();
|
|
18
9
|
/*! Bundled license information:
|
|
19
10
|
|
|
20
11
|
pvtsutils/build/index.js:
|
|
@@ -54,22 +45,6 @@ buffer/index.js:
|
|
|
54
45
|
* @license MIT
|
|
55
46
|
*)
|
|
56
47
|
|
|
57
|
-
mime-db/index.js:
|
|
58
|
-
(*!
|
|
59
|
-
* mime-db
|
|
60
|
-
* Copyright(c) 2014 Jonathan Ong
|
|
61
|
-
* Copyright(c) 2015-2022 Douglas Christopher Wilson
|
|
62
|
-
* MIT Licensed
|
|
63
|
-
*)
|
|
64
|
-
|
|
65
|
-
mime-types/index.js:
|
|
66
|
-
(*!
|
|
67
|
-
* mime-types
|
|
68
|
-
* Copyright(c) 2014 Jonathan Ong
|
|
69
|
-
* Copyright(c) 2015 Douglas Christopher Wilson
|
|
70
|
-
* MIT Licensed
|
|
71
|
-
*)
|
|
72
|
-
|
|
73
48
|
@noble/hashes/esm/utils.js:
|
|
74
49
|
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
75
50
|
|