@oracle-agent/oracle 0.25.2 → 0.25.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +33 -1
  2. package/dist/assets/skills/oracle-desk-product/SKILL.md +1 -1
  3. package/dist/bin/desk-server.mjs +53 -53
  4. package/dist/bin/oracle-data-mcp.mjs +12 -12
  5. package/dist/bin/oracle-public-server.mjs +15 -15
  6. package/dist/bin/oracle-route.mjs +14 -14
  7. package/dist/cli/commands/chat.mjs +96 -96
  8. package/dist/cli/commands/doctor.mjs +3 -3
  9. package/dist/cli/commands/eval.mjs +414 -85
  10. package/dist/cli/commands/farm.mjs +21 -21
  11. package/dist/cli/commands/model.mjs +101 -101
  12. package/dist/cli/commands/receipt.mjs +2 -2
  13. package/dist/cli/commands/sign.mjs +9 -9
  14. package/dist/cli/commands/signer.mjs +12 -12
  15. package/dist/cli/commands/strategy.mjs +11 -11
  16. package/dist/cli/commands/swap.mjs +10 -10
  17. package/dist/cli/commands/venues.mjs +2 -2
  18. package/dist/data/desk-data.mjs +51 -51
  19. package/dist/data/providers/universal-evm-nft-transfer.mjs +1 -0
  20. package/dist/data/providers/universal-ordinals-transfer.mjs +1 -0
  21. package/dist/data/providers/universal-solana-nft-transfer.mjs +1 -0
  22. package/dist/index.mjs +55 -55
  23. package/dist/local-signer/index.mjs +3 -3
  24. package/dist/nft/index.mjs +1 -1
  25. package/dist/nft/universal-mint-router.mjs +47 -0
  26. package/dist/nft/universal-nft-lifecycle.mjs +1 -0
  27. package/dist/prepare-envelope.mjs +1 -1
  28. package/dist/router/index.mjs +9 -9
  29. package/dist/router/prepare-bridge.mjs +18 -18
  30. package/dist/strategy/index.mjs +11 -11
  31. package/package.json +6 -1
  32. package/public/oracle-splash/downloads/index.html +4 -4
  33. package/public/oracle-splash/index.html +1 -1
@@ -1,7 +1,7 @@
1
- var lf=Object.create;var qo=Object.defineProperty;var Ef=Object.getOwnPropertyDescriptor;var Qf=Object.getOwnPropertyNames;var Bf=Object.getPrototypeOf,If=Object.prototype.hasOwnProperty;var d=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(A,t)=>(typeof require<"u"?require:A)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var MA=(e,A,t)=>()=>{if(t)throw t[0];try{return e&&(A=e(e=0)),A}catch(r){throw t=[r],r}};var f=(e,A)=>()=>{try{return A||e((A={exports:{}}).exports,A),A.exports}catch(t){throw A=0,t}},Cf=(e,A)=>{for(var t in A)qo(e,t,{get:A[t],enumerable:!0})},hf=(e,A,t,r)=>{if(A&&typeof A=="object"||typeof A=="function")for(let n of Qf(A))!If.call(e,n)&&n!==t&&qo(e,n,{get:()=>A[n],enumerable:!(r=Ef(A,n))||r.enumerable});return e};var df=(e,A,t)=>(t=e!=null?lf(Bf(e)):{},hf(A||!e||!e.__esModule?qo(t,"default",{value:e,enumerable:!0}):t,e));var j=f((YL,Lg)=>{Lg.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var v=f((GL,su)=>{"use strict";var Tg=Symbol.for("undici.error.UND_ERR"),$=class extends Error{constructor(A){super(A),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[Tg]===!0}[Tg]=!0},xg=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),Wo=class extends ${constructor(A){super(A),this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[xg]===!0}[xg]=!0},Yg=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),Po=class extends ${constructor(A){super(A),this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[Yg]===!0}[Yg]=!0},Gg=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),_o=class extends ${constructor(A){super(A),this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[Gg]===!0}[Gg]=!0},Jg=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),Zo=class extends ${constructor(A){super(A),this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[Jg]===!0}[Jg]=!0},vg=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),zo=class extends ${constructor(A,t,r,n){super(A),this.name="ResponseStatusCodeError",this.message=A||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=n,this.status=t,this.statusCode=t,this.headers=r}static[Symbol.hasInstance](A){return A&&A[vg]===!0}[vg]=!0},Hg=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),Ko=class extends ${constructor(A){super(A),this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[Hg]===!0}[Hg]=!0},Vg=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),Xo=class extends ${constructor(A){super(A),this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[Vg]===!0}[Vg]=!0},qg=Symbol.for("undici.error.UND_ERR_ABORT"),Ln=class extends ${constructor(A){super(A),this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[qg]===!0}[qg]=!0},Og=Symbol.for("undici.error.UND_ERR_ABORTED"),jo=class extends Ln{constructor(A){super(A),this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[Og]===!0}[Og]=!0},Wg=Symbol.for("undici.error.UND_ERR_INFO"),$o=class extends ${constructor(A){super(A),this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[Wg]===!0}[Wg]=!0},Pg=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),ei=class extends ${constructor(A){super(A),this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[Pg]===!0}[Pg]=!0},_g=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),Ai=class extends ${constructor(A){super(A),this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[_g]===!0}[_g]=!0},Zg=Symbol.for("undici.error.UND_ERR_DESTROYED"),ti=class extends ${constructor(A){super(A),this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[Zg]===!0}[Zg]=!0},zg=Symbol.for("undici.error.UND_ERR_CLOSED"),ri=class extends ${constructor(A){super(A),this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[zg]===!0}[zg]=!0},Kg=Symbol.for("undici.error.UND_ERR_SOCKET"),ni=class extends ${constructor(A,t){super(A),this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=t}static[Symbol.hasInstance](A){return A&&A[Kg]===!0}[Kg]=!0},Xg=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),si=class extends ${constructor(A){super(A),this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[Xg]===!0}[Xg]=!0},jg=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),oi=class extends ${constructor(A){super(A),this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[jg]===!0}[jg]=!0},$g=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),ii=class extends Error{constructor(A,t,r){super(A),this.name="HTTPParserError",this.code=t?`HPE_${t}`:void 0,this.data=r?r.toString():void 0}static[Symbol.hasInstance](A){return A&&A[$g]===!0}[$g]=!0},eu=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),ai=class extends ${constructor(A){super(A),this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[eu]===!0}[eu]=!0},Au=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),ci=class extends ${constructor(A,t,{headers:r,data:n}){super(A),this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=t,this.data=n,this.headers=r}static[Symbol.hasInstance](A){return A&&A[Au]===!0}[Au]=!0},tu=Symbol.for("undici.error.UND_ERR_RESPONSE"),gi=class extends ${constructor(A,t,{headers:r,data:n}){super(A),this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=t,this.data=n,this.headers=r}static[Symbol.hasInstance](A){return A&&A[tu]===!0}[tu]=!0},ru=Symbol.for("undici.error.UND_ERR_PRX_TLS"),ui=class extends ${constructor(A,t,r){super(t,{cause:A,...r??{}}),this.name="SecureProxyConnectionError",this.message=t||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[ru]===!0}[ru]=!0},nu=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),li=class extends ${constructor(A){super(A),this.name="MessageSizeExceededError",this.message=A||"Max decompressed message size exceeded",this.code="UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"}static[Symbol.hasInstance](A){return A&&A[nu]===!0}get[nu](){return!0}};su.exports={AbortError:Ln,HTTPParserError:ii,UndiciError:$,HeadersTimeoutError:Po,HeadersOverflowError:_o,BodyTimeoutError:Zo,RequestContentLengthMismatchError:ei,ConnectTimeoutError:Wo,ResponseStatusCodeError:zo,InvalidArgumentError:Ko,InvalidReturnValueError:Xo,RequestAbortedError:jo,ClientDestroyedError:ti,ClientClosedError:ri,InformationalError:$o,SocketError:ni,NotSupportedError:si,ResponseContentLengthMismatchError:Ai,BalancedPoolMissingUpstreamError:oi,ResponseExceededMaxSizeError:ai,RequestRetryError:ci,ResponseError:gi,SecureProxyConnectionError:ui,MessageSizeExceededError:li}});var xn=f((JL,ou)=>{"use strict";var Tn={},Ei=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e<Ei.length;++e){let A=Ei[e],t=A.toLowerCase();Tn[A]=Tn[t]=t}Object.setPrototypeOf(Tn,null);ou.exports={wellknownHeaderNames:Ei,headerNameLowerCasedRecord:Tn}});var gu=f((vL,cu)=>{"use strict";var{wellknownHeaderNames:iu,headerNameLowerCasedRecord:ff}=xn(),Qi=class e{value=null;left=null;middle=null;right=null;code;constructor(A,t,r){if(r===void 0||r>=A.length)throw new TypeError("Unreachable");if((this.code=A.charCodeAt(r))>127)throw new TypeError("key must be ascii string");A.length!==++r?this.middle=new e(A,t,r):this.value=t}add(A,t){let r=A.length;if(r===0)throw new TypeError("Unreachable");let n=0,s=this;for(;;){let o=A.charCodeAt(n);if(o>127)throw new TypeError("key must be ascii string");if(s.code===o)if(r===++n){s.value=t;break}else if(s.middle!==null)s=s.middle;else{s.middle=new e(A,t,n);break}else if(s.code<o)if(s.left!==null)s=s.left;else{s.left=new e(A,t,n);break}else if(s.right!==null)s=s.right;else{s.right=new e(A,t,n);break}}}search(A){let t=A.length,r=0,n=this;for(;n!==null&&r<t;){let s=A[r];for(s<=90&&s>=65&&(s|=32);n!==null;){if(s===n.code){if(t===++r)return n;n=n.middle;break}n=n.code<s?n.left:n.right}}return null}},Yn=class{node=null;insert(A,t){this.node===null?this.node=new Qi(A,t,0):this.node.add(A,t)}lookup(A){return this.node?.search(A)?.value??null}},au=new Yn;for(let e=0;e<iu.length;++e){let A=ff[iu[e]];au.insert(A,A)}cu.exports={TernarySearchTree:Yn,tree:au}});var x=f((HL,bu)=>{"use strict";var Sr=d("node:assert"),{kDestroyed:lu,kBodyUsed:Nt,kListeners:Bi,kBody:uu}=j(),{IncomingMessage:pf}=d("node:http"),vn=d("node:stream"),wf=d("node:net"),{Blob:mf}=d("node:buffer"),yf=d("node:util"),{stringify:Df}=d("node:querystring"),{EventEmitter:bf}=d("node:events"),{InvalidArgumentError:ce}=v(),{headerNameLowerCasedRecord:kf}=xn(),{tree:Eu}=gu(),[Ff,Rf]=process.versions.node.split(".").map(e=>Number(e)),Jn=class{constructor(A){this[uu]=A,this[Nt]=!1}async*[Symbol.asyncIterator](){Sr(!this[Nt],"disturbed"),this[Nt]=!0,yield*this[uu]}};function Sf(e){return Hn(e)?(hu(e)===0&&e.on("data",function(){Sr(!1)}),typeof e.readableDidRead!="boolean"&&(e[Nt]=!1,bf.prototype.on.call(e,"data",function(){this[Nt]=!0})),e):e&&typeof e.pipeTo=="function"?new Jn(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&Cu(e)?new Jn(e):e}function Nf(){}function Hn(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Qu(e){if(e===null)return!1;if(e instanceof mf)return!0;if(typeof e!="object")return!1;{let A=e[Symbol.toStringTag];return(A==="Blob"||A==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function Uf(e,A){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let t=Df(A);return t&&(e+="?"+t),e}function Bu(e){let A=parseInt(e,10);return A===Number(e)&&A>=0&&A<=65535}function Gn(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function Iu(e){if(typeof e=="string"){if(e=new URL(e),!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new ce("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&Bu(e.port)===!1)throw new ce("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new ce("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new ce("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new ce("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new ce("Invalid URL origin: the origin must be a string or null/undefined.");if(!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");let A=e.port!=null?e.port:e.protocol==="https:"?443:80,t=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${A}`,r=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return t[t.length-1]==="/"&&(t=t.slice(0,t.length-1)),r&&r[0]!=="/"&&(r=`/${r}`),new URL(`${t}${r}`)}if(!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Mf(e){if(e=Iu(e),e.pathname!=="/"||e.search||e.hash)throw new ce("invalid url");return e}function Lf(e){if(e[0]==="["){let t=e.indexOf("]");return Sr(t!==-1),e.substring(1,t)}let A=e.indexOf(":");return A===-1?e:e.substring(0,A)}function Tf(e){if(!e)return null;Sr(typeof e=="string");let A=Lf(e);return wf.isIP(A)?"":A}function xf(e){return JSON.parse(JSON.stringify(e))}function Yf(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function Cu(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function hu(e){if(e==null)return 0;if(Hn(e)){let A=e._readableState;return A&&A.objectMode===!1&&A.ended===!0&&Number.isFinite(A.length)?A.length:null}else{if(Qu(e))return e.size!=null?e.size:null;if(pu(e))return e.byteLength}return null}function du(e){return e&&!!(e.destroyed||e[lu]||vn.isDestroyed?.(e))}function Gf(e,A){e==null||!Hn(e)||du(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===pf&&(e.socket=null),e.destroy(A)):A&&queueMicrotask(()=>{e.emit("error",A)}),e.destroyed!==!0&&(e[lu]=!0))}var Jf=/timeout=(\d+)/;function vf(e){let A=e.toString().match(Jf);return A?parseInt(A[1],10)*1e3:null}function fu(e){return typeof e=="string"?kf[e]??e.toLowerCase():Eu.lookup(e)??e.toString("latin1").toLowerCase()}function Hf(e){return Eu.lookup(e)??e.toString("latin1").toLowerCase()}function Vf(e,A){A===void 0&&(A={});for(let t=0;t<e.length;t+=2){let r=fu(e[t]),n=A[r];if(n)typeof n=="string"&&(n=[n],A[r]=n),n.push(e[t+1].toString("utf8"));else{let s=e[t+1];typeof s=="string"?A[r]=s:A[r]=Array.isArray(s)?s.map(o=>o.toString("utf8")):s.toString("utf8")}}return"content-length"in A&&"content-disposition"in A&&(A["content-disposition"]=Buffer.from(A["content-disposition"]).toString("latin1")),A}function qf(e){let A=e.length,t=new Array(A),r=!1,n=-1,s,o,i=0;for(let a=0;a<e.length;a+=2)s=e[a],o=e[a+1],typeof s!="string"&&(s=s.toString()),typeof o!="string"&&(o=o.toString("utf8")),i=s.length,i===14&&s[7]==="-"&&(s==="content-length"||s.toLowerCase()==="content-length")?r=!0:i===19&&s[7]==="-"&&(s==="content-disposition"||s.toLowerCase()==="content-disposition")&&(n=a+1),t[a]=s,t[a+1]=o;return r&&n!==-1&&(t[n]=Buffer.from(t[n]).toString("latin1")),t}function pu(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function Of(e,A,t){if(!e||typeof e!="object")throw new ce("handler must be an object");if(typeof e.onConnect!="function")throw new ce("invalid onConnect method");if(typeof e.onError!="function")throw new ce("invalid onError method");if(typeof e.onBodySent!="function"&&e.onBodySent!==void 0)throw new ce("invalid onBodySent method");if(t||A==="CONNECT"){if(typeof e.onUpgrade!="function")throw new ce("invalid onUpgrade method")}else{if(typeof e.onHeaders!="function")throw new ce("invalid onHeaders method");if(typeof e.onData!="function")throw new ce("invalid onData method");if(typeof e.onComplete!="function")throw new ce("invalid onComplete method")}}function Wf(e){return!!(e&&(vn.isDisturbed(e)||e[Nt]))}function Pf(e){return!!(e&&vn.isErrored(e))}function _f(e){return!!(e&&vn.isReadable(e))}function Zf(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function zf(e){let A;return new ReadableStream({async start(){A=e[Symbol.asyncIterator]()},async pull(t){let{done:r,value:n}=await A.next();if(r)queueMicrotask(()=>{t.close(),t.byobRequest?.respond(0)});else{let s=Buffer.isBuffer(n)?n:Buffer.from(n);s.byteLength&&t.enqueue(new Uint8Array(s))}return t.desiredSize>0},async cancel(t){await A.return()},type:"bytes"})}function Kf(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Xf(e,A){return"addEventListener"in e?(e.addEventListener("abort",A,{once:!0}),()=>e.removeEventListener("abort",A)):(e.addListener("abort",A),()=>e.removeListener("abort",A))}var jf=typeof String.prototype.toWellFormed=="function",$f=typeof String.prototype.isWellFormed=="function";function wu(e){return jf?`${e}`.toWellFormed():yf.toUSVString(e)}function e0(e){return $f?`${e}`.isWellFormed():wu(e)===`${e}`}function mu(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function A0(e){if(e.length===0)return!1;for(let A=0;A<e.length;++A)if(!mu(e.charCodeAt(A)))return!1;return!0}var t0=/[^\t\x20-\x7e\x80-\xff]/;function r0(e){return!t0.test(e)}function n0(e){if(e==null||e==="")return{start:0,end:null,size:null};let A=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return A?{start:parseInt(A[1]),end:A[2]?parseInt(A[2]):null,size:A[3]?parseInt(A[3]):null}:null}function s0(e,A,t){return(e[Bi]??=[]).push([A,t]),e.on(A,t),e}function o0(e){for(let[A,t]of e[Bi]??[])e.removeListener(A,t);e[Bi]=null}function i0(e,A,t){try{A.onError(t),Sr(A.aborted)}catch(r){e.emit("error",r)}}var yu=Object.create(null);yu.enumerable=!0;var Ii={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},Du={...Ii,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(Ii,null);Object.setPrototypeOf(Du,null);bu.exports={kEnumerableProperty:yu,nop:Nf,isDisturbed:Wf,isErrored:Pf,isReadable:_f,toUSVString:wu,isUSVString:e0,isBlobLike:Qu,parseOrigin:Mf,parseURL:Iu,getServerName:Tf,isStream:Hn,isIterable:Cu,isAsyncIterable:Yf,isDestroyed:du,headerNameToString:fu,bufferToLowerCasedHeaderName:Hf,addListener:s0,removeAllListeners:o0,errorRequest:i0,parseRawHeaders:qf,parseHeaders:Vf,parseKeepAliveTimeout:vf,destroy:Gf,bodyLength:hu,deepClone:xf,ReadableStreamFrom:zf,isBuffer:pu,validateHandler:Of,getSocketInfo:Zf,isFormDataLike:Kf,buildURL:Uf,addAbortListener:Xf,isValidHTTPToken:A0,isValidHeaderValue:r0,isTokenCharCode:mu,parseRangeHeader:n0,normalizedMethodRecordsBase:Ii,normalizedMethodRecords:Du,isValidPort:Bu,isHttpOrHttpsPrefixed:Gn,nodeMajor:Ff,nodeMinor:Rf,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"],wrapRequestBody:Sf}});var Ut=f((VL,Fu)=>{"use strict";var q=d("node:diagnostics_channel"),hi=d("node:util"),Vn=hi.debuglog("undici"),Ci=hi.debuglog("fetch"),$A=hi.debuglog("websocket"),ku=!1,a0={beforeConnect:q.channel("undici:client:beforeConnect"),connected:q.channel("undici:client:connected"),connectError:q.channel("undici:client:connectError"),sendHeaders:q.channel("undici:client:sendHeaders"),create:q.channel("undici:request:create"),bodySent:q.channel("undici:request:bodySent"),headers:q.channel("undici:request:headers"),trailers:q.channel("undici:request:trailers"),error:q.channel("undici:request:error"),open:q.channel("undici:websocket:open"),close:q.channel("undici:websocket:close"),socketError:q.channel("undici:websocket:socket_error"),ping:q.channel("undici:websocket:ping"),pong:q.channel("undici:websocket:pong")};if(Vn.enabled||Ci.enabled){let e=Ci.enabled?Ci:Vn;q.channel("undici:client:beforeConnect").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connecting to %s using %s%s",`${s}${n?`:${n}`:""}`,r,t)}),q.channel("undici:client:connected").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connected to %s using %s%s",`${s}${n?`:${n}`:""}`,r,t)}),q.channel("undici:client:connectError").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s},error:o}=A;e("connection to %s using %s%s errored - %s",`${s}${n?`:${n}`:""}`,r,t,o.message)}),q.channel("undici:client:sendHeaders").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("sending request to %s %s/%s",t,n,r)}),q.channel("undici:request:headers").subscribe(A=>{let{request:{method:t,path:r,origin:n},response:{statusCode:s}}=A;e("received response to %s %s/%s - HTTP %d",t,n,r,s)}),q.channel("undici:request:trailers").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("trailers received from %s %s/%s",t,n,r)}),q.channel("undici:request:error").subscribe(A=>{let{request:{method:t,path:r,origin:n},error:s}=A;e("request to %s %s/%s errored - %s",t,n,r,s.message)}),ku=!0}if($A.enabled){if(!ku){let e=Vn.enabled?Vn:$A;q.channel("undici:client:beforeConnect").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connecting to %s%s using %s%s",s,n?`:${n}`:"",r,t)}),q.channel("undici:client:connected").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connected to %s%s using %s%s",s,n?`:${n}`:"",r,t)}),q.channel("undici:client:connectError").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s},error:o}=A;e("connection to %s%s using %s%s errored - %s",s,n?`:${n}`:"",r,t,o.message)}),q.channel("undici:client:sendHeaders").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("sending request to %s %s/%s",t,n,r)})}q.channel("undici:websocket:open").subscribe(e=>{let{address:{address:A,port:t}}=e;$A("connection opened %s%s",A,t?`:${t}`:"")}),q.channel("undici:websocket:close").subscribe(e=>{let{websocket:A,code:t,reason:r}=e;$A("closed connection to %s - %s %s",A.url,t,r)}),q.channel("undici:websocket:socket_error").subscribe(e=>{$A("connection errored - %s",e.message)}),q.channel("undici:websocket:ping").subscribe(e=>{$A("ping received")}),q.channel("undici:websocket:pong").subscribe(e=>{$A("pong received")})}Fu.exports={channels:a0}});var Uu=f((qL,Nu)=>{"use strict";var{InvalidArgumentError:W,NotSupportedError:c0}=v(),BA=d("node:assert"),{isValidHTTPToken:Su,isValidHeaderValue:Nr,isStream:g0,destroy:u0,isBuffer:l0,isFormDataLike:E0,isIterable:Q0,isBlobLike:B0,buildURL:I0,validateHandler:C0,getServerName:h0,normalizedMethodRecords:d0}=x(),{channels:AA}=Ut(),{headerNameLowerCasedRecord:Ru}=xn(),f0=/[^\u0021-\u00ff]/,Ye=Symbol("handler"),di=class{constructor(A,{path:t,method:r,body:n,headers:s,query:o,idempotent:i,blocking:a,upgrade:c,headersTimeout:l,bodyTimeout:u,reset:g,throwOnError:E,expectContinue:Q,servername:I},C){if(typeof t!="string")throw new W("path must be a string");if(t[0]!=="/"&&!(t.startsWith("http://")||t.startsWith("https://"))&&r!=="CONNECT")throw new W("path must be an absolute URL or start with a slash");if(f0.test(t))throw new W("invalid request path");if(typeof r!="string")throw new W("method must be a string");if(d0[r]===void 0&&!Su(r))throw new W("invalid request method");if(c&&typeof c!="string")throw new W("upgrade must be a string");if(c&&!Nr(c))throw new W("invalid upgrade header");if(l!=null&&(!Number.isFinite(l)||l<0))throw new W("invalid headersTimeout");if(u!=null&&(!Number.isFinite(u)||u<0))throw new W("invalid bodyTimeout");if(g!=null&&typeof g!="boolean")throw new W("invalid reset");if(Q!=null&&typeof Q!="boolean")throw new W("invalid expectContinue");if(this.headersTimeout=l,this.bodyTimeout=u,this.throwOnError=E===!0,this.method=r,this.abort=null,n==null)this.body=null;else if(g0(n)){this.body=n;let B=this.body._readableState;(!B||!B.autoDestroy)&&(this.endHandler=function(){u0(this)},this.body.on("end",this.endHandler)),this.errorHandler=h=>{this.abort?this.abort(h):this.error=h},this.body.on("error",this.errorHandler)}else if(l0(n))this.body=n.byteLength?n:null;else if(ArrayBuffer.isView(n))this.body=n.buffer.byteLength?Buffer.from(n.buffer,n.byteOffset,n.byteLength):null;else if(n instanceof ArrayBuffer)this.body=n.byteLength?Buffer.from(n):null;else if(typeof n=="string")this.body=n.length?Buffer.from(n):null;else if(E0(n)||Q0(n)||B0(n))this.body=n;else throw new W("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=c||null,this.path=o?I0(t,o):t,this.origin=A,this.idempotent=i??(r==="HEAD"||r==="GET"),this.blocking=a??!1,this.reset=g??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=Q??!1,Array.isArray(s)){if(s.length%2!==0)throw new W("headers array must be even");for(let B=0;B<s.length;B+=2)qn(this,s[B],s[B+1])}else if(s&&typeof s=="object")if(s[Symbol.iterator])for(let B of s){if(!Array.isArray(B)||B.length!==2)throw new W("headers must be in key-value pair format");qn(this,B[0],B[1])}else{let B=Object.keys(s);for(let h=0;h<B.length;++h)qn(this,B[h],s[B[h]])}else if(s!=null)throw new W("headers must be an object or an array");C0(C,r,c),this.servername=I||h0(this.host),this[Ye]=C,AA.create.hasSubscribers&&AA.create.publish({request:this})}onBodySent(A){if(this[Ye].onBodySent)try{return this[Ye].onBodySent(A)}catch(t){this.abort(t)}}onRequestSent(){if(AA.bodySent.hasSubscribers&&AA.bodySent.publish({request:this}),this[Ye].onRequestSent)try{return this[Ye].onRequestSent()}catch(A){this.abort(A)}}onConnect(A){if(BA(!this.aborted),BA(!this.completed),this.error)A(this.error);else return this.abort=A,this[Ye].onConnect(A)}onResponseStarted(){return this[Ye].onResponseStarted?.()}onHeaders(A,t,r,n){BA(!this.aborted),BA(!this.completed),AA.headers.hasSubscribers&&AA.headers.publish({request:this,response:{statusCode:A,headers:t,statusText:n}});try{return this[Ye].onHeaders(A,t,r,n)}catch(s){this.abort(s)}}onData(A){BA(!this.aborted),BA(!this.completed);try{return this[Ye].onData(A)}catch(t){return this.abort(t),!1}}onUpgrade(A,t,r){return BA(!this.aborted),BA(!this.completed),this[Ye].onUpgrade(A,t,r)}onComplete(A){this.onFinally(),BA(!this.aborted),this.completed=!0,AA.trailers.hasSubscribers&&AA.trailers.publish({request:this,trailers:A});try{return this[Ye].onComplete(A)}catch(t){this.onError(t)}}onError(A){if(this.onFinally(),AA.error.hasSubscribers&&AA.error.publish({request:this,error:A}),!this.aborted)return this.aborted=!0,this[Ye].onError(A)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(A,t){return qn(this,A,t),this}};function qn(e,A,t){if(t&&typeof t=="object"&&!Array.isArray(t))throw new W(`invalid ${A} header`);if(t===void 0)return;let r=Ru[A];if(r===void 0&&(r=A.toLowerCase(),Ru[r]===void 0&&!Su(r)))throw new W("invalid header key");if(Array.isArray(t)){let n=[];for(let s=0;s<t.length;s++)if(typeof t[s]=="string"){if(!Nr(t[s]))throw new W(`invalid ${A} header`);n.push(t[s])}else if(t[s]===null)n.push("");else{if(typeof t[s]=="object")throw new W(`invalid ${A} header`);{let o=`${t[s]}`;if(!Nr(o))throw new W(`invalid ${A} header`);n.push(o)}}t=n}else if(typeof t=="string"){if(!Nr(t))throw new W(`invalid ${A} header`)}else if(t===null)t="";else if(t=`${t}`,!Nr(t))throw new W(`invalid ${A} header`);if(r==="host"){if(e.host!==null)throw new W("duplicate host header");if(typeof t!="string")throw new W("invalid host header");e.host=t}else if(r==="content-length"){if(e.contentLength!==null)throw new W("duplicate content-length header");if(e.contentLength=parseInt(t,10),!Number.isFinite(e.contentLength))throw new W("invalid content-length header")}else if(e.contentType===null&&r==="content-type")e.contentType=t,e.headers.push(A,t);else{if(r==="transfer-encoding"||r==="keep-alive"||r==="upgrade")throw new W(`invalid ${r} header`);if(r==="connection"){let n=typeof t=="string"?t.toLowerCase():null;if(n!=="close"&&n!=="keep-alive")throw new W("invalid connection header");n==="close"&&(e.reset=!0)}else{if(r==="expect")throw new c0("expect header not supported");e.headers.push(A,t)}}}Nu.exports=di});var Ur=f((OL,Mu)=>{"use strict";var p0=d("node:events"),On=class extends p0{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...A){let t=Array.isArray(A[0])?A[0]:A,r=this.dispatch.bind(this);for(let n of t)if(n!=null){if(typeof n!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof n}`);if(r=n(r),r==null||typeof r!="function"||r.length!==2)throw new TypeError("invalid interceptor")}return new fi(this,r)}},fi=class extends On{#e=null;#A=null;constructor(A,t){super(),this.#e=A,this.#A=t}dispatch(...A){this.#A(...A)}close(...A){return this.#e.close(...A)}destroy(...A){return this.#e.destroy(...A)}};Mu.exports=On});var xt=f((WL,Lu)=>{"use strict";var w0=Ur(),{ClientDestroyedError:pi,ClientClosedError:m0,InvalidArgumentError:Mt}=v(),{kDestroy:y0,kClose:D0,kClosed:Mr,kDestroyed:Lt,kDispatch:wi,kInterceptors:et}=j(),IA=Symbol("onDestroyed"),Tt=Symbol("onClosed"),Wn=Symbol("Intercepted Dispatch"),mi=Symbol("webSocketOptions"),yi=class extends w0{constructor(A){super(),this[Lt]=!1,this[IA]=null,this[Mr]=!1,this[Tt]=[],this[mi]=A?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[mi].maxFragments??131072,maxPayloadSize:this[mi].maxPayloadSize??128*1024*1024}}get destroyed(){return this[Lt]}get closed(){return this[Mr]}get interceptors(){return this[et]}set interceptors(A){if(A){for(let t=A.length-1;t>=0;t--)if(typeof this[et][t]!="function")throw new Mt("interceptor must be an function")}this[et]=A}close(A){if(A===void 0)return new Promise((r,n)=>{this.close((s,o)=>s?n(s):r(o))});if(typeof A!="function")throw new Mt("invalid callback");if(this[Lt]){queueMicrotask(()=>A(new pi,null));return}if(this[Mr]){this[Tt]?this[Tt].push(A):queueMicrotask(()=>A(null,null));return}this[Mr]=!0,this[Tt].push(A);let t=()=>{let r=this[Tt];this[Tt]=null;for(let n=0;n<r.length;n++)r[n](null,null)};this[D0]().then(()=>this.destroy()).then(()=>{queueMicrotask(t)})}destroy(A,t){if(typeof A=="function"&&(t=A,A=null),t===void 0)return new Promise((n,s)=>{this.destroy(A,(o,i)=>o?s(o):n(i))});if(typeof t!="function")throw new Mt("invalid callback");if(this[Lt]){this[IA]?this[IA].push(t):queueMicrotask(()=>t(null,null));return}A||(A=new pi),this[Lt]=!0,this[IA]=this[IA]||[],this[IA].push(t);let r=()=>{let n=this[IA];this[IA]=null;for(let s=0;s<n.length;s++)n[s](null,null)};this[y0](A).then(()=>{queueMicrotask(r)})}[Wn](A,t){if(!this[et]||this[et].length===0)return this[Wn]=this[wi],this[wi](A,t);let r=this[wi].bind(this);for(let n=this[et].length-1;n>=0;n--)r=this[et][n](r);return this[Wn]=r,r(A,t)}dispatch(A,t){if(!t||typeof t!="object")throw new Mt("handler must be an object");try{if(!A||typeof A!="object")throw new Mt("opts must be an object.");if(this[Lt]||this[IA])throw new pi;if(this[Mr])throw new m0;return this[Wn](A,t)}catch(r){if(typeof t.onError!="function")throw new Mt("invalid onError method");return t.onError(r),!1}}};Lu.exports=yi});var Ni=f((PL,Gu)=>{"use strict";var Yt=0,Di=1e3,bi=(Di>>1)-1,CA,ki=Symbol("kFastTimer"),hA=[],Fi=-2,Ri=-1,xu=0,Tu=1;function Si(){Yt+=bi;let e=0,A=hA.length;for(;e<A;){let t=hA[e];t._state===xu?(t._idleStart=Yt-bi,t._state=Tu):t._state===Tu&&Yt>=t._idleStart+t._idleTimeout&&(t._state=Ri,t._idleStart=-1,t._onTimeout(t._timerArg)),t._state===Ri?(t._state=Fi,--A!==0&&(hA[e]=hA[A])):++e}hA.length=A,hA.length!==0&&Yu()}function Yu(){CA?CA.refresh():(clearTimeout(CA),CA=setTimeout(Si,bi),CA.unref&&CA.unref())}var Pn=class{[ki]=!0;_state=Fi;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,t,r){this._onTimeout=A,this._idleTimeout=t,this._timerArg=r,this.refresh()}refresh(){this._state===Fi&&hA.push(this),(!CA||hA.length===1)&&Yu(),this._state=xu}clear(){this._state=Ri,this._idleStart=-1}};Gu.exports={setTimeout(e,A,t){return A<=Di?setTimeout(e,A,t):new Pn(e,A,t)},clearTimeout(e){e[ki]?e.clear():clearTimeout(e)},setFastTimeout(e,A,t){return new Pn(e,A,t)},clearFastTimeout(e){e.clear()},now(){return Yt},tick(e=0){Yt+=e-Di+1,Si(),Si()},reset(){Yt=0,hA.length=0,clearTimeout(CA),CA=null},kFastTimer:ki}});var Lr=f((zL,qu)=>{"use strict";var b0=d("node:net"),Ju=d("node:assert"),Vu=x(),{InvalidArgumentError:k0,ConnectTimeoutError:F0}=v(),_n=Ni();function vu(){}var Ui,Mi;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Mi=class{constructor(A){this._maxCachedSessions=A,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(t=>{if(this._sessionCache.size<this._maxCachedSessions)return;let r=this._sessionCache.get(t);r!==void 0&&r.deref()===void 0&&this._sessionCache.delete(t)})}get(A){let t=this._sessionCache.get(A);return t?t.deref():null}set(A,t){this._maxCachedSessions!==0&&(this._sessionCache.set(A,new WeakRef(t)),this._sessionRegistry.register(t,A))}}:Mi=class{constructor(A){this._maxCachedSessions=A,this._sessionCache=new Map}get(A){return this._sessionCache.get(A)}set(A,t){if(this._maxCachedSessions!==0){if(this._sessionCache.size>=this._maxCachedSessions){let{value:r}=this._sessionCache.keys().next();this._sessionCache.delete(r)}this._sessionCache.set(A,t)}}};function R0({allowH2:e,maxCachedSessions:A,socketPath:t,timeout:r,session:n,...s}){if(A!=null&&(!Number.isInteger(A)||A<0))throw new k0("maxCachedSessions must be a positive integer or zero");let o={path:t,...s},i=new Mi(A??100);return r=r??1e4,e=e??!1,function({hostname:c,host:l,protocol:u,port:g,servername:E,localAddress:Q,httpSocket:I},C){let B;if(u==="https:"){Ui||(Ui=d("node:tls")),E=E||o.servername||Vu.getServerName(l)||null;let y=E||c;Ju(y);let m=n||i.get(y)||null;g=g||443,B=Ui.connect({highWaterMark:16384,...o,servername:E,session:m,localAddress:Q,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:I,port:g,host:c}),B.on("session",function(T){i.set(y,T)})}else Ju(!I,"httpSocket can only be sent on TLS update"),g=g||80,B=b0.connect({highWaterMark:64*1024,...o,localAddress:Q,port:g,host:c});if(o.keepAlive==null||o.keepAlive){let y=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;B.setKeepAlive(!0,y)}let h=S0(new WeakRef(B),{timeout:r,hostname:c,port:g});return B.setNoDelay(!0).once(u==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(h),C){let y=C;C=null,y(null,this)}}).on("error",function(y){if(queueMicrotask(h),C){let m=C;C=null,m(y)}}),B}}var S0=process.platform==="win32"?(e,A)=>{if(!A.timeout)return vu;let t=null,r=null,n=_n.setFastTimeout(()=>{t=setImmediate(()=>{r=setImmediate(()=>Hu(e.deref(),A))})},A.timeout);return()=>{_n.clearFastTimeout(n),clearImmediate(t),clearImmediate(r)}}:(e,A)=>{if(!A.timeout)return vu;let t=null,r=_n.setFastTimeout(()=>{t=setImmediate(()=>{Hu(e.deref(),A)})},A.timeout);return()=>{_n.clearFastTimeout(r),clearImmediate(t)}};function Hu(e,A){if(e==null)return;let t="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?t+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:t+=` (attempted address: ${A.hostname}:${A.port},`,t+=` timeout: ${A.timeout}ms)`,Vu.destroy(e,new F0(t))}qu.exports=R0});var Ou=f(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.enumToMap=void 0;function N0(e){let A={};return Object.keys(e).forEach(t=>{let r=e[t];typeof r=="number"&&(A[t]=r)}),A}Zn.enumToMap=N0});var Wu=f(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.SPECIAL_HEADERS=w.HEADER_STATE=w.MINOR=w.MAJOR=w.CONNECTION_TOKEN_CHARS=w.HEADER_CHARS=w.TOKEN=w.STRICT_TOKEN=w.HEX=w.URL_CHAR=w.STRICT_URL_CHAR=w.USERINFO_CHARS=w.MARK=w.ALPHANUM=w.NUM=w.HEX_MAP=w.NUM_MAP=w.ALPHA=w.FINISH=w.H_METHOD_MAP=w.METHOD_MAP=w.METHODS_RTSP=w.METHODS_ICE=w.METHODS_HTTP=w.METHODS=w.LENIENT_FLAGS=w.FLAGS=w.TYPE=w.ERROR=void 0;var U0=Ou(),M0;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(M0=w.ERROR||(w.ERROR={}));var L0;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(L0=w.TYPE||(w.TYPE={}));var T0;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(T0=w.FLAGS||(w.FLAGS={}));var x0;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(x0=w.LENIENT_FLAGS||(w.LENIENT_FLAGS={}));var F;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(F=w.METHODS||(w.METHODS={}));w.METHODS_HTTP=[F.DELETE,F.GET,F.HEAD,F.POST,F.PUT,F.CONNECT,F.OPTIONS,F.TRACE,F.COPY,F.LOCK,F.MKCOL,F.MOVE,F.PROPFIND,F.PROPPATCH,F.SEARCH,F.UNLOCK,F.BIND,F.REBIND,F.UNBIND,F.ACL,F.REPORT,F.MKACTIVITY,F.CHECKOUT,F.MERGE,F["M-SEARCH"],F.NOTIFY,F.SUBSCRIBE,F.UNSUBSCRIBE,F.PATCH,F.PURGE,F.MKCALENDAR,F.LINK,F.UNLINK,F.PRI,F.SOURCE];w.METHODS_ICE=[F.SOURCE];w.METHODS_RTSP=[F.OPTIONS,F.DESCRIBE,F.ANNOUNCE,F.SETUP,F.PLAY,F.PAUSE,F.TEARDOWN,F.GET_PARAMETER,F.SET_PARAMETER,F.REDIRECT,F.RECORD,F.FLUSH,F.GET,F.POST];w.METHOD_MAP=U0.enumToMap(F);w.H_METHOD_MAP={};Object.keys(w.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(w.H_METHOD_MAP[e]=w.METHOD_MAP[e])});var Y0;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Y0=w.FINISH||(w.FINISH={}));w.ALPHA=[];for(let e=65;e<=90;e++)w.ALPHA.push(String.fromCharCode(e)),w.ALPHA.push(String.fromCharCode(e+32));w.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};w.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};w.NUM=["0","1","2","3","4","5","6","7","8","9"];w.ALPHANUM=w.ALPHA.concat(w.NUM);w.MARK=["-","_",".","!","~","*","'","(",")"];w.USERINFO_CHARS=w.ALPHANUM.concat(w.MARK).concat(["%",";",":","&","=","+","$",","]);w.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(w.ALPHANUM);w.URL_CHAR=w.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)w.URL_CHAR.push(e);w.HEX=w.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);w.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(w.ALPHANUM);w.TOKEN=w.STRICT_TOKEN.concat([" "]);w.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&w.HEADER_CHARS.push(e);w.CONNECTION_TOKEN_CHARS=w.HEADER_CHARS.filter(e=>e!==44);w.MAJOR=w.NUM_MAP;w.MINOR=w.MAJOR;var Gt;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(Gt=w.HEADER_STATE||(w.HEADER_STATE={}));w.SPECIAL_HEADERS={connection:Gt.CONNECTION,"content-length":Gt.CONTENT_LENGTH,"proxy-connection":Gt.CONNECTION,"transfer-encoding":Gt.TRANSFER_ENCODING,upgrade:Gt.UPGRADE}});var Li=f((jL,Pu)=>{"use strict";var{Buffer:G0}=d("node:buffer");Pu.exports=G0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var Zu=f(($L,_u)=>{"use strict";var{Buffer:J0}=d("node:buffer");_u.exports=J0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Tr=f((eT,tl)=>{"use strict";var zu=["GET","HEAD","POST"],v0=new Set(zu),H0=[101,204,205,304],Ku=[301,302,303,307,308],V0=new Set(Ku),Xu=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],q0=new Set(Xu),ju=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],O0=new Set(ju),W0=["follow","manual","error"],$u=["GET","HEAD","OPTIONS","TRACE"],P0=new Set($u),_0=["navigate","same-origin","no-cors","cors"],Z0=["omit","same-origin","include"],z0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],K0=["content-encoding","content-language","content-location","content-type","content-length"],X0=["half"],el=["CONNECT","TRACE","TRACK"],j0=new Set(el),Al=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],$0=new Set(Al);tl.exports={subresource:Al,forbiddenMethods:el,requestBodyHeader:K0,referrerPolicy:ju,requestRedirect:W0,requestMode:_0,requestCredentials:Z0,requestCache:z0,redirectStatus:Ku,corsSafeListedMethods:zu,nullBodyStatus:H0,safeMethods:$u,badPorts:Xu,requestDuplex:X0,subresourceSet:$0,badPortsSet:q0,redirectStatusSet:V0,corsSafeListedMethodsSet:v0,safeMethodsSet:P0,forbiddenMethodsSet:j0,referrerPolicySet:O0}});var xi=f((AT,rl)=>{"use strict";var Ti=Symbol.for("undici.globalOrigin.1");function ep(){return globalThis[Ti]}function Ap(e){if(e===void 0){Object.defineProperty(globalThis,Ti,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let A=new URL(e);if(A.protocol!=="http:"&&A.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${A.protocol}`);Object.defineProperty(globalThis,Ti,{value:A,writable:!0,enumerable:!1,configurable:!1})}rl.exports={getGlobalOrigin:ep,setGlobalOrigin:Ap}});var de=f((tT,gl)=>{"use strict";var Kn=d("node:assert"),tp=new TextEncoder,xr=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,rp=/[\u000A\u000D\u0009\u0020]/,np=/[\u0009\u000A\u000C\u000D\u0020]/g,sp=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function op(e){Kn(e.protocol==="data:");let A=ol(e,!0);A=A.slice(5);let t={position:0},r=Jt(",",A,t),n=r.length;if(r=lp(r,!0,!0),t.position>=A.length)return"failure";t.position++;let s=A.slice(n+1),o=il(s);if(/;(\u0020){0,}base64$/i.test(r)){let a=cl(o);if(o=ap(a),o==="failure")return"failure";r=r.slice(0,-6),r=r.replace(/(\u0020)+$/,""),r=r.slice(0,-1)}r.startsWith(";")&&(r="text/plain"+r);let i=Yi(r);return i==="failure"&&(i=Yi("text/plain;charset=US-ASCII")),{mimeType:i,body:o}}function ol(e,A=!1){if(!A)return e.href;let t=e.href,r=e.hash.length,n=r===0?t:t.substring(0,t.length-r);return!r&&t.endsWith("#")?n.slice(0,-1):n}function Xn(e,A,t){let r="";for(;t.position<A.length&&e(A[t.position]);)r+=A[t.position],t.position++;return r}function Jt(e,A,t){let r=A.indexOf(e,t.position),n=t.position;return r===-1?(t.position=A.length,A.slice(n)):(t.position=r,A.slice(n,t.position))}function il(e){let A=tp.encode(e);return ip(A)}function nl(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function sl(e){return e>=48&&e<=57?e-48:(e&223)-55}function ip(e){let A=e.length,t=new Uint8Array(A),r=0;for(let n=0;n<A;++n){let s=e[n];s!==37?t[r++]=s:s===37&&!(nl(e[n+1])&&nl(e[n+2]))?t[r++]=37:(t[r++]=sl(e[n+1])<<4|sl(e[n+2]),n+=2)}return A===r?t:t.subarray(0,r)}function Yi(e){e=zn(e,!0,!0);let A={position:0},t=Jt("/",e,A);if(t.length===0||!xr.test(t)||A.position>e.length)return"failure";A.position++;let r=Jt(";",e,A);if(r=zn(r,!1,!0),r.length===0||!xr.test(r))return"failure";let n=t.toLowerCase(),s=r.toLowerCase(),o={type:n,subtype:s,parameters:new Map,essence:`${n}/${s}`};for(;A.position<e.length;){A.position++,Xn(c=>rp.test(c),e,A);let i=Xn(c=>c!==";"&&c!=="=",e,A);if(i=i.toLowerCase(),A.position<e.length){if(e[A.position]===";")continue;A.position++}if(A.position>e.length)break;let a=null;if(e[A.position]==='"')a=al(e,A,!0),Jt(";",e,A);else if(a=Jt(";",e,A),a=zn(a,!1,!0),a.length===0)continue;i.length!==0&&xr.test(i)&&(a.length===0||sp.test(a))&&!o.parameters.has(i)&&o.parameters.set(i,a)}return o}function ap(e){e=e.replace(np,"");let A=e.length;if(A%4===0&&e.charCodeAt(A-1)===61&&(--A,e.charCodeAt(A-1)===61&&--A),A%4===1||/[^+/0-9A-Za-z]/.test(e.length===A?e:e.substring(0,A)))return"failure";let t=Buffer.from(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function al(e,A,t){let r=A.position,n="";for(Kn(e[A.position]==='"'),A.position++;n+=Xn(o=>o!=='"'&&o!=="\\",e,A),!(A.position>=e.length);){let s=e[A.position];if(A.position++,s==="\\"){if(A.position>=e.length){n+="\\";break}n+=e[A.position],A.position++}else{Kn(s==='"');break}}return t?n:e.slice(r,A.position)}function cp(e){Kn(e!=="failure");let{parameters:A,essence:t}=e,r=t;for(let[n,s]of A.entries())r+=";",r+=n,r+="=",xr.test(s)||(s=s.replace(/(\\|")/g,"\\$1"),s='"'+s,s+='"'),r+=s;return r}function gp(e){return e===13||e===10||e===9||e===32}function zn(e,A=!0,t=!0){return Gi(e,A,t,gp)}function up(e){return e===13||e===10||e===9||e===12||e===32}function lp(e,A=!0,t=!0){return Gi(e,A,t,up)}function Gi(e,A,t,r){let n=0,s=e.length-1;if(A)for(;n<e.length&&r(e.charCodeAt(n));)n++;if(t)for(;s>0&&r(e.charCodeAt(s));)s--;return n===0&&s===e.length-1?e:e.slice(n,s+1)}function cl(e){let A=e.length;if(65535>A)return String.fromCharCode.apply(null,e);let t="",r=0,n=65535;for(;r<A;)r+n>A&&(n=A-r),t+=String.fromCharCode.apply(null,e.subarray(r,r+=n));return t}function Ep(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}gl.exports={dataURLProcessor:op,URLSerializer:ol,collectASequenceOfCodePoints:Xn,collectASequenceOfCodePointsFast:Jt,stringPercentDecode:il,parseMIMEType:Yi,collectAnHTTPQuotedString:al,serializeAMimeType:cp,removeChars:Gi,removeHTTPWhitespace:zn,minimizeSupportedMimeType:Ep,HTTP_TOKEN_CODEPOINTS:xr,isomorphicDecode:cl}});var ue=f((rT,ul)=>{"use strict";var{types:tA,inspect:Qp}=d("node:util"),{markAsUncloneable:Bp}=d("node:worker_threads"),{toUSVString:Ip}=x(),p={};p.converters={};p.util={};p.errors={};p.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};p.errors.conversionFailed=function(e){let A=e.types.length===1?"":" one of",t=`${e.argument} could not be converted to${A}: ${e.types.join(", ")}.`;return p.errors.exception({header:e.prefix,message:t})};p.errors.invalidArgument=function(e){return p.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};p.brandCheck=function(e,A,t){if(t?.strict!==!1){if(!(e instanceof A)){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}}else if(e?.[Symbol.toStringTag]!==A.prototype[Symbol.toStringTag]){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}};p.argumentLengthCheck=function({length:e},A,t){if(e<A)throw p.errors.exception({message:`${A} argument${A!==1?"s":""} required, but${e?" only":""} ${e} found.`,header:t})};p.illegalConstructor=function(){throw p.errors.exception({header:"TypeError",message:"Illegal constructor"})};p.util.Type=function(e){switch(typeof e){case"undefined":return"Undefined";case"boolean":return"Boolean";case"string":return"String";case"symbol":return"Symbol";case"number":return"Number";case"bigint":return"BigInt";case"function":case"object":return e===null?"Null":"Object"}};p.util.markAsUncloneable=Bp||(()=>{});p.util.ConvertToInt=function(e,A,t,r){let n,s;A===64?(n=Math.pow(2,53)-1,t==="unsigned"?s=0:s=Math.pow(-2,53)+1):t==="unsigned"?(s=0,n=Math.pow(2,A)-1):(s=Math.pow(-2,A)-1,n=Math.pow(2,A-1)-1);let o=Number(e);if(o===0&&(o=0),r?.enforceRange===!0){if(Number.isNaN(o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY)throw p.errors.exception({header:"Integer conversion",message:`Could not convert ${p.util.Stringify(e)} to an integer.`});if(o=p.util.IntegerPart(o),o<s||o>n)throw p.errors.exception({header:"Integer conversion",message:`Value must be between ${s}-${n}, got ${o}.`});return o}return!Number.isNaN(o)&&r?.clamp===!0?(o=Math.min(Math.max(o,s),n),Math.floor(o)%2===0?o=Math.floor(o):o=Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY?0:(o=p.util.IntegerPart(o),o=o%Math.pow(2,A),t==="signed"&&o>=Math.pow(2,A)-1?o-Math.pow(2,A):o)};p.util.IntegerPart=function(e){let A=Math.floor(Math.abs(e));return e<0?-1*A:A};p.util.Stringify=function(e){switch(p.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return Qp(e);case"String":return`"${e}"`;default:return`${e}`}};p.sequenceConverter=function(e){return(A,t,r,n)=>{if(p.util.Type(A)!=="Object")throw p.errors.exception({header:t,message:`${r} (${p.util.Stringify(A)}) is not iterable.`});let s=typeof n=="function"?n():A?.[Symbol.iterator]?.(),o=[],i=0;if(s===void 0||typeof s.next!="function")throw p.errors.exception({header:t,message:`${r} is not iterable.`});for(;;){let{done:a,value:c}=s.next();if(a)break;o.push(e(c,t,`${r}[${i++}]`))}return o}};p.recordConverter=function(e,A){return(t,r,n)=>{if(p.util.Type(t)!=="Object")throw p.errors.exception({header:r,message:`${n} ("${p.util.Type(t)}") is not an Object.`});let s={};if(!tA.isProxy(t)){let i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(let a of i){let c=e(a,r,n),l=A(t[a],r,n);s[c]=l}return s}let o=Reflect.ownKeys(t);for(let i of o)if(Reflect.getOwnPropertyDescriptor(t,i)?.enumerable){let c=e(i,r,n),l=A(t[i],r,n);s[c]=l}return s}};p.interfaceConverter=function(e){return(A,t,r,n)=>{if(n?.strict!==!1&&!(A instanceof e))throw p.errors.exception({header:t,message:`Expected ${r} ("${p.util.Stringify(A)}") to be an instance of ${e.name}.`});return A}};p.dictionaryConverter=function(e){return(A,t,r)=>{let n=p.util.Type(A),s={};if(n==="Null"||n==="Undefined")return s;if(n!=="Object")throw p.errors.exception({header:t,message:`Expected ${A} to be one of: Null, Undefined, Object.`});for(let o of e){let{key:i,defaultValue:a,required:c,converter:l}=o;if(c===!0&&!Object.hasOwn(A,i))throw p.errors.exception({header:t,message:`Missing required key "${i}".`});let u=A[i],g=Object.hasOwn(o,"defaultValue");if(g&&u!==null&&(u??=a()),c||g||u!==void 0){if(u=l(u,t,`${r}.${i}`),o.allowedValues&&!o.allowedValues.includes(u))throw p.errors.exception({header:t,message:`${u} is not an accepted type. Expected one of ${o.allowedValues.join(", ")}.`});s[i]=u}}return s}};p.nullableConverter=function(e){return(A,t,r)=>A===null?A:e(A,t,r)};p.converters.DOMString=function(e,A,t,r){if(e===null&&r?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw p.errors.exception({header:A,message:`${t} is a symbol, which cannot be converted to a DOMString.`});return String(e)};p.converters.ByteString=function(e,A,t){let r=p.converters.DOMString(e,A,t);for(let n=0;n<r.length;n++)if(r.charCodeAt(n)>255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${n} has a value of ${r.charCodeAt(n)} which is greater than 255.`);return r};p.converters.USVString=Ip;p.converters.boolean=function(e){return!!e};p.converters.any=function(e){return e};p.converters["long long"]=function(e,A,t){return p.util.ConvertToInt(e,64,"signed",void 0,A,t)};p.converters["unsigned long long"]=function(e,A,t){return p.util.ConvertToInt(e,64,"unsigned",void 0,A,t)};p.converters["unsigned long"]=function(e,A,t){return p.util.ConvertToInt(e,32,"unsigned",void 0,A,t)};p.converters["unsigned short"]=function(e,A,t,r){return p.util.ConvertToInt(e,16,"unsigned",r,A,t)};p.converters.ArrayBuffer=function(e,A,t,r){if(p.util.Type(e)!=="Object"||!tA.isAnyArrayBuffer(e))throw p.errors.conversionFailed({prefix:A,argument:`${t} ("${p.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(r?.allowShared===!1&&tA.isSharedArrayBuffer(e))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.TypedArray=function(e,A,t,r,n){if(p.util.Type(e)!=="Object"||!tA.isTypedArray(e)||e.constructor.name!==A.name)throw p.errors.conversionFailed({prefix:t,argument:`${r} ("${p.util.Stringify(e)}")`,types:[A.name]});if(n?.allowShared===!1&&tA.isSharedArrayBuffer(e.buffer))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.DataView=function(e,A,t,r){if(p.util.Type(e)!=="Object"||!tA.isDataView(e))throw p.errors.exception({header:A,message:`${t} is not a DataView.`});if(r?.allowShared===!1&&tA.isSharedArrayBuffer(e.buffer))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.BufferSource=function(e,A,t,r){if(tA.isAnyArrayBuffer(e))return p.converters.ArrayBuffer(e,A,t,{...r,allowShared:!1});if(tA.isTypedArray(e))return p.converters.TypedArray(e,e.constructor,A,t,{...r,allowShared:!1});if(tA.isDataView(e))return p.converters.DataView(e,A,t,{...r,allowShared:!1});throw p.errors.conversionFailed({prefix:A,argument:`${t} ("${p.util.Stringify(e)}")`,types:["BufferSource"]})};p.converters["sequence<ByteString>"]=p.sequenceConverter(p.converters.ByteString);p.converters["sequence<sequence<ByteString>>"]=p.sequenceConverter(p.converters["sequence<ByteString>"]);p.converters["record<ByteString, ByteString>"]=p.recordConverter(p.converters.ByteString,p.converters.ByteString);ul.exports={webidl:p}});var be=f((nT,Dl)=>{"use strict";var{Transform:Cp}=d("node:stream"),ll=d("node:zlib"),{redirectStatusSet:hp,referrerPolicySet:dp,badPortsSet:fp}=Tr(),{getGlobalOrigin:El}=xi(),{collectASequenceOfCodePoints:At,collectAnHTTPQuotedString:pp,removeChars:wp,parseMIMEType:mp}=de(),{performance:yp}=d("node:perf_hooks"),{isBlobLike:Dp,ReadableStreamFrom:bp,isValidHTTPToken:Ql,normalizedMethodRecordsBase:kp}=x(),tt=d("node:assert"),{isUint8Array:Fp}=d("node:util/types"),{webidl:Yr}=ue(),Bl=[],$n;try{$n=d("node:crypto");let e=["sha256","sha384","sha512"];Bl=$n.getHashes().filter(A=>e.includes(A))}catch{}function Il(e){let A=e.urlList,t=A.length;return t===0?null:A[t-1].toString()}function Rp(e,A){if(!hp.has(e.status))return null;let t=e.headersList.get("location",!0);return t!==null&&hl(t)&&(Cl(t)||(t=Sp(t)),t=new URL(t,Il(e))),t&&!t.hash&&(t.hash=A),t}function Cl(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t>126||t<32)return!1}return!0}function Sp(e){return Buffer.from(e,"binary").toString("utf8")}function Jr(e){return e.urlList[e.urlList.length-1]}function Np(e){let A=Jr(e);return ml(A)&&fp.has(A.port)?"blocked":"allowed"}function Up(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Mp(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(!(t===9||t>=32&&t<=126||t>=128&&t<=255))return!1}return!0}var Lp=Ql;function hl(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(`
2
- `)||e.includes("\r")||e.includes("\0"))===!1}function Tp(e,A){let{headersList:t}=A,r=(t.get("referrer-policy",!0)??"").split(","),n="";if(r.length>0)for(let s=r.length;s!==0;s--){let o=r[s-1].trim();if(dp.has(o)){n=o;break}}n!==""&&(e.referrerPolicy=n)}function xp(){return"allowed"}function Yp(){return"success"}function Gp(){return"success"}function Jp(e){let A=null;A=e.mode,e.headersList.set("sec-fetch-mode",A,!0)}function vp(e){let A=e.origin;if(!(A==="client"||A===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",A,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":A=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&vi(e.origin)&&!vi(Jr(e))&&(A=null);break;case"same-origin":es(e,Jr(e))||(A=null);break;default:}e.headersList.append("origin",A,!0)}}}function vt(e,A){return e}function Hp(e,A,t){return!e?.startTime||e.startTime<A?{domainLookupStartTime:A,domainLookupEndTime:A,connectionStartTime:A,connectionEndTime:A,secureConnectionStartTime:A,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:vt(e.domainLookupStartTime,t),domainLookupEndTime:vt(e.domainLookupEndTime,t),connectionStartTime:vt(e.connectionStartTime,t),connectionEndTime:vt(e.connectionEndTime,t),secureConnectionStartTime:vt(e.secureConnectionStartTime,t),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function Vp(e){return vt(yp.now(),e)}function qp(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function dl(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function Op(e){return{referrerPolicy:e.referrerPolicy}}function Wp(e){let A=e.referrerPolicy;tt(A);let t=null;if(e.referrer==="client"){let i=El();if(!i||i.origin==="null")return"no-referrer";t=new URL(i)}else e.referrer instanceof URL&&(t=e.referrer);let r=Ji(t),n=Ji(t,!0);r.toString().length>4096&&(r=n);let s=es(e,r),o=Gr(r)&&!Gr(e.url);switch(A){case"origin":return n??Ji(t,!0);case"unsafe-url":return r;case"same-origin":return s?n:"no-referrer";case"origin-when-cross-origin":return s?r:n;case"strict-origin-when-cross-origin":{let i=Jr(e);return es(r,i)?r:Gr(r)&&!Gr(i)?"no-referrer":n}default:return o?"no-referrer":n}}function Ji(e,A){return tt(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",A&&(e.pathname="",e.search=""),e)}function Gr(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return A(e.origin);function A(t){if(t==null||t==="null")return!1;let r=new URL(t);return!!(r.protocol==="https:"||r.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(r.hostname)||r.hostname==="localhost"||r.hostname.includes("localhost.")||r.hostname.endsWith(".localhost"))}}function Pp(e,A){if($n===void 0)return!0;let t=fl(A);if(t==="no metadata"||t.length===0)return!0;let r=Zp(t),n=zp(t,r);for(let s of n){let o=s.algo,i=s.hash,a=$n.createHash(o).update(e).digest("base64");if(a[a.length-1]==="="&&(a[a.length-2]==="="?a=a.slice(0,-2):a=a.slice(0,-1)),Kp(a,i))return!0}return!1}var _p=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function fl(e){let A=[],t=!0;for(let r of e.split(" ")){t=!1;let n=_p.exec(r);if(n===null||n.groups===void 0||n.groups.algo===void 0)continue;let s=n.groups.algo.toLowerCase();Bl.includes(s)&&A.push(n.groups)}return t===!0?"no metadata":A}function Zp(e){let A=e[0].algo;if(A[3]==="5")return A;for(let t=1;t<e.length;++t){let r=e[t];if(r.algo[3]==="5"){A="sha512";break}else{if(A[3]==="3")continue;r.algo[3]==="3"&&(A="sha384")}}return A}function zp(e,A){if(e.length===1)return e;let t=0;for(let r=0;r<e.length;++r)e[r].algo===A&&(e[t++]=e[r]);return e.length=t,e}function Kp(e,A){if(e.length!==A.length)return!1;for(let t=0;t<e.length;++t)if(e[t]!==A[t]){if(e[t]==="+"&&A[t]==="-"||e[t]==="/"&&A[t]==="_")continue;return!1}return!0}function Xp(e){}function es(e,A){return e.origin===A.origin&&e.origin==="null"||e.protocol===A.protocol&&e.hostname===A.hostname&&e.port===A.port}function jp(){let e,A;return{promise:new Promise((r,n)=>{e=r,A=n}),resolve:e,reject:A}}function $p(e){return e.controller.state==="aborted"}function ew(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Aw(e){return kp[e.toLowerCase()]??e}function tw(e){let A=JSON.stringify(e);if(A===void 0)throw new TypeError("Value is not JSON serializable");return tt(typeof A=="string"),A}var rw=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function pl(e,A,t=0,r=1){class n{#e;#A;#t;constructor(o,i){this.#e=o,this.#A=i,this.#t=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let o=this.#t,i=this.#e[A],a=i.length;if(o>=a)return{value:void 0,done:!0};let{[t]:c,[r]:l}=i[o];this.#t=o+1;let u;switch(this.#A){case"key":u=c;break;case"value":u=l;break;case"key+value":u=[c,l];break}return{value:u,done:!1}}}return delete n.prototype.constructor,Object.setPrototypeOf(n.prototype,rw),Object.defineProperties(n.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(s,o){return new n(s,o)}}function nw(e,A,t,r=0,n=1){let s=pl(e,t,r,n),o={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(a,c=globalThis){if(Yr.brandCheck(this,A),Yr.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof a!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:l,1:u}of s(this,"key+value"))a.call(c,u,l,this)}}};return Object.defineProperties(A.prototype,{...o,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:o.entries.value}})}async function sw(e,A,t){let r=A,n=t,s;try{s=e.stream.getReader()}catch(o){n(o);return}try{r(await wl(s))}catch(o){n(o)}}function ow(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function iw(e){try{e.close(),e.byobRequest?.respond(0)}catch(A){if(!A.message.includes("Controller is already closed")&&!A.message.includes("ReadableStream is already closed"))throw A}}var aw=/[^\x00-\xFF]/;function jn(e){return tt(!aw.test(e)),e}async function wl(e){let A=[],t=0;for(;;){let{done:r,value:n}=await e.read();if(r)return Buffer.concat(A,t);if(!Fp(n))throw new TypeError("Received non-Uint8Array chunk");A.push(n),t+=n.length}}function cw(e){tt("protocol"in e);let A=e.protocol;return A==="about:"||A==="blob:"||A==="data:"}function vi(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function ml(e){tt("protocol"in e);let A=e.protocol;return A==="http:"||A==="https:"}function gw(e,A){let t=e;if(!t.startsWith("bytes"))return"failure";let r={position:5};if(A&&At(a=>a===" "||a===" ",t,r),t.charCodeAt(r.position)!==61)return"failure";r.position++,A&&At(a=>a===" "||a===" ",t,r);let n=At(a=>{let c=a.charCodeAt(0);return c>=48&&c<=57},t,r),s=n.length?Number(n):null;if(A&&At(a=>a===" "||a===" ",t,r),t.charCodeAt(r.position)!==45)return"failure";r.position++,A&&At(a=>a===" "||a===" ",t,r);let o=At(a=>{let c=a.charCodeAt(0);return c>=48&&c<=57},t,r),i=o.length?Number(o):null;return r.position<t.length||i===null&&s===null||s>i?"failure":{rangeStartValue:s,rangeEndValue:i}}function uw(e,A,t){let r="bytes ";return r+=jn(`${e}`),r+="-",r+=jn(`${A}`),r+="/",r+=jn(`${t}`),r}var Hi=class extends Cp{#e;constructor(A){super(),this.#e=A}_transform(A,t,r){if(!this._inflateStream){if(A.length===0){r();return}this._inflateStream=(A[0]&15)===8?ll.createInflate(this.#e):ll.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",n=>this.destroy(n))}this._inflateStream.write(A,t,r)}_final(A){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),A()}};function lw(e){return new Hi(e)}function Ew(e){let A=null,t=null,r=null,n=yl("content-type",e);if(n===null)return"failure";for(let s of n){let o=mp(s);o==="failure"||o.essence==="*/*"||(r=o,r.essence!==t?(A=null,r.parameters.has("charset")&&(A=r.parameters.get("charset")),t=r.essence):!r.parameters.has("charset")&&A!==null&&r.parameters.set("charset",A))}return r??"failure"}function Qw(e){let A=e,t={position:0},r=[],n="";for(;t.position<A.length;){if(n+=At(s=>s!=='"'&&s!==",",A,t),t.position<A.length)if(A.charCodeAt(t.position)===34){if(n+=pp(A,t),t.position<A.length)continue}else tt(A.charCodeAt(t.position)===44),t.position++;n=wp(n,!0,!0,s=>s===9||s===32),r.push(n),n=""}return r}function yl(e,A){let t=A.get(e,!0);return t===null?null:Qw(t)}var Bw=new TextDecoder;function Iw(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),Bw.decode(e))}var Vi=class{get baseUrl(){return El()}get origin(){return this.baseUrl?.origin}policyContainer=dl()},qi=class{settingsObject=new Vi},Cw=new qi;Dl.exports={isAborted:$p,isCancelled:ew,isValidEncodedURL:Cl,createDeferredPromise:jp,ReadableStreamFrom:bp,tryUpgradeRequestToAPotentiallyTrustworthyURL:Xp,clampAndCoarsenConnectionTimingInfo:Hp,coarsenedSharedCurrentTime:Vp,determineRequestsReferrer:Wp,makePolicyContainer:dl,clonePolicyContainer:Op,appendFetchMetadata:Jp,appendRequestOriginHeader:vp,TAOCheck:Gp,corsCheck:Yp,crossOriginResourcePolicyCheck:xp,createOpaqueTimingInfo:qp,setRequestReferrerPolicyOnRedirect:Tp,isValidHTTPToken:Ql,requestBadPort:Np,requestCurrentURL:Jr,responseURL:Il,responseLocationURL:Rp,isBlobLike:Dp,isURLPotentiallyTrustworthy:Gr,isValidReasonPhrase:Mp,sameOrigin:es,normalizeMethod:Aw,serializeJavascriptValueToJSONString:tw,iteratorMixin:nw,createIterator:pl,isValidHeaderName:Lp,isValidHeaderValue:hl,isErrorLike:Up,fullyReadBody:sw,bytesMatch:Pp,isReadableStreamLike:ow,readableStreamClose:iw,isomorphicEncode:jn,urlIsLocal:cw,urlHasHttpsScheme:vi,urlIsHttpHttpsScheme:ml,readAllBytes:wl,simpleRangeHeaderValue:gw,buildContentRange:uw,parseMetadata:fl,createInflate:lw,extractMimeType:Ew,getDecodeSplit:yl,utf8DecodeBytes:Iw,environmentSettingsObject:Cw}});var LA=f((sT,bl)=>{"use strict";bl.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var Wi=f((oT,kl)=>{"use strict";var{Blob:hw,File:dw}=d("node:buffer"),{kState:dA}=LA(),{webidl:rA}=ue(),Oi=class e{constructor(A,t,r={}){let n=t,s=r.type,o=r.lastModified??Date.now();this[dA]={blobLike:A,name:n,type:s,lastModified:o}}stream(...A){return rA.brandCheck(this,e),this[dA].blobLike.stream(...A)}arrayBuffer(...A){return rA.brandCheck(this,e),this[dA].blobLike.arrayBuffer(...A)}slice(...A){return rA.brandCheck(this,e),this[dA].blobLike.slice(...A)}text(...A){return rA.brandCheck(this,e),this[dA].blobLike.text(...A)}get size(){return rA.brandCheck(this,e),this[dA].blobLike.size}get type(){return rA.brandCheck(this,e),this[dA].blobLike.type}get name(){return rA.brandCheck(this,e),this[dA].name}get lastModified(){return rA.brandCheck(this,e),this[dA].lastModified}get[Symbol.toStringTag](){return"File"}};rA.converters.Blob=rA.interfaceConverter(hw);function fw(e){return e instanceof dw||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}kl.exports={FileLike:Oi,isFileLike:fw}});var Hr=f((iT,Ul)=>{"use strict";var{isBlobLike:As,iteratorMixin:pw}=be(),{kState:Ie}=LA(),{kEnumerableProperty:Ht}=x(),{FileLike:Fl,isFileLike:ww}=Wi(),{webidl:z}=ue(),{File:Nl}=d("node:buffer"),Rl=d("node:util"),Sl=globalThis.File??Nl,vr=class e{constructor(A){if(z.util.markAsUncloneable(this),A!==void 0)throw z.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[Ie]=[]}append(A,t,r=void 0){z.brandCheck(this,e);let n="FormData.append";if(z.argumentLengthCheck(arguments,2,n),arguments.length===3&&!As(t))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");A=z.converters.USVString(A,n,"name"),t=As(t)?z.converters.Blob(t,n,"value",{strict:!1}):z.converters.USVString(t,n,"value"),r=arguments.length===3?z.converters.USVString(r,n,"filename"):void 0;let s=Pi(A,t,r);this[Ie].push(s)}delete(A){z.brandCheck(this,e);let t="FormData.delete";z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie]=this[Ie].filter(r=>r.name!==A)}get(A){z.brandCheck(this,e);let t="FormData.get";z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name");let r=this[Ie].findIndex(n=>n.name===A);return r===-1?null:this[Ie][r].value}getAll(A){z.brandCheck(this,e);let t="FormData.getAll";return z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie].filter(r=>r.name===A).map(r=>r.value)}has(A){z.brandCheck(this,e);let t="FormData.has";return z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie].findIndex(r=>r.name===A)!==-1}set(A,t,r=void 0){z.brandCheck(this,e);let n="FormData.set";if(z.argumentLengthCheck(arguments,2,n),arguments.length===3&&!As(t))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");A=z.converters.USVString(A,n,"name"),t=As(t)?z.converters.Blob(t,n,"name",{strict:!1}):z.converters.USVString(t,n,"name"),r=arguments.length===3?z.converters.USVString(r,n,"name"):void 0;let s=Pi(A,t,r),o=this[Ie].findIndex(i=>i.name===A);o!==-1?this[Ie]=[...this[Ie].slice(0,o),s,...this[Ie].slice(o+1).filter(i=>i.name!==A)]:this[Ie].push(s)}[Rl.inspect.custom](A,t){let r=this[Ie].reduce((s,o)=>(s[o.name]?Array.isArray(s[o.name])?s[o.name].push(o.value):s[o.name]=[s[o.name],o.value]:s[o.name]=o.value,s),{__proto__:null});t.depth??=A,t.colors??=!0;let n=Rl.formatWithOptions(t,r);return`FormData ${n.slice(n.indexOf("]")+2)}`}};pw("FormData",vr,Ie,"name","value");Object.defineProperties(vr.prototype,{append:Ht,delete:Ht,get:Ht,getAll:Ht,has:Ht,set:Ht,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Pi(e,A,t){if(typeof A!="string"){if(ww(A)||(A=A instanceof Blob?new Sl([A],"blob",{type:A.type}):new Fl(A,"blob",{type:A.type})),t!==void 0){let r={type:A.type,lastModified:A.lastModified};A=A instanceof Nl?new Sl([A],t,r):new Fl(A,t,r)}}return{name:e,value:A}}Ul.exports={FormData:vr,makeEntry:Pi}});var Gl=f((aT,Yl)=>{"use strict";var{isUSVString:Ml,bufferToLowerCasedHeaderName:mw}=x(),{utf8DecodeBytes:yw}=be(),{HTTP_TOKEN_CODEPOINTS:Dw,isomorphicDecode:Ll}=de(),{isFileLike:bw}=Wi(),{makeEntry:kw}=Hr(),ts=d("node:assert"),{File:Fw}=d("node:buffer"),Rw=globalThis.File??Fw,Sw=Buffer.from('form-data; name="'),Tl=Buffer.from("; filename"),Nw=Buffer.from("--"),Uw=Buffer.from(`--\r
1
+ var lf=Object.create;var qo=Object.defineProperty;var Ef=Object.getOwnPropertyDescriptor;var Qf=Object.getOwnPropertyNames;var Bf=Object.getPrototypeOf,If=Object.prototype.hasOwnProperty;var d=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(A,t)=>(typeof require<"u"?require:A)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var MA=(e,A,t)=>()=>{if(t)throw t[0];try{return e&&(A=e(e=0)),A}catch(r){throw t=[r],r}};var f=(e,A)=>()=>{try{return A||e((A={exports:{}}).exports,A),A.exports}catch(t){throw A=0,t}},Cf=(e,A)=>{for(var t in A)qo(e,t,{get:A[t],enumerable:!0})},hf=(e,A,t,r)=>{if(A&&typeof A=="object"||typeof A=="function")for(let n of Qf(A))!If.call(e,n)&&n!==t&&qo(e,n,{get:()=>A[n],enumerable:!(r=Ef(A,n))||r.enumerable});return e};var df=(e,A,t)=>(t=e!=null?lf(Bf(e)):{},hf(A||!e||!e.__esModule?qo(t,"default",{value:e,enumerable:!0}):t,e));var j=f((GL,Lg)=>{Lg.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kInterceptors:Symbol("dispatch interceptors"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var v=f((JL,su)=>{"use strict";var Tg=Symbol.for("undici.error.UND_ERR"),$=class extends Error{constructor(A){super(A),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[Tg]===!0}[Tg]=!0},xg=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),Wo=class extends ${constructor(A){super(A),this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[xg]===!0}[xg]=!0},Yg=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),Po=class extends ${constructor(A){super(A),this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[Yg]===!0}[Yg]=!0},Gg=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),_o=class extends ${constructor(A){super(A),this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[Gg]===!0}[Gg]=!0},Jg=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),Zo=class extends ${constructor(A){super(A),this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[Jg]===!0}[Jg]=!0},vg=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),zo=class extends ${constructor(A,t,r,n){super(A),this.name="ResponseStatusCodeError",this.message=A||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=n,this.status=t,this.statusCode=t,this.headers=r}static[Symbol.hasInstance](A){return A&&A[vg]===!0}[vg]=!0},Hg=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),Ko=class extends ${constructor(A){super(A),this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[Hg]===!0}[Hg]=!0},Vg=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),Xo=class extends ${constructor(A){super(A),this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[Vg]===!0}[Vg]=!0},qg=Symbol.for("undici.error.UND_ERR_ABORT"),Ln=class extends ${constructor(A){super(A),this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[qg]===!0}[qg]=!0},Og=Symbol.for("undici.error.UND_ERR_ABORTED"),jo=class extends Ln{constructor(A){super(A),this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[Og]===!0}[Og]=!0},Wg=Symbol.for("undici.error.UND_ERR_INFO"),$o=class extends ${constructor(A){super(A),this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[Wg]===!0}[Wg]=!0},Pg=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),ei=class extends ${constructor(A){super(A),this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[Pg]===!0}[Pg]=!0},_g=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),Ai=class extends ${constructor(A){super(A),this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[_g]===!0}[_g]=!0},Zg=Symbol.for("undici.error.UND_ERR_DESTROYED"),ti=class extends ${constructor(A){super(A),this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[Zg]===!0}[Zg]=!0},zg=Symbol.for("undici.error.UND_ERR_CLOSED"),ri=class extends ${constructor(A){super(A),this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[zg]===!0}[zg]=!0},Kg=Symbol.for("undici.error.UND_ERR_SOCKET"),ni=class extends ${constructor(A,t){super(A),this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=t}static[Symbol.hasInstance](A){return A&&A[Kg]===!0}[Kg]=!0},Xg=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),si=class extends ${constructor(A){super(A),this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[Xg]===!0}[Xg]=!0},jg=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),oi=class extends ${constructor(A){super(A),this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[jg]===!0}[jg]=!0},$g=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),ii=class extends Error{constructor(A,t,r){super(A),this.name="HTTPParserError",this.code=t?`HPE_${t}`:void 0,this.data=r?r.toString():void 0}static[Symbol.hasInstance](A){return A&&A[$g]===!0}[$g]=!0},eu=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),ai=class extends ${constructor(A){super(A),this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[eu]===!0}[eu]=!0},Au=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),ci=class extends ${constructor(A,t,{headers:r,data:n}){super(A),this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=t,this.data=n,this.headers=r}static[Symbol.hasInstance](A){return A&&A[Au]===!0}[Au]=!0},tu=Symbol.for("undici.error.UND_ERR_RESPONSE"),gi=class extends ${constructor(A,t,{headers:r,data:n}){super(A),this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=t,this.data=n,this.headers=r}static[Symbol.hasInstance](A){return A&&A[tu]===!0}[tu]=!0},ru=Symbol.for("undici.error.UND_ERR_PRX_TLS"),ui=class extends ${constructor(A,t,r){super(t,{cause:A,...r??{}}),this.name="SecureProxyConnectionError",this.message=t||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[ru]===!0}[ru]=!0},nu=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),li=class extends ${constructor(A){super(A),this.name="MessageSizeExceededError",this.message=A||"Max decompressed message size exceeded",this.code="UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"}static[Symbol.hasInstance](A){return A&&A[nu]===!0}get[nu](){return!0}};su.exports={AbortError:Ln,HTTPParserError:ii,UndiciError:$,HeadersTimeoutError:Po,HeadersOverflowError:_o,BodyTimeoutError:Zo,RequestContentLengthMismatchError:ei,ConnectTimeoutError:Wo,ResponseStatusCodeError:zo,InvalidArgumentError:Ko,InvalidReturnValueError:Xo,RequestAbortedError:jo,ClientDestroyedError:ti,ClientClosedError:ri,InformationalError:$o,SocketError:ni,NotSupportedError:si,ResponseContentLengthMismatchError:Ai,BalancedPoolMissingUpstreamError:oi,ResponseExceededMaxSizeError:ai,RequestRetryError:ci,ResponseError:gi,SecureProxyConnectionError:ui,MessageSizeExceededError:li}});var xn=f((vL,ou)=>{"use strict";var Tn={},Ei=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"];for(let e=0;e<Ei.length;++e){let A=Ei[e],t=A.toLowerCase();Tn[A]=Tn[t]=t}Object.setPrototypeOf(Tn,null);ou.exports={wellknownHeaderNames:Ei,headerNameLowerCasedRecord:Tn}});var gu=f((HL,cu)=>{"use strict";var{wellknownHeaderNames:iu,headerNameLowerCasedRecord:ff}=xn(),Qi=class e{value=null;left=null;middle=null;right=null;code;constructor(A,t,r){if(r===void 0||r>=A.length)throw new TypeError("Unreachable");if((this.code=A.charCodeAt(r))>127)throw new TypeError("key must be ascii string");A.length!==++r?this.middle=new e(A,t,r):this.value=t}add(A,t){let r=A.length;if(r===0)throw new TypeError("Unreachable");let n=0,s=this;for(;;){let o=A.charCodeAt(n);if(o>127)throw new TypeError("key must be ascii string");if(s.code===o)if(r===++n){s.value=t;break}else if(s.middle!==null)s=s.middle;else{s.middle=new e(A,t,n);break}else if(s.code<o)if(s.left!==null)s=s.left;else{s.left=new e(A,t,n);break}else if(s.right!==null)s=s.right;else{s.right=new e(A,t,n);break}}}search(A){let t=A.length,r=0,n=this;for(;n!==null&&r<t;){let s=A[r];for(s<=90&&s>=65&&(s|=32);n!==null;){if(s===n.code){if(t===++r)return n;n=n.middle;break}n=n.code<s?n.left:n.right}}return null}},Yn=class{node=null;insert(A,t){this.node===null?this.node=new Qi(A,t,0):this.node.add(A,t)}lookup(A){return this.node?.search(A)?.value??null}},au=new Yn;for(let e=0;e<iu.length;++e){let A=ff[iu[e]];au.insert(A,A)}cu.exports={TernarySearchTree:Yn,tree:au}});var x=f((VL,bu)=>{"use strict";var Sr=d("node:assert"),{kDestroyed:lu,kBodyUsed:Nt,kListeners:Bi,kBody:uu}=j(),{IncomingMessage:pf}=d("node:http"),vn=d("node:stream"),wf=d("node:net"),{Blob:mf}=d("node:buffer"),yf=d("node:util"),{stringify:Df}=d("node:querystring"),{EventEmitter:bf}=d("node:events"),{InvalidArgumentError:ce}=v(),{headerNameLowerCasedRecord:kf}=xn(),{tree:Eu}=gu(),[Ff,Rf]=process.versions.node.split(".").map(e=>Number(e)),Jn=class{constructor(A){this[uu]=A,this[Nt]=!1}async*[Symbol.asyncIterator](){Sr(!this[Nt],"disturbed"),this[Nt]=!0,yield*this[uu]}};function Sf(e){return Hn(e)?(hu(e)===0&&e.on("data",function(){Sr(!1)}),typeof e.readableDidRead!="boolean"&&(e[Nt]=!1,bf.prototype.on.call(e,"data",function(){this[Nt]=!0})),e):e&&typeof e.pipeTo=="function"?new Jn(e):e&&typeof e!="string"&&!ArrayBuffer.isView(e)&&Cu(e)?new Jn(e):e}function Nf(){}function Hn(e){return e&&typeof e=="object"&&typeof e.pipe=="function"&&typeof e.on=="function"}function Qu(e){if(e===null)return!1;if(e instanceof mf)return!0;if(typeof e!="object")return!1;{let A=e[Symbol.toStringTag];return(A==="Blob"||A==="File")&&("stream"in e&&typeof e.stream=="function"||"arrayBuffer"in e&&typeof e.arrayBuffer=="function")}}function Uf(e,A){if(e.includes("?")||e.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let t=Df(A);return t&&(e+="?"+t),e}function Bu(e){let A=parseInt(e,10);return A===Number(e)&&A>=0&&A<=65535}function Gn(e){return e!=null&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&(e[4]===":"||e[4]==="s"&&e[5]===":")}function Iu(e){if(typeof e=="string"){if(e=new URL(e),!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}if(!e||typeof e!="object")throw new ce("Invalid URL: The URL argument must be a non-null object.");if(!(e instanceof URL)){if(e.port!=null&&e.port!==""&&Bu(e.port)===!1)throw new ce("Invalid URL: port must be a valid integer or a string representation of an integer.");if(e.path!=null&&typeof e.path!="string")throw new ce("Invalid URL path: the path must be a string or null/undefined.");if(e.pathname!=null&&typeof e.pathname!="string")throw new ce("Invalid URL pathname: the pathname must be a string or null/undefined.");if(e.hostname!=null&&typeof e.hostname!="string")throw new ce("Invalid URL hostname: the hostname must be a string or null/undefined.");if(e.origin!=null&&typeof e.origin!="string")throw new ce("Invalid URL origin: the origin must be a string or null/undefined.");if(!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");let A=e.port!=null?e.port:e.protocol==="https:"?443:80,t=e.origin!=null?e.origin:`${e.protocol||""}//${e.hostname||""}:${A}`,r=e.path!=null?e.path:`${e.pathname||""}${e.search||""}`;return t[t.length-1]==="/"&&(t=t.slice(0,t.length-1)),r&&r[0]!=="/"&&(r=`/${r}`),new URL(`${t}${r}`)}if(!Gn(e.origin||e.protocol))throw new ce("Invalid URL protocol: the URL must start with `http:` or `https:`.");return e}function Mf(e){if(e=Iu(e),e.pathname!=="/"||e.search||e.hash)throw new ce("invalid url");return e}function Lf(e){if(e[0]==="["){let t=e.indexOf("]");return Sr(t!==-1),e.substring(1,t)}let A=e.indexOf(":");return A===-1?e:e.substring(0,A)}function Tf(e){if(!e)return null;Sr(typeof e=="string");let A=Lf(e);return wf.isIP(A)?"":A}function xf(e){return JSON.parse(JSON.stringify(e))}function Yf(e){return e!=null&&typeof e[Symbol.asyncIterator]=="function"}function Cu(e){return e!=null&&(typeof e[Symbol.iterator]=="function"||typeof e[Symbol.asyncIterator]=="function")}function hu(e){if(e==null)return 0;if(Hn(e)){let A=e._readableState;return A&&A.objectMode===!1&&A.ended===!0&&Number.isFinite(A.length)?A.length:null}else{if(Qu(e))return e.size!=null?e.size:null;if(pu(e))return e.byteLength}return null}function du(e){return e&&!!(e.destroyed||e[lu]||vn.isDestroyed?.(e))}function Gf(e,A){e==null||!Hn(e)||du(e)||(typeof e.destroy=="function"?(Object.getPrototypeOf(e).constructor===pf&&(e.socket=null),e.destroy(A)):A&&queueMicrotask(()=>{e.emit("error",A)}),e.destroyed!==!0&&(e[lu]=!0))}var Jf=/timeout=(\d+)/;function vf(e){let A=e.toString().match(Jf);return A?parseInt(A[1],10)*1e3:null}function fu(e){return typeof e=="string"?kf[e]??e.toLowerCase():Eu.lookup(e)??e.toString("latin1").toLowerCase()}function Hf(e){return Eu.lookup(e)??e.toString("latin1").toLowerCase()}function Vf(e,A){A===void 0&&(A={});for(let t=0;t<e.length;t+=2){let r=fu(e[t]),n=A[r];if(n)typeof n=="string"&&(n=[n],A[r]=n),n.push(e[t+1].toString("utf8"));else{let s=e[t+1];typeof s=="string"?A[r]=s:A[r]=Array.isArray(s)?s.map(o=>o.toString("utf8")):s.toString("utf8")}}return"content-length"in A&&"content-disposition"in A&&(A["content-disposition"]=Buffer.from(A["content-disposition"]).toString("latin1")),A}function qf(e){let A=e.length,t=new Array(A),r=!1,n=-1,s,o,i=0;for(let a=0;a<e.length;a+=2)s=e[a],o=e[a+1],typeof s!="string"&&(s=s.toString()),typeof o!="string"&&(o=o.toString("utf8")),i=s.length,i===14&&s[7]==="-"&&(s==="content-length"||s.toLowerCase()==="content-length")?r=!0:i===19&&s[7]==="-"&&(s==="content-disposition"||s.toLowerCase()==="content-disposition")&&(n=a+1),t[a]=s,t[a+1]=o;return r&&n!==-1&&(t[n]=Buffer.from(t[n]).toString("latin1")),t}function pu(e){return e instanceof Uint8Array||Buffer.isBuffer(e)}function Of(e,A,t){if(!e||typeof e!="object")throw new ce("handler must be an object");if(typeof e.onConnect!="function")throw new ce("invalid onConnect method");if(typeof e.onError!="function")throw new ce("invalid onError method");if(typeof e.onBodySent!="function"&&e.onBodySent!==void 0)throw new ce("invalid onBodySent method");if(t||A==="CONNECT"){if(typeof e.onUpgrade!="function")throw new ce("invalid onUpgrade method")}else{if(typeof e.onHeaders!="function")throw new ce("invalid onHeaders method");if(typeof e.onData!="function")throw new ce("invalid onData method");if(typeof e.onComplete!="function")throw new ce("invalid onComplete method")}}function Wf(e){return!!(e&&(vn.isDisturbed(e)||e[Nt]))}function Pf(e){return!!(e&&vn.isErrored(e))}function _f(e){return!!(e&&vn.isReadable(e))}function Zf(e){return{localAddress:e.localAddress,localPort:e.localPort,remoteAddress:e.remoteAddress,remotePort:e.remotePort,remoteFamily:e.remoteFamily,timeout:e.timeout,bytesWritten:e.bytesWritten,bytesRead:e.bytesRead}}function zf(e){let A;return new ReadableStream({async start(){A=e[Symbol.asyncIterator]()},async pull(t){let{done:r,value:n}=await A.next();if(r)queueMicrotask(()=>{t.close(),t.byobRequest?.respond(0)});else{let s=Buffer.isBuffer(n)?n:Buffer.from(n);s.byteLength&&t.enqueue(new Uint8Array(s))}return t.desiredSize>0},async cancel(t){await A.return()},type:"bytes"})}function Kf(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function Xf(e,A){return"addEventListener"in e?(e.addEventListener("abort",A,{once:!0}),()=>e.removeEventListener("abort",A)):(e.addListener("abort",A),()=>e.removeListener("abort",A))}var jf=typeof String.prototype.toWellFormed=="function",$f=typeof String.prototype.isWellFormed=="function";function wu(e){return jf?`${e}`.toWellFormed():yf.toUSVString(e)}function e0(e){return $f?`${e}`.isWellFormed():wu(e)===`${e}`}function mu(e){switch(e){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return e>=33&&e<=126}}function A0(e){if(e.length===0)return!1;for(let A=0;A<e.length;++A)if(!mu(e.charCodeAt(A)))return!1;return!0}var t0=/[^\t\x20-\x7e\x80-\xff]/;function r0(e){return!t0.test(e)}function n0(e){if(e==null||e==="")return{start:0,end:null,size:null};let A=e?e.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return A?{start:parseInt(A[1]),end:A[2]?parseInt(A[2]):null,size:A[3]?parseInt(A[3]):null}:null}function s0(e,A,t){return(e[Bi]??=[]).push([A,t]),e.on(A,t),e}function o0(e){for(let[A,t]of e[Bi]??[])e.removeListener(A,t);e[Bi]=null}function i0(e,A,t){try{A.onError(t),Sr(A.aborted)}catch(r){e.emit("error",r)}}var yu=Object.create(null);yu.enumerable=!0;var Ii={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},Du={...Ii,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(Ii,null);Object.setPrototypeOf(Du,null);bu.exports={kEnumerableProperty:yu,nop:Nf,isDisturbed:Wf,isErrored:Pf,isReadable:_f,toUSVString:wu,isUSVString:e0,isBlobLike:Qu,parseOrigin:Mf,parseURL:Iu,getServerName:Tf,isStream:Hn,isIterable:Cu,isAsyncIterable:Yf,isDestroyed:du,headerNameToString:fu,bufferToLowerCasedHeaderName:Hf,addListener:s0,removeAllListeners:o0,errorRequest:i0,parseRawHeaders:qf,parseHeaders:Vf,parseKeepAliveTimeout:vf,destroy:Gf,bodyLength:hu,deepClone:xf,ReadableStreamFrom:zf,isBuffer:pu,validateHandler:Of,getSocketInfo:Zf,isFormDataLike:Kf,buildURL:Uf,addAbortListener:Xf,isValidHTTPToken:A0,isValidHeaderValue:r0,isTokenCharCode:mu,parseRangeHeader:n0,normalizedMethodRecordsBase:Ii,normalizedMethodRecords:Du,isValidPort:Bu,isHttpOrHttpsPrefixed:Gn,nodeMajor:Ff,nodeMinor:Rf,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"],wrapRequestBody:Sf}});var Ut=f((qL,Fu)=>{"use strict";var q=d("node:diagnostics_channel"),hi=d("node:util"),Vn=hi.debuglog("undici"),Ci=hi.debuglog("fetch"),$A=hi.debuglog("websocket"),ku=!1,a0={beforeConnect:q.channel("undici:client:beforeConnect"),connected:q.channel("undici:client:connected"),connectError:q.channel("undici:client:connectError"),sendHeaders:q.channel("undici:client:sendHeaders"),create:q.channel("undici:request:create"),bodySent:q.channel("undici:request:bodySent"),headers:q.channel("undici:request:headers"),trailers:q.channel("undici:request:trailers"),error:q.channel("undici:request:error"),open:q.channel("undici:websocket:open"),close:q.channel("undici:websocket:close"),socketError:q.channel("undici:websocket:socket_error"),ping:q.channel("undici:websocket:ping"),pong:q.channel("undici:websocket:pong")};if(Vn.enabled||Ci.enabled){let e=Ci.enabled?Ci:Vn;q.channel("undici:client:beforeConnect").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connecting to %s using %s%s",`${s}${n?`:${n}`:""}`,r,t)}),q.channel("undici:client:connected").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connected to %s using %s%s",`${s}${n?`:${n}`:""}`,r,t)}),q.channel("undici:client:connectError").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s},error:o}=A;e("connection to %s using %s%s errored - %s",`${s}${n?`:${n}`:""}`,r,t,o.message)}),q.channel("undici:client:sendHeaders").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("sending request to %s %s/%s",t,n,r)}),q.channel("undici:request:headers").subscribe(A=>{let{request:{method:t,path:r,origin:n},response:{statusCode:s}}=A;e("received response to %s %s/%s - HTTP %d",t,n,r,s)}),q.channel("undici:request:trailers").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("trailers received from %s %s/%s",t,n,r)}),q.channel("undici:request:error").subscribe(A=>{let{request:{method:t,path:r,origin:n},error:s}=A;e("request to %s %s/%s errored - %s",t,n,r,s.message)}),ku=!0}if($A.enabled){if(!ku){let e=Vn.enabled?Vn:$A;q.channel("undici:client:beforeConnect").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connecting to %s%s using %s%s",s,n?`:${n}`:"",r,t)}),q.channel("undici:client:connected").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s}}=A;e("connected to %s%s using %s%s",s,n?`:${n}`:"",r,t)}),q.channel("undici:client:connectError").subscribe(A=>{let{connectParams:{version:t,protocol:r,port:n,host:s},error:o}=A;e("connection to %s%s using %s%s errored - %s",s,n?`:${n}`:"",r,t,o.message)}),q.channel("undici:client:sendHeaders").subscribe(A=>{let{request:{method:t,path:r,origin:n}}=A;e("sending request to %s %s/%s",t,n,r)})}q.channel("undici:websocket:open").subscribe(e=>{let{address:{address:A,port:t}}=e;$A("connection opened %s%s",A,t?`:${t}`:"")}),q.channel("undici:websocket:close").subscribe(e=>{let{websocket:A,code:t,reason:r}=e;$A("closed connection to %s - %s %s",A.url,t,r)}),q.channel("undici:websocket:socket_error").subscribe(e=>{$A("connection errored - %s",e.message)}),q.channel("undici:websocket:ping").subscribe(e=>{$A("ping received")}),q.channel("undici:websocket:pong").subscribe(e=>{$A("pong received")})}Fu.exports={channels:a0}});var Uu=f((OL,Nu)=>{"use strict";var{InvalidArgumentError:W,NotSupportedError:c0}=v(),BA=d("node:assert"),{isValidHTTPToken:Su,isValidHeaderValue:Nr,isStream:g0,destroy:u0,isBuffer:l0,isFormDataLike:E0,isIterable:Q0,isBlobLike:B0,buildURL:I0,validateHandler:C0,getServerName:h0,normalizedMethodRecords:d0}=x(),{channels:AA}=Ut(),{headerNameLowerCasedRecord:Ru}=xn(),f0=/[^\u0021-\u00ff]/,Ye=Symbol("handler"),di=class{constructor(A,{path:t,method:r,body:n,headers:s,query:o,idempotent:i,blocking:a,upgrade:c,headersTimeout:l,bodyTimeout:u,reset:g,throwOnError:E,expectContinue:Q,servername:I},C){if(typeof t!="string")throw new W("path must be a string");if(t[0]!=="/"&&!(t.startsWith("http://")||t.startsWith("https://"))&&r!=="CONNECT")throw new W("path must be an absolute URL or start with a slash");if(f0.test(t))throw new W("invalid request path");if(typeof r!="string")throw new W("method must be a string");if(d0[r]===void 0&&!Su(r))throw new W("invalid request method");if(c&&typeof c!="string")throw new W("upgrade must be a string");if(c&&!Nr(c))throw new W("invalid upgrade header");if(l!=null&&(!Number.isFinite(l)||l<0))throw new W("invalid headersTimeout");if(u!=null&&(!Number.isFinite(u)||u<0))throw new W("invalid bodyTimeout");if(g!=null&&typeof g!="boolean")throw new W("invalid reset");if(Q!=null&&typeof Q!="boolean")throw new W("invalid expectContinue");if(this.headersTimeout=l,this.bodyTimeout=u,this.throwOnError=E===!0,this.method=r,this.abort=null,n==null)this.body=null;else if(g0(n)){this.body=n;let B=this.body._readableState;(!B||!B.autoDestroy)&&(this.endHandler=function(){u0(this)},this.body.on("end",this.endHandler)),this.errorHandler=h=>{this.abort?this.abort(h):this.error=h},this.body.on("error",this.errorHandler)}else if(l0(n))this.body=n.byteLength?n:null;else if(ArrayBuffer.isView(n))this.body=n.buffer.byteLength?Buffer.from(n.buffer,n.byteOffset,n.byteLength):null;else if(n instanceof ArrayBuffer)this.body=n.byteLength?Buffer.from(n):null;else if(typeof n=="string")this.body=n.length?Buffer.from(n):null;else if(E0(n)||Q0(n)||B0(n))this.body=n;else throw new W("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=c||null,this.path=o?I0(t,o):t,this.origin=A,this.idempotent=i??(r==="HEAD"||r==="GET"),this.blocking=a??!1,this.reset=g??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=Q??!1,Array.isArray(s)){if(s.length%2!==0)throw new W("headers array must be even");for(let B=0;B<s.length;B+=2)qn(this,s[B],s[B+1])}else if(s&&typeof s=="object")if(s[Symbol.iterator])for(let B of s){if(!Array.isArray(B)||B.length!==2)throw new W("headers must be in key-value pair format");qn(this,B[0],B[1])}else{let B=Object.keys(s);for(let h=0;h<B.length;++h)qn(this,B[h],s[B[h]])}else if(s!=null)throw new W("headers must be an object or an array");C0(C,r,c),this.servername=I||h0(this.host),this[Ye]=C,AA.create.hasSubscribers&&AA.create.publish({request:this})}onBodySent(A){if(this[Ye].onBodySent)try{return this[Ye].onBodySent(A)}catch(t){this.abort(t)}}onRequestSent(){if(AA.bodySent.hasSubscribers&&AA.bodySent.publish({request:this}),this[Ye].onRequestSent)try{return this[Ye].onRequestSent()}catch(A){this.abort(A)}}onConnect(A){if(BA(!this.aborted),BA(!this.completed),this.error)A(this.error);else return this.abort=A,this[Ye].onConnect(A)}onResponseStarted(){return this[Ye].onResponseStarted?.()}onHeaders(A,t,r,n){BA(!this.aborted),BA(!this.completed),AA.headers.hasSubscribers&&AA.headers.publish({request:this,response:{statusCode:A,headers:t,statusText:n}});try{return this[Ye].onHeaders(A,t,r,n)}catch(s){this.abort(s)}}onData(A){BA(!this.aborted),BA(!this.completed);try{return this[Ye].onData(A)}catch(t){return this.abort(t),!1}}onUpgrade(A,t,r){return BA(!this.aborted),BA(!this.completed),this[Ye].onUpgrade(A,t,r)}onComplete(A){this.onFinally(),BA(!this.aborted),this.completed=!0,AA.trailers.hasSubscribers&&AA.trailers.publish({request:this,trailers:A});try{return this[Ye].onComplete(A)}catch(t){this.onError(t)}}onError(A){if(this.onFinally(),AA.error.hasSubscribers&&AA.error.publish({request:this,error:A}),!this.aborted)return this.aborted=!0,this[Ye].onError(A)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(A,t){return qn(this,A,t),this}};function qn(e,A,t){if(t&&typeof t=="object"&&!Array.isArray(t))throw new W(`invalid ${A} header`);if(t===void 0)return;let r=Ru[A];if(r===void 0&&(r=A.toLowerCase(),Ru[r]===void 0&&!Su(r)))throw new W("invalid header key");if(Array.isArray(t)){let n=[];for(let s=0;s<t.length;s++)if(typeof t[s]=="string"){if(!Nr(t[s]))throw new W(`invalid ${A} header`);n.push(t[s])}else if(t[s]===null)n.push("");else{if(typeof t[s]=="object")throw new W(`invalid ${A} header`);{let o=`${t[s]}`;if(!Nr(o))throw new W(`invalid ${A} header`);n.push(o)}}t=n}else if(typeof t=="string"){if(!Nr(t))throw new W(`invalid ${A} header`)}else if(t===null)t="";else if(t=`${t}`,!Nr(t))throw new W(`invalid ${A} header`);if(r==="host"){if(e.host!==null)throw new W("duplicate host header");if(typeof t!="string")throw new W("invalid host header");e.host=t}else if(r==="content-length"){if(e.contentLength!==null)throw new W("duplicate content-length header");if(e.contentLength=parseInt(t,10),!Number.isFinite(e.contentLength))throw new W("invalid content-length header")}else if(e.contentType===null&&r==="content-type")e.contentType=t,e.headers.push(A,t);else{if(r==="transfer-encoding"||r==="keep-alive"||r==="upgrade")throw new W(`invalid ${r} header`);if(r==="connection"){let n=typeof t=="string"?t.toLowerCase():null;if(n!=="close"&&n!=="keep-alive")throw new W("invalid connection header");n==="close"&&(e.reset=!0)}else{if(r==="expect")throw new c0("expect header not supported");e.headers.push(A,t)}}}Nu.exports=di});var Ur=f((WL,Mu)=>{"use strict";var p0=d("node:events"),On=class extends p0{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...A){let t=Array.isArray(A[0])?A[0]:A,r=this.dispatch.bind(this);for(let n of t)if(n!=null){if(typeof n!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof n}`);if(r=n(r),r==null||typeof r!="function"||r.length!==2)throw new TypeError("invalid interceptor")}return new fi(this,r)}},fi=class extends On{#e=null;#A=null;constructor(A,t){super(),this.#e=A,this.#A=t}dispatch(...A){this.#A(...A)}close(...A){return this.#e.close(...A)}destroy(...A){return this.#e.destroy(...A)}};Mu.exports=On});var xt=f((PL,Lu)=>{"use strict";var w0=Ur(),{ClientDestroyedError:pi,ClientClosedError:m0,InvalidArgumentError:Mt}=v(),{kDestroy:y0,kClose:D0,kClosed:Mr,kDestroyed:Lt,kDispatch:wi,kInterceptors:et}=j(),IA=Symbol("onDestroyed"),Tt=Symbol("onClosed"),Wn=Symbol("Intercepted Dispatch"),mi=Symbol("webSocketOptions"),yi=class extends w0{constructor(A){super(),this[Lt]=!1,this[IA]=null,this[Mr]=!1,this[Tt]=[],this[mi]=A?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[mi].maxFragments??131072,maxPayloadSize:this[mi].maxPayloadSize??128*1024*1024}}get destroyed(){return this[Lt]}get closed(){return this[Mr]}get interceptors(){return this[et]}set interceptors(A){if(A){for(let t=A.length-1;t>=0;t--)if(typeof this[et][t]!="function")throw new Mt("interceptor must be an function")}this[et]=A}close(A){if(A===void 0)return new Promise((r,n)=>{this.close((s,o)=>s?n(s):r(o))});if(typeof A!="function")throw new Mt("invalid callback");if(this[Lt]){queueMicrotask(()=>A(new pi,null));return}if(this[Mr]){this[Tt]?this[Tt].push(A):queueMicrotask(()=>A(null,null));return}this[Mr]=!0,this[Tt].push(A);let t=()=>{let r=this[Tt];this[Tt]=null;for(let n=0;n<r.length;n++)r[n](null,null)};this[D0]().then(()=>this.destroy()).then(()=>{queueMicrotask(t)})}destroy(A,t){if(typeof A=="function"&&(t=A,A=null),t===void 0)return new Promise((n,s)=>{this.destroy(A,(o,i)=>o?s(o):n(i))});if(typeof t!="function")throw new Mt("invalid callback");if(this[Lt]){this[IA]?this[IA].push(t):queueMicrotask(()=>t(null,null));return}A||(A=new pi),this[Lt]=!0,this[IA]=this[IA]||[],this[IA].push(t);let r=()=>{let n=this[IA];this[IA]=null;for(let s=0;s<n.length;s++)n[s](null,null)};this[y0](A).then(()=>{queueMicrotask(r)})}[Wn](A,t){if(!this[et]||this[et].length===0)return this[Wn]=this[wi],this[wi](A,t);let r=this[wi].bind(this);for(let n=this[et].length-1;n>=0;n--)r=this[et][n](r);return this[Wn]=r,r(A,t)}dispatch(A,t){if(!t||typeof t!="object")throw new Mt("handler must be an object");try{if(!A||typeof A!="object")throw new Mt("opts must be an object.");if(this[Lt]||this[IA])throw new pi;if(this[Mr])throw new m0;return this[Wn](A,t)}catch(r){if(typeof t.onError!="function")throw new Mt("invalid onError method");return t.onError(r),!1}}};Lu.exports=yi});var Ni=f((_L,Gu)=>{"use strict";var Yt=0,Di=1e3,bi=(Di>>1)-1,CA,ki=Symbol("kFastTimer"),hA=[],Fi=-2,Ri=-1,xu=0,Tu=1;function Si(){Yt+=bi;let e=0,A=hA.length;for(;e<A;){let t=hA[e];t._state===xu?(t._idleStart=Yt-bi,t._state=Tu):t._state===Tu&&Yt>=t._idleStart+t._idleTimeout&&(t._state=Ri,t._idleStart=-1,t._onTimeout(t._timerArg)),t._state===Ri?(t._state=Fi,--A!==0&&(hA[e]=hA[A])):++e}hA.length=A,hA.length!==0&&Yu()}function Yu(){CA?CA.refresh():(clearTimeout(CA),CA=setTimeout(Si,bi),CA.unref&&CA.unref())}var Pn=class{[ki]=!0;_state=Fi;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,t,r){this._onTimeout=A,this._idleTimeout=t,this._timerArg=r,this.refresh()}refresh(){this._state===Fi&&hA.push(this),(!CA||hA.length===1)&&Yu(),this._state=xu}clear(){this._state=Ri,this._idleStart=-1}};Gu.exports={setTimeout(e,A,t){return A<=Di?setTimeout(e,A,t):new Pn(e,A,t)},clearTimeout(e){e[ki]?e.clear():clearTimeout(e)},setFastTimeout(e,A,t){return new Pn(e,A,t)},clearFastTimeout(e){e.clear()},now(){return Yt},tick(e=0){Yt+=e-Di+1,Si(),Si()},reset(){Yt=0,hA.length=0,clearTimeout(CA),CA=null},kFastTimer:ki}});var Lr=f((KL,qu)=>{"use strict";var b0=d("node:net"),Ju=d("node:assert"),Vu=x(),{InvalidArgumentError:k0,ConnectTimeoutError:F0}=v(),_n=Ni();function vu(){}var Ui,Mi;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Mi=class{constructor(A){this._maxCachedSessions=A,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(t=>{if(this._sessionCache.size<this._maxCachedSessions)return;let r=this._sessionCache.get(t);r!==void 0&&r.deref()===void 0&&this._sessionCache.delete(t)})}get(A){let t=this._sessionCache.get(A);return t?t.deref():null}set(A,t){this._maxCachedSessions!==0&&(this._sessionCache.set(A,new WeakRef(t)),this._sessionRegistry.register(t,A))}}:Mi=class{constructor(A){this._maxCachedSessions=A,this._sessionCache=new Map}get(A){return this._sessionCache.get(A)}set(A,t){if(this._maxCachedSessions!==0){if(this._sessionCache.size>=this._maxCachedSessions){let{value:r}=this._sessionCache.keys().next();this._sessionCache.delete(r)}this._sessionCache.set(A,t)}}};function R0({allowH2:e,maxCachedSessions:A,socketPath:t,timeout:r,session:n,...s}){if(A!=null&&(!Number.isInteger(A)||A<0))throw new k0("maxCachedSessions must be a positive integer or zero");let o={path:t,...s},i=new Mi(A??100);return r=r??1e4,e=e??!1,function({hostname:c,host:l,protocol:u,port:g,servername:E,localAddress:Q,httpSocket:I},C){let B;if(u==="https:"){Ui||(Ui=d("node:tls")),E=E||o.servername||Vu.getServerName(l)||null;let y=E||c;Ju(y);let m=n||i.get(y)||null;g=g||443,B=Ui.connect({highWaterMark:16384,...o,servername:E,session:m,localAddress:Q,ALPNProtocols:e?["http/1.1","h2"]:["http/1.1"],socket:I,port:g,host:c}),B.on("session",function(T){i.set(y,T)})}else Ju(!I,"httpSocket can only be sent on TLS update"),g=g||80,B=b0.connect({highWaterMark:64*1024,...o,localAddress:Q,port:g,host:c});if(o.keepAlive==null||o.keepAlive){let y=o.keepAliveInitialDelay===void 0?6e4:o.keepAliveInitialDelay;B.setKeepAlive(!0,y)}let h=S0(new WeakRef(B),{timeout:r,hostname:c,port:g});return B.setNoDelay(!0).once(u==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(h),C){let y=C;C=null,y(null,this)}}).on("error",function(y){if(queueMicrotask(h),C){let m=C;C=null,m(y)}}),B}}var S0=process.platform==="win32"?(e,A)=>{if(!A.timeout)return vu;let t=null,r=null,n=_n.setFastTimeout(()=>{t=setImmediate(()=>{r=setImmediate(()=>Hu(e.deref(),A))})},A.timeout);return()=>{_n.clearFastTimeout(n),clearImmediate(t),clearImmediate(r)}}:(e,A)=>{if(!A.timeout)return vu;let t=null,r=_n.setFastTimeout(()=>{t=setImmediate(()=>{Hu(e.deref(),A)})},A.timeout);return()=>{_n.clearFastTimeout(r),clearImmediate(t)}};function Hu(e,A){if(e==null)return;let t="Connect Timeout Error";Array.isArray(e.autoSelectFamilyAttemptedAddresses)?t+=` (attempted addresses: ${e.autoSelectFamilyAttemptedAddresses.join(", ")},`:t+=` (attempted address: ${A.hostname}:${A.port},`,t+=` timeout: ${A.timeout}ms)`,Vu.destroy(e,new F0(t))}qu.exports=R0});var Ou=f(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.enumToMap=void 0;function N0(e){let A={};return Object.keys(e).forEach(t=>{let r=e[t];typeof r=="number"&&(A[t]=r)}),A}Zn.enumToMap=N0});var Wu=f(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.SPECIAL_HEADERS=w.HEADER_STATE=w.MINOR=w.MAJOR=w.CONNECTION_TOKEN_CHARS=w.HEADER_CHARS=w.TOKEN=w.STRICT_TOKEN=w.HEX=w.URL_CHAR=w.STRICT_URL_CHAR=w.USERINFO_CHARS=w.MARK=w.ALPHANUM=w.NUM=w.HEX_MAP=w.NUM_MAP=w.ALPHA=w.FINISH=w.H_METHOD_MAP=w.METHOD_MAP=w.METHODS_RTSP=w.METHODS_ICE=w.METHODS_HTTP=w.METHODS=w.LENIENT_FLAGS=w.FLAGS=w.TYPE=w.ERROR=void 0;var U0=Ou(),M0;(function(e){e[e.OK=0]="OK",e[e.INTERNAL=1]="INTERNAL",e[e.STRICT=2]="STRICT",e[e.LF_EXPECTED=3]="LF_EXPECTED",e[e.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",e[e.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",e[e.INVALID_METHOD=6]="INVALID_METHOD",e[e.INVALID_URL=7]="INVALID_URL",e[e.INVALID_CONSTANT=8]="INVALID_CONSTANT",e[e.INVALID_VERSION=9]="INVALID_VERSION",e[e.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",e[e.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",e[e.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",e[e.INVALID_STATUS=13]="INVALID_STATUS",e[e.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",e[e.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",e[e.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",e[e.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",e[e.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",e[e.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",e[e.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",e[e.PAUSED=21]="PAUSED",e[e.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",e[e.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",e[e.USER=24]="USER"})(M0=w.ERROR||(w.ERROR={}));var L0;(function(e){e[e.BOTH=0]="BOTH",e[e.REQUEST=1]="REQUEST",e[e.RESPONSE=2]="RESPONSE"})(L0=w.TYPE||(w.TYPE={}));var T0;(function(e){e[e.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",e[e.CHUNKED=8]="CHUNKED",e[e.UPGRADE=16]="UPGRADE",e[e.CONTENT_LENGTH=32]="CONTENT_LENGTH",e[e.SKIPBODY=64]="SKIPBODY",e[e.TRAILING=128]="TRAILING",e[e.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(T0=w.FLAGS||(w.FLAGS={}));var x0;(function(e){e[e.HEADERS=1]="HEADERS",e[e.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",e[e.KEEP_ALIVE=4]="KEEP_ALIVE"})(x0=w.LENIENT_FLAGS||(w.LENIENT_FLAGS={}));var F;(function(e){e[e.DELETE=0]="DELETE",e[e.GET=1]="GET",e[e.HEAD=2]="HEAD",e[e.POST=3]="POST",e[e.PUT=4]="PUT",e[e.CONNECT=5]="CONNECT",e[e.OPTIONS=6]="OPTIONS",e[e.TRACE=7]="TRACE",e[e.COPY=8]="COPY",e[e.LOCK=9]="LOCK",e[e.MKCOL=10]="MKCOL",e[e.MOVE=11]="MOVE",e[e.PROPFIND=12]="PROPFIND",e[e.PROPPATCH=13]="PROPPATCH",e[e.SEARCH=14]="SEARCH",e[e.UNLOCK=15]="UNLOCK",e[e.BIND=16]="BIND",e[e.REBIND=17]="REBIND",e[e.UNBIND=18]="UNBIND",e[e.ACL=19]="ACL",e[e.REPORT=20]="REPORT",e[e.MKACTIVITY=21]="MKACTIVITY",e[e.CHECKOUT=22]="CHECKOUT",e[e.MERGE=23]="MERGE",e[e["M-SEARCH"]=24]="M-SEARCH",e[e.NOTIFY=25]="NOTIFY",e[e.SUBSCRIBE=26]="SUBSCRIBE",e[e.UNSUBSCRIBE=27]="UNSUBSCRIBE",e[e.PATCH=28]="PATCH",e[e.PURGE=29]="PURGE",e[e.MKCALENDAR=30]="MKCALENDAR",e[e.LINK=31]="LINK",e[e.UNLINK=32]="UNLINK",e[e.SOURCE=33]="SOURCE",e[e.PRI=34]="PRI",e[e.DESCRIBE=35]="DESCRIBE",e[e.ANNOUNCE=36]="ANNOUNCE",e[e.SETUP=37]="SETUP",e[e.PLAY=38]="PLAY",e[e.PAUSE=39]="PAUSE",e[e.TEARDOWN=40]="TEARDOWN",e[e.GET_PARAMETER=41]="GET_PARAMETER",e[e.SET_PARAMETER=42]="SET_PARAMETER",e[e.REDIRECT=43]="REDIRECT",e[e.RECORD=44]="RECORD",e[e.FLUSH=45]="FLUSH"})(F=w.METHODS||(w.METHODS={}));w.METHODS_HTTP=[F.DELETE,F.GET,F.HEAD,F.POST,F.PUT,F.CONNECT,F.OPTIONS,F.TRACE,F.COPY,F.LOCK,F.MKCOL,F.MOVE,F.PROPFIND,F.PROPPATCH,F.SEARCH,F.UNLOCK,F.BIND,F.REBIND,F.UNBIND,F.ACL,F.REPORT,F.MKACTIVITY,F.CHECKOUT,F.MERGE,F["M-SEARCH"],F.NOTIFY,F.SUBSCRIBE,F.UNSUBSCRIBE,F.PATCH,F.PURGE,F.MKCALENDAR,F.LINK,F.UNLINK,F.PRI,F.SOURCE];w.METHODS_ICE=[F.SOURCE];w.METHODS_RTSP=[F.OPTIONS,F.DESCRIBE,F.ANNOUNCE,F.SETUP,F.PLAY,F.PAUSE,F.TEARDOWN,F.GET_PARAMETER,F.SET_PARAMETER,F.REDIRECT,F.RECORD,F.FLUSH,F.GET,F.POST];w.METHOD_MAP=U0.enumToMap(F);w.H_METHOD_MAP={};Object.keys(w.METHOD_MAP).forEach(e=>{/^H/.test(e)&&(w.H_METHOD_MAP[e]=w.METHOD_MAP[e])});var Y0;(function(e){e[e.SAFE=0]="SAFE",e[e.SAFE_WITH_CB=1]="SAFE_WITH_CB",e[e.UNSAFE=2]="UNSAFE"})(Y0=w.FINISH||(w.FINISH={}));w.ALPHA=[];for(let e=65;e<=90;e++)w.ALPHA.push(String.fromCharCode(e)),w.ALPHA.push(String.fromCharCode(e+32));w.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};w.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};w.NUM=["0","1","2","3","4","5","6","7","8","9"];w.ALPHANUM=w.ALPHA.concat(w.NUM);w.MARK=["-","_",".","!","~","*","'","(",")"];w.USERINFO_CHARS=w.ALPHANUM.concat(w.MARK).concat(["%",";",":","&","=","+","$",","]);w.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(w.ALPHANUM);w.URL_CHAR=w.STRICT_URL_CHAR.concat([" ","\f"]);for(let e=128;e<=255;e++)w.URL_CHAR.push(e);w.HEX=w.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);w.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(w.ALPHANUM);w.TOKEN=w.STRICT_TOKEN.concat([" "]);w.HEADER_CHARS=[" "];for(let e=32;e<=255;e++)e!==127&&w.HEADER_CHARS.push(e);w.CONNECTION_TOKEN_CHARS=w.HEADER_CHARS.filter(e=>e!==44);w.MAJOR=w.NUM_MAP;w.MINOR=w.MAJOR;var Gt;(function(e){e[e.GENERAL=0]="GENERAL",e[e.CONNECTION=1]="CONNECTION",e[e.CONTENT_LENGTH=2]="CONTENT_LENGTH",e[e.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",e[e.UPGRADE=4]="UPGRADE",e[e.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",e[e.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",e[e.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",e[e.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(Gt=w.HEADER_STATE||(w.HEADER_STATE={}));w.SPECIAL_HEADERS={connection:Gt.CONNECTION,"content-length":Gt.CONTENT_LENGTH,"proxy-connection":Gt.CONNECTION,"transfer-encoding":Gt.TRANSFER_ENCODING,upgrade:Gt.UPGRADE}});var Li=f(($L,Pu)=>{"use strict";var{Buffer:G0}=d("node:buffer");Pu.exports=G0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var Zu=f((eT,_u)=>{"use strict";var{Buffer:J0}=d("node:buffer");_u.exports=J0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVuaWVudF9oZWFkZXJzACEhbGxodHRwX3NldF9sZW5pZW50X2NodW5rZWRfbGVuZ3RoACIdbGxodHRwX3NldF9sZW5pZW50X2tlZXBfYWxpdmUAIyRsbGh0dHBfc2V0X2xlbmllbnRfdHJhbnNmZXJfZW5jb2RpbmcAJBhsbGh0dHBfbWVzc2FnZV9uZWVkc19lb2YALgkXAQBBAQsRAQIDBAUKBgcrLSwqKSglJyYK77MCLBYAQYjQACgCAARAAAtBiNAAQQE2AgALFAAgABAwIAAgAjYCOCAAIAE6ACgLFAAgACAALwEyIAAtAC4gABAvEAALHgEBf0HAABAyIgEQMCABQYAINgI4IAEgADoAKCABC48MAQd/AkAgAEUNACAAQQhrIgEgAEEEaygCACIAQXhxIgRqIQUCQCAAQQFxDQAgAEEDcUUNASABIAEoAgAiAGsiAUGc0AAoAgBJDQEgACAEaiEEAkACQEGg0AAoAgAgAUcEQCAAQf8BTQRAIABBA3YhAyABKAIIIgAgASgCDCICRgRAQYzQAEGM0AAoAgBBfiADd3E2AgAMBQsgAiAANgIIIAAgAjYCDAwECyABKAIYIQYgASABKAIMIgBHBEAgACABKAIIIgI2AgggAiAANgIMDAMLIAFBFGoiAygCACICRQRAIAEoAhAiAkUNAiABQRBqIQMLA0AgAyEHIAIiAEEUaiIDKAIAIgINACAAQRBqIQMgACgCECICDQALIAdBADYCAAwCCyAFKAIEIgBBA3FBA0cNAiAFIABBfnE2AgRBlNAAIAQ2AgAgBSAENgIAIAEgBEEBcjYCBAwDC0EAIQALIAZFDQACQCABKAIcIgJBAnRBvNIAaiIDKAIAIAFGBEAgAyAANgIAIAANAUGQ0ABBkNAAKAIAQX4gAndxNgIADAILIAZBEEEUIAYoAhAgAUYbaiAANgIAIABFDQELIAAgBjYCGCABKAIQIgIEQCAAIAI2AhAgAiAANgIYCyABQRRqKAIAIgJFDQAgAEEUaiACNgIAIAIgADYCGAsgASAFTw0AIAUoAgQiAEEBcUUNAAJAAkACQAJAIABBAnFFBEBBpNAAKAIAIAVGBEBBpNAAIAE2AgBBmNAAQZjQACgCACAEaiIANgIAIAEgAEEBcjYCBCABQaDQACgCAEcNBkGU0ABBADYCAEGg0ABBADYCAAwGC0Gg0AAoAgAgBUYEQEGg0AAgATYCAEGU0ABBlNAAKAIAIARqIgA2AgAgASAAQQFyNgIEIAAgAWogADYCAAwGCyAAQXhxIARqIQQgAEH/AU0EQCAAQQN2IQMgBSgCCCIAIAUoAgwiAkYEQEGM0ABBjNAAKAIAQX4gA3dxNgIADAULIAIgADYCCCAAIAI2AgwMBAsgBSgCGCEGIAUgBSgCDCIARwRAQZzQACgCABogACAFKAIIIgI2AgggAiAANgIMDAMLIAVBFGoiAygCACICRQRAIAUoAhAiAkUNAiAFQRBqIQMLA0AgAyEHIAIiAEEUaiIDKAIAIgINACAAQRBqIQMgACgCECICDQALIAdBADYCAAwCCyAFIABBfnE2AgQgASAEaiAENgIAIAEgBEEBcjYCBAwDC0EAIQALIAZFDQACQCAFKAIcIgJBAnRBvNIAaiIDKAIAIAVGBEAgAyAANgIAIAANAUGQ0ABBkNAAKAIAQX4gAndxNgIADAILIAZBEEEUIAYoAhAgBUYbaiAANgIAIABFDQELIAAgBjYCGCAFKAIQIgIEQCAAIAI2AhAgAiAANgIYCyAFQRRqKAIAIgJFDQAgAEEUaiACNgIAIAIgADYCGAsgASAEaiAENgIAIAEgBEEBcjYCBCABQaDQACgCAEcNAEGU0AAgBDYCAAwBCyAEQf8BTQRAIARBeHFBtNAAaiEAAn9BjNAAKAIAIgJBASAEQQN2dCIDcUUEQEGM0AAgAiADcjYCACAADAELIAAoAggLIgIgATYCDCAAIAE2AgggASAANgIMIAEgAjYCCAwBC0EfIQIgBEH///8HTQRAIARBJiAEQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAgsgASACNgIcIAFCADcCECACQQJ0QbzSAGohAAJAQZDQACgCACIDQQEgAnQiB3FFBEAgACABNgIAQZDQACADIAdyNgIAIAEgADYCGCABIAE2AgggASABNgIMDAELIARBGSACQQF2a0EAIAJBH0cbdCECIAAoAgAhAAJAA0AgACIDKAIEQXhxIARGDQEgAkEddiEAIAJBAXQhAiADIABBBHFqQRBqIgcoAgAiAA0ACyAHIAE2AgAgASADNgIYIAEgATYCDCABIAE2AggMAQsgAygCCCIAIAE2AgwgAyABNgIIIAFBADYCGCABIAM2AgwgASAANgIIC0Gs0ABBrNAAKAIAQQFrIgBBfyAAGzYCAAsLBwAgAC0AKAsHACAALQAqCwcAIAAtACsLBwAgAC0AKQsHACAALwEyCwcAIAAtAC4LQAEEfyAAKAIYIQEgAC0ALSECIAAtACghAyAAKAI4IQQgABAwIAAgBDYCOCAAIAM6ACggACACOgAtIAAgATYCGAu74gECB38DfiABIAJqIQQCQCAAIgIoAgwiAA0AIAIoAgQEQCACIAE2AgQLIwBBEGsiCCQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAIoAhwiA0EBaw7dAdoBAdkBAgMEBQYHCAkKCwwNDtgBDxDXARES1gETFBUWFxgZGhvgAd8BHB0e1QEfICEiIyQl1AEmJygpKiss0wHSAS0u0QHQAS8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRtsBR0hJSs8BzgFLzQFMzAFNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AAYEBggGDAYQBhQGGAYcBiAGJAYoBiwGMAY0BjgGPAZABkQGSAZMBlAGVAZYBlwGYAZkBmgGbAZwBnQGeAZ8BoAGhAaIBowGkAaUBpgGnAagBqQGqAasBrAGtAa4BrwGwAbEBsgGzAbQBtQG2AbcBywHKAbgByQG5AcgBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgEA3AELQQAMxgELQQ4MxQELQQ0MxAELQQ8MwwELQRAMwgELQRMMwQELQRQMwAELQRUMvwELQRYMvgELQRgMvQELQRkMvAELQRoMuwELQRsMugELQRwMuQELQR0MuAELQQgMtwELQR4MtgELQSAMtQELQR8MtAELQQcMswELQSEMsgELQSIMsQELQSMMsAELQSQMrwELQRIMrgELQREMrQELQSUMrAELQSYMqwELQScMqgELQSgMqQELQcMBDKgBC0EqDKcBC0ErDKYBC0EsDKUBC0EtDKQBC0EuDKMBC0EvDKIBC0HEAQyhAQtBMAygAQtBNAyfAQtBDAyeAQtBMQydAQtBMgycAQtBMwybAQtBOQyaAQtBNQyZAQtBxQEMmAELQQsMlwELQToMlgELQTYMlQELQQoMlAELQTcMkwELQTgMkgELQTwMkQELQTsMkAELQT0MjwELQQkMjgELQSkMjQELQT4MjAELQT8MiwELQcAADIoBC0HBAAyJAQtBwgAMiAELQcMADIcBC0HEAAyGAQtBxQAMhQELQcYADIQBC0EXDIMBC0HHAAyCAQtByAAMgQELQckADIABC0HKAAx/C0HLAAx+C0HNAAx9C0HMAAx8C0HOAAx7C0HPAAx6C0HQAAx5C0HRAAx4C0HSAAx3C0HTAAx2C0HUAAx1C0HWAAx0C0HVAAxzC0EGDHILQdcADHELQQUMcAtB2AAMbwtBBAxuC0HZAAxtC0HaAAxsC0HbAAxrC0HcAAxqC0EDDGkLQd0ADGgLQd4ADGcLQd8ADGYLQeEADGULQeAADGQLQeIADGMLQeMADGILQQIMYQtB5AAMYAtB5QAMXwtB5gAMXgtB5wAMXQtB6AAMXAtB6QAMWwtB6gAMWgtB6wAMWQtB7AAMWAtB7QAMVwtB7gAMVgtB7wAMVQtB8AAMVAtB8QAMUwtB8gAMUgtB8wAMUQtB9AAMUAtB9QAMTwtB9gAMTgtB9wAMTQtB+AAMTAtB+QAMSwtB+gAMSgtB+wAMSQtB/AAMSAtB/QAMRwtB/gAMRgtB/wAMRQtBgAEMRAtBgQEMQwtBggEMQgtBgwEMQQtBhAEMQAtBhQEMPwtBhgEMPgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Tr=f((AT,tl)=>{"use strict";var zu=["GET","HEAD","POST"],v0=new Set(zu),H0=[101,204,205,304],Ku=[301,302,303,307,308],V0=new Set(Ku),Xu=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],q0=new Set(Xu),ju=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],O0=new Set(ju),W0=["follow","manual","error"],$u=["GET","HEAD","OPTIONS","TRACE"],P0=new Set($u),_0=["navigate","same-origin","no-cors","cors"],Z0=["omit","same-origin","include"],z0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],K0=["content-encoding","content-language","content-location","content-type","content-length"],X0=["half"],el=["CONNECT","TRACE","TRACK"],j0=new Set(el),Al=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],$0=new Set(Al);tl.exports={subresource:Al,forbiddenMethods:el,requestBodyHeader:K0,referrerPolicy:ju,requestRedirect:W0,requestMode:_0,requestCredentials:Z0,requestCache:z0,redirectStatus:Ku,corsSafeListedMethods:zu,nullBodyStatus:H0,safeMethods:$u,badPorts:Xu,requestDuplex:X0,subresourceSet:$0,badPortsSet:q0,redirectStatusSet:V0,corsSafeListedMethodsSet:v0,safeMethodsSet:P0,forbiddenMethodsSet:j0,referrerPolicySet:O0}});var xi=f((tT,rl)=>{"use strict";var Ti=Symbol.for("undici.globalOrigin.1");function ep(){return globalThis[Ti]}function Ap(e){if(e===void 0){Object.defineProperty(globalThis,Ti,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let A=new URL(e);if(A.protocol!=="http:"&&A.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${A.protocol}`);Object.defineProperty(globalThis,Ti,{value:A,writable:!0,enumerable:!1,configurable:!1})}rl.exports={getGlobalOrigin:ep,setGlobalOrigin:Ap}});var de=f((rT,gl)=>{"use strict";var Kn=d("node:assert"),tp=new TextEncoder,xr=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,rp=/[\u000A\u000D\u0009\u0020]/,np=/[\u0009\u000A\u000C\u000D\u0020]/g,sp=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function op(e){Kn(e.protocol==="data:");let A=ol(e,!0);A=A.slice(5);let t={position:0},r=Jt(",",A,t),n=r.length;if(r=lp(r,!0,!0),t.position>=A.length)return"failure";t.position++;let s=A.slice(n+1),o=il(s);if(/;(\u0020){0,}base64$/i.test(r)){let a=cl(o);if(o=ap(a),o==="failure")return"failure";r=r.slice(0,-6),r=r.replace(/(\u0020)+$/,""),r=r.slice(0,-1)}r.startsWith(";")&&(r="text/plain"+r);let i=Yi(r);return i==="failure"&&(i=Yi("text/plain;charset=US-ASCII")),{mimeType:i,body:o}}function ol(e,A=!1){if(!A)return e.href;let t=e.href,r=e.hash.length,n=r===0?t:t.substring(0,t.length-r);return!r&&t.endsWith("#")?n.slice(0,-1):n}function Xn(e,A,t){let r="";for(;t.position<A.length&&e(A[t.position]);)r+=A[t.position],t.position++;return r}function Jt(e,A,t){let r=A.indexOf(e,t.position),n=t.position;return r===-1?(t.position=A.length,A.slice(n)):(t.position=r,A.slice(n,t.position))}function il(e){let A=tp.encode(e);return ip(A)}function nl(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function sl(e){return e>=48&&e<=57?e-48:(e&223)-55}function ip(e){let A=e.length,t=new Uint8Array(A),r=0;for(let n=0;n<A;++n){let s=e[n];s!==37?t[r++]=s:s===37&&!(nl(e[n+1])&&nl(e[n+2]))?t[r++]=37:(t[r++]=sl(e[n+1])<<4|sl(e[n+2]),n+=2)}return A===r?t:t.subarray(0,r)}function Yi(e){e=zn(e,!0,!0);let A={position:0},t=Jt("/",e,A);if(t.length===0||!xr.test(t)||A.position>e.length)return"failure";A.position++;let r=Jt(";",e,A);if(r=zn(r,!1,!0),r.length===0||!xr.test(r))return"failure";let n=t.toLowerCase(),s=r.toLowerCase(),o={type:n,subtype:s,parameters:new Map,essence:`${n}/${s}`};for(;A.position<e.length;){A.position++,Xn(c=>rp.test(c),e,A);let i=Xn(c=>c!==";"&&c!=="=",e,A);if(i=i.toLowerCase(),A.position<e.length){if(e[A.position]===";")continue;A.position++}if(A.position>e.length)break;let a=null;if(e[A.position]==='"')a=al(e,A,!0),Jt(";",e,A);else if(a=Jt(";",e,A),a=zn(a,!1,!0),a.length===0)continue;i.length!==0&&xr.test(i)&&(a.length===0||sp.test(a))&&!o.parameters.has(i)&&o.parameters.set(i,a)}return o}function ap(e){e=e.replace(np,"");let A=e.length;if(A%4===0&&e.charCodeAt(A-1)===61&&(--A,e.charCodeAt(A-1)===61&&--A),A%4===1||/[^+/0-9A-Za-z]/.test(e.length===A?e:e.substring(0,A)))return"failure";let t=Buffer.from(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function al(e,A,t){let r=A.position,n="";for(Kn(e[A.position]==='"'),A.position++;n+=Xn(o=>o!=='"'&&o!=="\\",e,A),!(A.position>=e.length);){let s=e[A.position];if(A.position++,s==="\\"){if(A.position>=e.length){n+="\\";break}n+=e[A.position],A.position++}else{Kn(s==='"');break}}return t?n:e.slice(r,A.position)}function cp(e){Kn(e!=="failure");let{parameters:A,essence:t}=e,r=t;for(let[n,s]of A.entries())r+=";",r+=n,r+="=",xr.test(s)||(s=s.replace(/(\\|")/g,"\\$1"),s='"'+s,s+='"'),r+=s;return r}function gp(e){return e===13||e===10||e===9||e===32}function zn(e,A=!0,t=!0){return Gi(e,A,t,gp)}function up(e){return e===13||e===10||e===9||e===12||e===32}function lp(e,A=!0,t=!0){return Gi(e,A,t,up)}function Gi(e,A,t,r){let n=0,s=e.length-1;if(A)for(;n<e.length&&r(e.charCodeAt(n));)n++;if(t)for(;s>0&&r(e.charCodeAt(s));)s--;return n===0&&s===e.length-1?e:e.slice(n,s+1)}function cl(e){let A=e.length;if(65535>A)return String.fromCharCode.apply(null,e);let t="",r=0,n=65535;for(;r<A;)r+n>A&&(n=A-r),t+=String.fromCharCode.apply(null,e.subarray(r,r+=n));return t}function Ep(e){switch(e.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return e.subtype.endsWith("+json")?"application/json":e.subtype.endsWith("+xml")?"application/xml":""}gl.exports={dataURLProcessor:op,URLSerializer:ol,collectASequenceOfCodePoints:Xn,collectASequenceOfCodePointsFast:Jt,stringPercentDecode:il,parseMIMEType:Yi,collectAnHTTPQuotedString:al,serializeAMimeType:cp,removeChars:Gi,removeHTTPWhitespace:zn,minimizeSupportedMimeType:Ep,HTTP_TOKEN_CODEPOINTS:xr,isomorphicDecode:cl}});var ue=f((nT,ul)=>{"use strict";var{types:tA,inspect:Qp}=d("node:util"),{markAsUncloneable:Bp}=d("node:worker_threads"),{toUSVString:Ip}=x(),p={};p.converters={};p.util={};p.errors={};p.errors.exception=function(e){return new TypeError(`${e.header}: ${e.message}`)};p.errors.conversionFailed=function(e){let A=e.types.length===1?"":" one of",t=`${e.argument} could not be converted to${A}: ${e.types.join(", ")}.`;return p.errors.exception({header:e.prefix,message:t})};p.errors.invalidArgument=function(e){return p.errors.exception({header:e.prefix,message:`"${e.value}" is an invalid ${e.type}.`})};p.brandCheck=function(e,A,t){if(t?.strict!==!1){if(!(e instanceof A)){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}}else if(e?.[Symbol.toStringTag]!==A.prototype[Symbol.toStringTag]){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}};p.argumentLengthCheck=function({length:e},A,t){if(e<A)throw p.errors.exception({message:`${A} argument${A!==1?"s":""} required, but${e?" only":""} ${e} found.`,header:t})};p.illegalConstructor=function(){throw p.errors.exception({header:"TypeError",message:"Illegal constructor"})};p.util.Type=function(e){switch(typeof e){case"undefined":return"Undefined";case"boolean":return"Boolean";case"string":return"String";case"symbol":return"Symbol";case"number":return"Number";case"bigint":return"BigInt";case"function":case"object":return e===null?"Null":"Object"}};p.util.markAsUncloneable=Bp||(()=>{});p.util.ConvertToInt=function(e,A,t,r){let n,s;A===64?(n=Math.pow(2,53)-1,t==="unsigned"?s=0:s=Math.pow(-2,53)+1):t==="unsigned"?(s=0,n=Math.pow(2,A)-1):(s=Math.pow(-2,A)-1,n=Math.pow(2,A-1)-1);let o=Number(e);if(o===0&&(o=0),r?.enforceRange===!0){if(Number.isNaN(o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY)throw p.errors.exception({header:"Integer conversion",message:`Could not convert ${p.util.Stringify(e)} to an integer.`});if(o=p.util.IntegerPart(o),o<s||o>n)throw p.errors.exception({header:"Integer conversion",message:`Value must be between ${s}-${n}, got ${o}.`});return o}return!Number.isNaN(o)&&r?.clamp===!0?(o=Math.min(Math.max(o,s),n),Math.floor(o)%2===0?o=Math.floor(o):o=Math.ceil(o),o):Number.isNaN(o)||o===0&&Object.is(0,o)||o===Number.POSITIVE_INFINITY||o===Number.NEGATIVE_INFINITY?0:(o=p.util.IntegerPart(o),o=o%Math.pow(2,A),t==="signed"&&o>=Math.pow(2,A)-1?o-Math.pow(2,A):o)};p.util.IntegerPart=function(e){let A=Math.floor(Math.abs(e));return e<0?-1*A:A};p.util.Stringify=function(e){switch(p.util.Type(e)){case"Symbol":return`Symbol(${e.description})`;case"Object":return Qp(e);case"String":return`"${e}"`;default:return`${e}`}};p.sequenceConverter=function(e){return(A,t,r,n)=>{if(p.util.Type(A)!=="Object")throw p.errors.exception({header:t,message:`${r} (${p.util.Stringify(A)}) is not iterable.`});let s=typeof n=="function"?n():A?.[Symbol.iterator]?.(),o=[],i=0;if(s===void 0||typeof s.next!="function")throw p.errors.exception({header:t,message:`${r} is not iterable.`});for(;;){let{done:a,value:c}=s.next();if(a)break;o.push(e(c,t,`${r}[${i++}]`))}return o}};p.recordConverter=function(e,A){return(t,r,n)=>{if(p.util.Type(t)!=="Object")throw p.errors.exception({header:r,message:`${n} ("${p.util.Type(t)}") is not an Object.`});let s={};if(!tA.isProxy(t)){let i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(let a of i){let c=e(a,r,n),l=A(t[a],r,n);s[c]=l}return s}let o=Reflect.ownKeys(t);for(let i of o)if(Reflect.getOwnPropertyDescriptor(t,i)?.enumerable){let c=e(i,r,n),l=A(t[i],r,n);s[c]=l}return s}};p.interfaceConverter=function(e){return(A,t,r,n)=>{if(n?.strict!==!1&&!(A instanceof e))throw p.errors.exception({header:t,message:`Expected ${r} ("${p.util.Stringify(A)}") to be an instance of ${e.name}.`});return A}};p.dictionaryConverter=function(e){return(A,t,r)=>{let n=p.util.Type(A),s={};if(n==="Null"||n==="Undefined")return s;if(n!=="Object")throw p.errors.exception({header:t,message:`Expected ${A} to be one of: Null, Undefined, Object.`});for(let o of e){let{key:i,defaultValue:a,required:c,converter:l}=o;if(c===!0&&!Object.hasOwn(A,i))throw p.errors.exception({header:t,message:`Missing required key "${i}".`});let u=A[i],g=Object.hasOwn(o,"defaultValue");if(g&&u!==null&&(u??=a()),c||g||u!==void 0){if(u=l(u,t,`${r}.${i}`),o.allowedValues&&!o.allowedValues.includes(u))throw p.errors.exception({header:t,message:`${u} is not an accepted type. Expected one of ${o.allowedValues.join(", ")}.`});s[i]=u}}return s}};p.nullableConverter=function(e){return(A,t,r)=>A===null?A:e(A,t,r)};p.converters.DOMString=function(e,A,t,r){if(e===null&&r?.legacyNullToEmptyString)return"";if(typeof e=="symbol")throw p.errors.exception({header:A,message:`${t} is a symbol, which cannot be converted to a DOMString.`});return String(e)};p.converters.ByteString=function(e,A,t){let r=p.converters.DOMString(e,A,t);for(let n=0;n<r.length;n++)if(r.charCodeAt(n)>255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${n} has a value of ${r.charCodeAt(n)} which is greater than 255.`);return r};p.converters.USVString=Ip;p.converters.boolean=function(e){return!!e};p.converters.any=function(e){return e};p.converters["long long"]=function(e,A,t){return p.util.ConvertToInt(e,64,"signed",void 0,A,t)};p.converters["unsigned long long"]=function(e,A,t){return p.util.ConvertToInt(e,64,"unsigned",void 0,A,t)};p.converters["unsigned long"]=function(e,A,t){return p.util.ConvertToInt(e,32,"unsigned",void 0,A,t)};p.converters["unsigned short"]=function(e,A,t,r){return p.util.ConvertToInt(e,16,"unsigned",r,A,t)};p.converters.ArrayBuffer=function(e,A,t,r){if(p.util.Type(e)!=="Object"||!tA.isAnyArrayBuffer(e))throw p.errors.conversionFailed({prefix:A,argument:`${t} ("${p.util.Stringify(e)}")`,types:["ArrayBuffer"]});if(r?.allowShared===!1&&tA.isSharedArrayBuffer(e))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.resizable||e.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.TypedArray=function(e,A,t,r,n){if(p.util.Type(e)!=="Object"||!tA.isTypedArray(e)||e.constructor.name!==A.name)throw p.errors.conversionFailed({prefix:t,argument:`${r} ("${p.util.Stringify(e)}")`,types:[A.name]});if(n?.allowShared===!1&&tA.isSharedArrayBuffer(e.buffer))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.DataView=function(e,A,t,r){if(p.util.Type(e)!=="Object"||!tA.isDataView(e))throw p.errors.exception({header:A,message:`${t} is not a DataView.`});if(r?.allowShared===!1&&tA.isSharedArrayBuffer(e.buffer))throw p.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(e.buffer.resizable||e.buffer.growable)throw p.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return e};p.converters.BufferSource=function(e,A,t,r){if(tA.isAnyArrayBuffer(e))return p.converters.ArrayBuffer(e,A,t,{...r,allowShared:!1});if(tA.isTypedArray(e))return p.converters.TypedArray(e,e.constructor,A,t,{...r,allowShared:!1});if(tA.isDataView(e))return p.converters.DataView(e,A,t,{...r,allowShared:!1});throw p.errors.conversionFailed({prefix:A,argument:`${t} ("${p.util.Stringify(e)}")`,types:["BufferSource"]})};p.converters["sequence<ByteString>"]=p.sequenceConverter(p.converters.ByteString);p.converters["sequence<sequence<ByteString>>"]=p.sequenceConverter(p.converters["sequence<ByteString>"]);p.converters["record<ByteString, ByteString>"]=p.recordConverter(p.converters.ByteString,p.converters.ByteString);ul.exports={webidl:p}});var be=f((sT,Dl)=>{"use strict";var{Transform:Cp}=d("node:stream"),ll=d("node:zlib"),{redirectStatusSet:hp,referrerPolicySet:dp,badPortsSet:fp}=Tr(),{getGlobalOrigin:El}=xi(),{collectASequenceOfCodePoints:At,collectAnHTTPQuotedString:pp,removeChars:wp,parseMIMEType:mp}=de(),{performance:yp}=d("node:perf_hooks"),{isBlobLike:Dp,ReadableStreamFrom:bp,isValidHTTPToken:Ql,normalizedMethodRecordsBase:kp}=x(),tt=d("node:assert"),{isUint8Array:Fp}=d("node:util/types"),{webidl:Yr}=ue(),Bl=[],$n;try{$n=d("node:crypto");let e=["sha256","sha384","sha512"];Bl=$n.getHashes().filter(A=>e.includes(A))}catch{}function Il(e){let A=e.urlList,t=A.length;return t===0?null:A[t-1].toString()}function Rp(e,A){if(!hp.has(e.status))return null;let t=e.headersList.get("location",!0);return t!==null&&hl(t)&&(Cl(t)||(t=Sp(t)),t=new URL(t,Il(e))),t&&!t.hash&&(t.hash=A),t}function Cl(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t>126||t<32)return!1}return!0}function Sp(e){return Buffer.from(e,"binary").toString("utf8")}function Jr(e){return e.urlList[e.urlList.length-1]}function Np(e){let A=Jr(e);return ml(A)&&fp.has(A.port)?"blocked":"allowed"}function Up(e){return e instanceof Error||e?.constructor?.name==="Error"||e?.constructor?.name==="DOMException"}function Mp(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(!(t===9||t>=32&&t<=126||t>=128&&t<=255))return!1}return!0}var Lp=Ql;function hl(e){return(e[0]===" "||e[0]===" "||e[e.length-1]===" "||e[e.length-1]===" "||e.includes(`
2
+ `)||e.includes("\r")||e.includes("\0"))===!1}function Tp(e,A){let{headersList:t}=A,r=(t.get("referrer-policy",!0)??"").split(","),n="";if(r.length>0)for(let s=r.length;s!==0;s--){let o=r[s-1].trim();if(dp.has(o)){n=o;break}}n!==""&&(e.referrerPolicy=n)}function xp(){return"allowed"}function Yp(){return"success"}function Gp(){return"success"}function Jp(e){let A=null;A=e.mode,e.headersList.set("sec-fetch-mode",A,!0)}function vp(e){let A=e.origin;if(!(A==="client"||A===void 0)){if(e.responseTainting==="cors"||e.mode==="websocket")e.headersList.append("origin",A,!0);else if(e.method!=="GET"&&e.method!=="HEAD"){switch(e.referrerPolicy){case"no-referrer":A=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":e.origin&&vi(e.origin)&&!vi(Jr(e))&&(A=null);break;case"same-origin":es(e,Jr(e))||(A=null);break;default:}e.headersList.append("origin",A,!0)}}}function vt(e,A){return e}function Hp(e,A,t){return!e?.startTime||e.startTime<A?{domainLookupStartTime:A,domainLookupEndTime:A,connectionStartTime:A,connectionEndTime:A,secureConnectionStartTime:A,ALPNNegotiatedProtocol:e?.ALPNNegotiatedProtocol}:{domainLookupStartTime:vt(e.domainLookupStartTime,t),domainLookupEndTime:vt(e.domainLookupEndTime,t),connectionStartTime:vt(e.connectionStartTime,t),connectionEndTime:vt(e.connectionEndTime,t),secureConnectionStartTime:vt(e.secureConnectionStartTime,t),ALPNNegotiatedProtocol:e.ALPNNegotiatedProtocol}}function Vp(e){return vt(yp.now(),e)}function qp(e){return{startTime:e.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:e.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}function dl(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function Op(e){return{referrerPolicy:e.referrerPolicy}}function Wp(e){let A=e.referrerPolicy;tt(A);let t=null;if(e.referrer==="client"){let i=El();if(!i||i.origin==="null")return"no-referrer";t=new URL(i)}else e.referrer instanceof URL&&(t=e.referrer);let r=Ji(t),n=Ji(t,!0);r.toString().length>4096&&(r=n);let s=es(e,r),o=Gr(r)&&!Gr(e.url);switch(A){case"origin":return n??Ji(t,!0);case"unsafe-url":return r;case"same-origin":return s?n:"no-referrer";case"origin-when-cross-origin":return s?r:n;case"strict-origin-when-cross-origin":{let i=Jr(e);return es(r,i)?r:Gr(r)&&!Gr(i)?"no-referrer":n}default:return o?"no-referrer":n}}function Ji(e,A){return tt(e instanceof URL),e=new URL(e),e.protocol==="file:"||e.protocol==="about:"||e.protocol==="blank:"?"no-referrer":(e.username="",e.password="",e.hash="",A&&(e.pathname="",e.search=""),e)}function Gr(e){if(!(e instanceof URL))return!1;if(e.href==="about:blank"||e.href==="about:srcdoc"||e.protocol==="data:"||e.protocol==="file:")return!0;return A(e.origin);function A(t){if(t==null||t==="null")return!1;let r=new URL(t);return!!(r.protocol==="https:"||r.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(r.hostname)||r.hostname==="localhost"||r.hostname.includes("localhost.")||r.hostname.endsWith(".localhost"))}}function Pp(e,A){if($n===void 0)return!0;let t=fl(A);if(t==="no metadata"||t.length===0)return!0;let r=Zp(t),n=zp(t,r);for(let s of n){let o=s.algo,i=s.hash,a=$n.createHash(o).update(e).digest("base64");if(a[a.length-1]==="="&&(a[a.length-2]==="="?a=a.slice(0,-2):a=a.slice(0,-1)),Kp(a,i))return!0}return!1}var _p=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function fl(e){let A=[],t=!0;for(let r of e.split(" ")){t=!1;let n=_p.exec(r);if(n===null||n.groups===void 0||n.groups.algo===void 0)continue;let s=n.groups.algo.toLowerCase();Bl.includes(s)&&A.push(n.groups)}return t===!0?"no metadata":A}function Zp(e){let A=e[0].algo;if(A[3]==="5")return A;for(let t=1;t<e.length;++t){let r=e[t];if(r.algo[3]==="5"){A="sha512";break}else{if(A[3]==="3")continue;r.algo[3]==="3"&&(A="sha384")}}return A}function zp(e,A){if(e.length===1)return e;let t=0;for(let r=0;r<e.length;++r)e[r].algo===A&&(e[t++]=e[r]);return e.length=t,e}function Kp(e,A){if(e.length!==A.length)return!1;for(let t=0;t<e.length;++t)if(e[t]!==A[t]){if(e[t]==="+"&&A[t]==="-"||e[t]==="/"&&A[t]==="_")continue;return!1}return!0}function Xp(e){}function es(e,A){return e.origin===A.origin&&e.origin==="null"||e.protocol===A.protocol&&e.hostname===A.hostname&&e.port===A.port}function jp(){let e,A;return{promise:new Promise((r,n)=>{e=r,A=n}),resolve:e,reject:A}}function $p(e){return e.controller.state==="aborted"}function ew(e){return e.controller.state==="aborted"||e.controller.state==="terminated"}function Aw(e){return kp[e.toLowerCase()]??e}function tw(e){let A=JSON.stringify(e);if(A===void 0)throw new TypeError("Value is not JSON serializable");return tt(typeof A=="string"),A}var rw=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function pl(e,A,t=0,r=1){class n{#e;#A;#t;constructor(o,i){this.#e=o,this.#A=i,this.#t=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${e} Iterator.`);let o=this.#t,i=this.#e[A],a=i.length;if(o>=a)return{value:void 0,done:!0};let{[t]:c,[r]:l}=i[o];this.#t=o+1;let u;switch(this.#A){case"key":u=c;break;case"value":u=l;break;case"key+value":u=[c,l];break}return{value:u,done:!1}}}return delete n.prototype.constructor,Object.setPrototypeOf(n.prototype,rw),Object.defineProperties(n.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${e} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(s,o){return new n(s,o)}}function nw(e,A,t,r=0,n=1){let s=pl(e,t,r,n),o={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Yr.brandCheck(this,A),s(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(a,c=globalThis){if(Yr.brandCheck(this,A),Yr.argumentLengthCheck(arguments,1,`${e}.forEach`),typeof a!="function")throw new TypeError(`Failed to execute 'forEach' on '${e}': parameter 1 is not of type 'Function'.`);for(let{0:l,1:u}of s(this,"key+value"))a.call(c,u,l,this)}}};return Object.defineProperties(A.prototype,{...o,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:o.entries.value}})}async function sw(e,A,t){let r=A,n=t,s;try{s=e.stream.getReader()}catch(o){n(o);return}try{r(await wl(s))}catch(o){n(o)}}function ow(e){return e instanceof ReadableStream||e[Symbol.toStringTag]==="ReadableStream"&&typeof e.tee=="function"}function iw(e){try{e.close(),e.byobRequest?.respond(0)}catch(A){if(!A.message.includes("Controller is already closed")&&!A.message.includes("ReadableStream is already closed"))throw A}}var aw=/[^\x00-\xFF]/;function jn(e){return tt(!aw.test(e)),e}async function wl(e){let A=[],t=0;for(;;){let{done:r,value:n}=await e.read();if(r)return Buffer.concat(A,t);if(!Fp(n))throw new TypeError("Received non-Uint8Array chunk");A.push(n),t+=n.length}}function cw(e){tt("protocol"in e);let A=e.protocol;return A==="about:"||A==="blob:"||A==="data:"}function vi(e){return typeof e=="string"&&e[5]===":"&&e[0]==="h"&&e[1]==="t"&&e[2]==="t"&&e[3]==="p"&&e[4]==="s"||e.protocol==="https:"}function ml(e){tt("protocol"in e);let A=e.protocol;return A==="http:"||A==="https:"}function gw(e,A){let t=e;if(!t.startsWith("bytes"))return"failure";let r={position:5};if(A&&At(a=>a===" "||a===" ",t,r),t.charCodeAt(r.position)!==61)return"failure";r.position++,A&&At(a=>a===" "||a===" ",t,r);let n=At(a=>{let c=a.charCodeAt(0);return c>=48&&c<=57},t,r),s=n.length?Number(n):null;if(A&&At(a=>a===" "||a===" ",t,r),t.charCodeAt(r.position)!==45)return"failure";r.position++,A&&At(a=>a===" "||a===" ",t,r);let o=At(a=>{let c=a.charCodeAt(0);return c>=48&&c<=57},t,r),i=o.length?Number(o):null;return r.position<t.length||i===null&&s===null||s>i?"failure":{rangeStartValue:s,rangeEndValue:i}}function uw(e,A,t){let r="bytes ";return r+=jn(`${e}`),r+="-",r+=jn(`${A}`),r+="/",r+=jn(`${t}`),r}var Hi=class extends Cp{#e;constructor(A){super(),this.#e=A}_transform(A,t,r){if(!this._inflateStream){if(A.length===0){r();return}this._inflateStream=(A[0]&15)===8?ll.createInflate(this.#e):ll.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",n=>this.destroy(n))}this._inflateStream.write(A,t,r)}_final(A){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),A()}};function lw(e){return new Hi(e)}function Ew(e){let A=null,t=null,r=null,n=yl("content-type",e);if(n===null)return"failure";for(let s of n){let o=mp(s);o==="failure"||o.essence==="*/*"||(r=o,r.essence!==t?(A=null,r.parameters.has("charset")&&(A=r.parameters.get("charset")),t=r.essence):!r.parameters.has("charset")&&A!==null&&r.parameters.set("charset",A))}return r??"failure"}function Qw(e){let A=e,t={position:0},r=[],n="";for(;t.position<A.length;){if(n+=At(s=>s!=='"'&&s!==",",A,t),t.position<A.length)if(A.charCodeAt(t.position)===34){if(n+=pp(A,t),t.position<A.length)continue}else tt(A.charCodeAt(t.position)===44),t.position++;n=wp(n,!0,!0,s=>s===9||s===32),r.push(n),n=""}return r}function yl(e,A){let t=A.get(e,!0);return t===null?null:Qw(t)}var Bw=new TextDecoder;function Iw(e){return e.length===0?"":(e[0]===239&&e[1]===187&&e[2]===191&&(e=e.subarray(3)),Bw.decode(e))}var Vi=class{get baseUrl(){return El()}get origin(){return this.baseUrl?.origin}policyContainer=dl()},qi=class{settingsObject=new Vi},Cw=new qi;Dl.exports={isAborted:$p,isCancelled:ew,isValidEncodedURL:Cl,createDeferredPromise:jp,ReadableStreamFrom:bp,tryUpgradeRequestToAPotentiallyTrustworthyURL:Xp,clampAndCoarsenConnectionTimingInfo:Hp,coarsenedSharedCurrentTime:Vp,determineRequestsReferrer:Wp,makePolicyContainer:dl,clonePolicyContainer:Op,appendFetchMetadata:Jp,appendRequestOriginHeader:vp,TAOCheck:Gp,corsCheck:Yp,crossOriginResourcePolicyCheck:xp,createOpaqueTimingInfo:qp,setRequestReferrerPolicyOnRedirect:Tp,isValidHTTPToken:Ql,requestBadPort:Np,requestCurrentURL:Jr,responseURL:Il,responseLocationURL:Rp,isBlobLike:Dp,isURLPotentiallyTrustworthy:Gr,isValidReasonPhrase:Mp,sameOrigin:es,normalizeMethod:Aw,serializeJavascriptValueToJSONString:tw,iteratorMixin:nw,createIterator:pl,isValidHeaderName:Lp,isValidHeaderValue:hl,isErrorLike:Up,fullyReadBody:sw,bytesMatch:Pp,isReadableStreamLike:ow,readableStreamClose:iw,isomorphicEncode:jn,urlIsLocal:cw,urlHasHttpsScheme:vi,urlIsHttpHttpsScheme:ml,readAllBytes:wl,simpleRangeHeaderValue:gw,buildContentRange:uw,parseMetadata:fl,createInflate:lw,extractMimeType:Ew,getDecodeSplit:yl,utf8DecodeBytes:Iw,environmentSettingsObject:Cw}});var LA=f((oT,bl)=>{"use strict";bl.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var Wi=f((iT,kl)=>{"use strict";var{Blob:hw,File:dw}=d("node:buffer"),{kState:dA}=LA(),{webidl:rA}=ue(),Oi=class e{constructor(A,t,r={}){let n=t,s=r.type,o=r.lastModified??Date.now();this[dA]={blobLike:A,name:n,type:s,lastModified:o}}stream(...A){return rA.brandCheck(this,e),this[dA].blobLike.stream(...A)}arrayBuffer(...A){return rA.brandCheck(this,e),this[dA].blobLike.arrayBuffer(...A)}slice(...A){return rA.brandCheck(this,e),this[dA].blobLike.slice(...A)}text(...A){return rA.brandCheck(this,e),this[dA].blobLike.text(...A)}get size(){return rA.brandCheck(this,e),this[dA].blobLike.size}get type(){return rA.brandCheck(this,e),this[dA].blobLike.type}get name(){return rA.brandCheck(this,e),this[dA].name}get lastModified(){return rA.brandCheck(this,e),this[dA].lastModified}get[Symbol.toStringTag](){return"File"}};rA.converters.Blob=rA.interfaceConverter(hw);function fw(e){return e instanceof dw||e&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&e[Symbol.toStringTag]==="File"}kl.exports={FileLike:Oi,isFileLike:fw}});var Hr=f((aT,Ul)=>{"use strict";var{isBlobLike:As,iteratorMixin:pw}=be(),{kState:Ie}=LA(),{kEnumerableProperty:Ht}=x(),{FileLike:Fl,isFileLike:ww}=Wi(),{webidl:z}=ue(),{File:Nl}=d("node:buffer"),Rl=d("node:util"),Sl=globalThis.File??Nl,vr=class e{constructor(A){if(z.util.markAsUncloneable(this),A!==void 0)throw z.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[Ie]=[]}append(A,t,r=void 0){z.brandCheck(this,e);let n="FormData.append";if(z.argumentLengthCheck(arguments,2,n),arguments.length===3&&!As(t))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");A=z.converters.USVString(A,n,"name"),t=As(t)?z.converters.Blob(t,n,"value",{strict:!1}):z.converters.USVString(t,n,"value"),r=arguments.length===3?z.converters.USVString(r,n,"filename"):void 0;let s=Pi(A,t,r);this[Ie].push(s)}delete(A){z.brandCheck(this,e);let t="FormData.delete";z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie]=this[Ie].filter(r=>r.name!==A)}get(A){z.brandCheck(this,e);let t="FormData.get";z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name");let r=this[Ie].findIndex(n=>n.name===A);return r===-1?null:this[Ie][r].value}getAll(A){z.brandCheck(this,e);let t="FormData.getAll";return z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie].filter(r=>r.name===A).map(r=>r.value)}has(A){z.brandCheck(this,e);let t="FormData.has";return z.argumentLengthCheck(arguments,1,t),A=z.converters.USVString(A,t,"name"),this[Ie].findIndex(r=>r.name===A)!==-1}set(A,t,r=void 0){z.brandCheck(this,e);let n="FormData.set";if(z.argumentLengthCheck(arguments,2,n),arguments.length===3&&!As(t))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");A=z.converters.USVString(A,n,"name"),t=As(t)?z.converters.Blob(t,n,"name",{strict:!1}):z.converters.USVString(t,n,"name"),r=arguments.length===3?z.converters.USVString(r,n,"name"):void 0;let s=Pi(A,t,r),o=this[Ie].findIndex(i=>i.name===A);o!==-1?this[Ie]=[...this[Ie].slice(0,o),s,...this[Ie].slice(o+1).filter(i=>i.name!==A)]:this[Ie].push(s)}[Rl.inspect.custom](A,t){let r=this[Ie].reduce((s,o)=>(s[o.name]?Array.isArray(s[o.name])?s[o.name].push(o.value):s[o.name]=[s[o.name],o.value]:s[o.name]=o.value,s),{__proto__:null});t.depth??=A,t.colors??=!0;let n=Rl.formatWithOptions(t,r);return`FormData ${n.slice(n.indexOf("]")+2)}`}};pw("FormData",vr,Ie,"name","value");Object.defineProperties(vr.prototype,{append:Ht,delete:Ht,get:Ht,getAll:Ht,has:Ht,set:Ht,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Pi(e,A,t){if(typeof A!="string"){if(ww(A)||(A=A instanceof Blob?new Sl([A],"blob",{type:A.type}):new Fl(A,"blob",{type:A.type})),t!==void 0){let r={type:A.type,lastModified:A.lastModified};A=A instanceof Nl?new Sl([A],t,r):new Fl(A,t,r)}}return{name:e,value:A}}Ul.exports={FormData:vr,makeEntry:Pi}});var Gl=f((cT,Yl)=>{"use strict";var{isUSVString:Ml,bufferToLowerCasedHeaderName:mw}=x(),{utf8DecodeBytes:yw}=be(),{HTTP_TOKEN_CODEPOINTS:Dw,isomorphicDecode:Ll}=de(),{isFileLike:bw}=Wi(),{makeEntry:kw}=Hr(),ts=d("node:assert"),{File:Fw}=d("node:buffer"),Rw=globalThis.File??Fw,Sw=Buffer.from('form-data; name="'),Tl=Buffer.from("; filename"),Nw=Buffer.from("--"),Uw=Buffer.from(`--\r
3
3
  `);function Mw(e){for(let A=0;A<e.length;++A)if((e.charCodeAt(A)&-128)!==0)return!1;return!0}function Lw(e){let A=e.length;if(A<27||A>70)return!1;for(let t=0;t<A;++t){let r=e.charCodeAt(t);if(!(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||r===39||r===45||r===95))return!1}return!0}function Tw(e,A){ts(A!=="failure"&&A.essence==="multipart/form-data");let t=A.parameters.get("boundary");if(t===void 0)return"failure";let r=Buffer.from(`--${t}`,"utf8"),n=[],s={position:0};for(;e[s.position]===13&&e[s.position+1]===10;)s.position+=2;let o=e.length;for(;e[o-1]===10&&e[o-2]===13;)o-=2;for(o!==e.length&&(e=e.subarray(0,o));;){if(e.subarray(s.position,s.position+r.length).equals(r))s.position+=r.length;else return"failure";if(s.position===e.length-2&&rs(e,Nw,s)||s.position===e.length-4&&rs(e,Uw,s))return n;if(e[s.position]!==13||e[s.position+1]!==10)return"failure";s.position+=2;let i=xw(e,s);if(i==="failure")return"failure";let{name:a,filename:c,contentType:l,encoding:u}=i;s.position+=2;let g;{let Q=e.indexOf(r.subarray(2),s.position);if(Q===-1)return"failure";g=e.subarray(s.position,Q-4),s.position+=g.length,u==="base64"&&(g=Buffer.from(g.toString(),"base64"))}if(e[s.position]!==13||e[s.position+1]!==10)return"failure";s.position+=2;let E;c!==null?(l??="text/plain",Mw(l)||(l=""),E=new Rw([g],c,{type:l})):E=yw(Buffer.from(g)),ts(Ml(a)),ts(typeof E=="string"&&Ml(E)||bw(E)),n.push(kw(a,E,c))}}function xw(e,A){let t=null,r=null,n=null,s=null;for(;;){if(e[A.position]===13&&e[A.position+1]===10)return t===null?"failure":{name:t,filename:r,contentType:n,encoding:s};let o=Vt(i=>i!==10&&i!==13&&i!==58,e,A);if(o=_i(o,!0,!0,i=>i===9||i===32),!Dw.test(o.toString())||e[A.position]!==58)return"failure";switch(A.position++,Vt(i=>i===32||i===9,e,A),mw(o)){case"content-disposition":{if(t=r=null,!rs(e,Sw,A)||(A.position+=17,t=xl(e,A),t===null))return"failure";if(rs(e,Tl,A)){let i=A.position+Tl.length;if(e[i]===42&&(A.position+=1,i+=1),e[i]!==61||e[i+1]!==34||(A.position+=12,r=xl(e,A),r===null))return"failure"}break}case"content-type":{let i=Vt(a=>a!==10&&a!==13,e,A);i=_i(i,!1,!0,a=>a===9||a===32),n=Ll(i);break}case"content-transfer-encoding":{let i=Vt(a=>a!==10&&a!==13,e,A);i=_i(i,!1,!0,a=>a===9||a===32),s=Ll(i);break}default:Vt(i=>i!==10&&i!==13,e,A)}if(e[A.position]!==13&&e[A.position+1]!==10)return"failure";A.position+=2}}function xl(e,A){ts(e[A.position-1]===34);let t=Vt(r=>r!==10&&r!==13&&r!==34,e,A);return e[A.position]!==34?null:(A.position++,t=new TextDecoder().decode(t).replace(/%0A/ig,`
4
- `).replace(/%0D/ig,"\r").replace(/%22/g,'"'),t)}function Vt(e,A,t){let r=t.position;for(;r<A.length&&e(A[r]);)++r;return A.subarray(t.position,t.position=r)}function _i(e,A,t,r){let n=0,s=e.length-1;if(A)for(;n<e.length&&r(e[n]);)n++;if(t)for(;s>0&&r(e[s]);)s--;return n===0&&s===e.length-1?e:e.subarray(n,s+1)}function rs(e,A,t){if(e.length<A.length)return!1;for(let r=0;r<A.length;r++)if(A[r]!==e[t.position+r])return!1;return!0}Yl.exports={multipartFormDataParser:Tw,validateBoundary:Lw}});var Wt=f((cT,Zl)=>{"use strict";var Vr=x(),{ReadableStreamFrom:Yw,isBlobLike:Jl,isReadableStreamLike:Gw,readableStreamClose:Jw,createDeferredPromise:vw,fullyReadBody:Hw,extractMimeType:Vw,utf8DecodeBytes:Vl}=be(),{FormData:vl}=Hr(),{kState:Ot}=LA(),{webidl:qw}=ue(),{Blob:Ow}=d("node:buffer"),Zi=d("node:assert"),{isErrored:ql,isDisturbed:Ww}=d("node:stream"),{isArrayBuffer:Pw}=d("node:util/types"),{serializeAMimeType:_w}=de(),{multipartFormDataParser:Zw}=Gl(),zi;try{let e=d("node:crypto");zi=A=>e.randomInt(0,A)}catch{zi=e=>Math.floor(Math.random(e))}var ns=new TextEncoder;function zw(){}var Ol=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,Wl;Ol&&(Wl=new FinalizationRegistry(e=>{let A=e.deref();A&&!A.locked&&!Ww(A)&&!ql(A)&&A.cancel("Response object has been garbage collected").catch(zw)}));function Pl(e,A=!1){let t=null;e instanceof ReadableStream?t=e:Jl(e)?t=e.stream():t=new ReadableStream({async pull(a){let c=typeof n=="string"?ns.encode(n):n;c.byteLength&&a.enqueue(c),queueMicrotask(()=>Jw(a))},start(){},type:"bytes"}),Zi(Gw(t));let r=null,n=null,s=null,o=null;if(typeof e=="string")n=e,o="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)n=e.toString(),o="application/x-www-form-urlencoded;charset=UTF-8";else if(Pw(e))n=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))n=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(Vr.isFormDataLike(e)){let a=`----formdata-undici-0${`${zi(1e11)}`.padStart(11,"0")}`,c=`--${a}\r
4
+ `).replace(/%0D/ig,"\r").replace(/%22/g,'"'),t)}function Vt(e,A,t){let r=t.position;for(;r<A.length&&e(A[r]);)++r;return A.subarray(t.position,t.position=r)}function _i(e,A,t,r){let n=0,s=e.length-1;if(A)for(;n<e.length&&r(e[n]);)n++;if(t)for(;s>0&&r(e[s]);)s--;return n===0&&s===e.length-1?e:e.subarray(n,s+1)}function rs(e,A,t){if(e.length<A.length)return!1;for(let r=0;r<A.length;r++)if(A[r]!==e[t.position+r])return!1;return!0}Yl.exports={multipartFormDataParser:Tw,validateBoundary:Lw}});var Wt=f((gT,Zl)=>{"use strict";var Vr=x(),{ReadableStreamFrom:Yw,isBlobLike:Jl,isReadableStreamLike:Gw,readableStreamClose:Jw,createDeferredPromise:vw,fullyReadBody:Hw,extractMimeType:Vw,utf8DecodeBytes:Vl}=be(),{FormData:vl}=Hr(),{kState:Ot}=LA(),{webidl:qw}=ue(),{Blob:Ow}=d("node:buffer"),Zi=d("node:assert"),{isErrored:ql,isDisturbed:Ww}=d("node:stream"),{isArrayBuffer:Pw}=d("node:util/types"),{serializeAMimeType:_w}=de(),{multipartFormDataParser:Zw}=Gl(),zi;try{let e=d("node:crypto");zi=A=>e.randomInt(0,A)}catch{zi=e=>Math.floor(Math.random(e))}var ns=new TextEncoder;function zw(){}var Ol=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,Wl;Ol&&(Wl=new FinalizationRegistry(e=>{let A=e.deref();A&&!A.locked&&!Ww(A)&&!ql(A)&&A.cancel("Response object has been garbage collected").catch(zw)}));function Pl(e,A=!1){let t=null;e instanceof ReadableStream?t=e:Jl(e)?t=e.stream():t=new ReadableStream({async pull(a){let c=typeof n=="string"?ns.encode(n):n;c.byteLength&&a.enqueue(c),queueMicrotask(()=>Jw(a))},start(){},type:"bytes"}),Zi(Gw(t));let r=null,n=null,s=null,o=null;if(typeof e=="string")n=e,o="text/plain;charset=UTF-8";else if(e instanceof URLSearchParams)n=e.toString(),o="application/x-www-form-urlencoded;charset=UTF-8";else if(Pw(e))n=new Uint8Array(e.slice());else if(ArrayBuffer.isView(e))n=new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));else if(Vr.isFormDataLike(e)){let a=`----formdata-undici-0${`${zi(1e11)}`.padStart(11,"0")}`,c=`--${a}\r
5
5
  Content-Disposition: form-data`;let l=C=>C.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),u=C=>C.replace(/\r?\n|\r/g,`\r
6
6
  `),g=[],E=new Uint8Array([13,10]);s=0;let Q=!1;for(let[C,B]of e)if(typeof B=="string"){let h=ns.encode(c+`; name="${l(u(C))}"\r
7
7
  \r
@@ -10,7 +10,7 @@ ${u(B)}\r
10
10
  Content-Type: ${B.type||"application/octet-stream"}\r
11
11
  \r
12
12
  `);g.push(h,B,E),typeof B.size=="number"?s+=h.byteLength+B.size+E.byteLength:Q=!0}let I=ns.encode(`--${a}--\r
13
- `);g.push(I),s+=I.byteLength,Q&&(s=null),n=e,r=async function*(){for(let C of g)C.stream?yield*C.stream():yield C},o=`multipart/form-data; boundary=${a}`}else if(Jl(e))n=e,s=e.size,e.type&&(o=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(A)throw new TypeError("keepalive");if(Vr.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");t=e instanceof ReadableStream?e:Yw(e)}if((typeof n=="string"||Vr.isBuffer(n))&&(s=Buffer.byteLength(n)),r!=null){let a;t=new ReadableStream({async start(){a=r(e)[Symbol.asyncIterator]()},async pull(c){let{value:l,done:u}=await a.next();if(u)queueMicrotask(()=>{c.close(),c.byobRequest?.respond(0)});else if(!ql(t)){let g=new Uint8Array(l);g.byteLength&&c.enqueue(g)}return c.desiredSize>0},async cancel(c){await a.return()},type:"bytes"})}return[{stream:t,source:n,length:s},o]}function Kw(e,A=!1){return e instanceof ReadableStream&&(Zi(!Vr.isDisturbed(e),"The body has already been consumed."),Zi(!e.locked,"The stream is locked.")),Pl(e,A)}function Xw(e,A){let[t,r]=A.stream.tee();return A.stream=t,{stream:r,length:A.length,source:A.source}}function jw(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function $w(e){return{blob(){return qt(this,t=>{let r=Hl(this);return r===null?r="":r&&(r=_w(r)),new Ow([t],{type:r})},e)},arrayBuffer(){return qt(this,t=>new Uint8Array(t).buffer,e)},text(){return qt(this,Vl,e)},json(){return qt(this,Am,e)},formData(){return qt(this,t=>{let r=Hl(this);if(r!==null)switch(r.essence){case"multipart/form-data":{let n=Zw(t,r);if(n==="failure")throw new TypeError("Failed to parse body as FormData.");let s=new vl;return s[Ot]=n,s}case"application/x-www-form-urlencoded":{let n=new URLSearchParams(t.toString()),s=new vl;for(let[o,i]of n)s.append(o,i);return s}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return qt(this,t=>new Uint8Array(t),e)}}}function em(e){Object.assign(e.prototype,$w(e))}async function qt(e,A,t){if(qw.brandCheck(e,t),_l(e))throw new TypeError("Body is unusable: Body has already been read");jw(e[Ot]);let r=vw(),n=o=>r.reject(o),s=o=>{try{r.resolve(A(o))}catch(i){n(i)}};return e[Ot].body==null?(s(Buffer.allocUnsafe(0)),r.promise):(await Hw(e[Ot].body,s,n),r.promise)}function _l(e){let A=e[Ot].body;return A!=null&&(A.stream.locked||Vr.isDisturbed(A.stream))}function Am(e){return JSON.parse(Vl(e))}function Hl(e){let A=e[Ot].headersList,t=Vw(A);return t==="failure"?null:t}Zl.exports={extractBody:Pl,safelyExtractBody:Kw,cloneBody:Xw,mixinBody:em,streamRegistry:Wl,hasFinalizationRegistry:Ol,bodyUnusable:_l}});var gE=f((gT,cE)=>{"use strict";var k=d("node:assert"),R=x(),{channels:zl}=Ut(),Ki=Ni(),{RequestContentLengthMismatchError:rt,ResponseContentLengthMismatchError:Kl,RequestAbortedError:nE,InvalidArgumentError:tm,HeadersTimeoutError:rm,HeadersOverflowError:nm,SocketError:Pt,InformationalError:_t,BodyTimeoutError:sm,HTTPParserError:om,ResponseExceededMaxSizeError:im}=v(),{kUrl:sE,kReset:fe,kClient:as,kParser:K,kBlocking:Wr,kRunning:oe,kPending:oE,kSize:Xl,kWriting:TA,kQueue:qe,kNoRef:qr,kKeepAliveDefaultTimeout:am,kHostHeader:cm,kPendingIdx:gm,kRunningIdx:Ge,kError:Ce,kPipelining:cs,kSocket:st,kKeepAliveTimeoutValue:us,kMaxHeadersSize:Xi,kKeepAliveMaxTimeout:um,kKeepAliveTimeoutThreshold:lm,kHeadersTimeout:Em,kBodyTimeout:Qm,kStrictContentLength:ea,kMaxRequests:jl,kCounter:Bm,kMaxResponseSize:Im,kOnError:$l,kResume:fA,kHTTPContext:iE}=j(),ke=Wu(),eE=Buffer.alloc(0),ss=Buffer[Symbol.species],os=R.addListener,Cm=R.removeAllListeners,ot=Symbol("kIdleSocketValidation"),nt=Symbol("kIdleSocketValidationTimeout"),na=Symbol("kSocketUsed"),ji;async function hm(){let e=process.env.JEST_WORKER_ID?Li():void 0,A;try{A=await WebAssembly.compile(Zu())}catch{A=await WebAssembly.compile(e||Li())}return await WebAssembly.instantiate(A,{env:{wasm_on_url:(t,r,n)=>0,wasm_on_status:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onStatus(new ss(nA.buffer,s,n))||0},wasm_on_message_begin:t=>(k(Ae.ptr===t),Ae.onMessageBegin()||0),wasm_on_header_field:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onHeaderField(new ss(nA.buffer,s,n))||0},wasm_on_header_value:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onHeaderValue(new ss(nA.buffer,s,n))||0},wasm_on_headers_complete:(t,r,n,s)=>(k(Ae.ptr===t),Ae.onHeadersComplete(r,!!n,!!s)||0),wasm_on_body:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onBody(new ss(nA.buffer,s,n))||0},wasm_on_message_complete:t=>(k(Ae.ptr===t),Ae.onMessageComplete()||0)}})}var $i=null,Aa=hm();Aa.catch();var Ae=null,nA=null,is=0,sA=null,dm=0,Or=1,Zt=2|Or,gs=4|Or,ta=8|dm,ra=class{constructor(A,t,{exports:r}){k(Number.isFinite(A[Xi])&&A[Xi]>0),this.llhttp=r,this.ptr=this.llhttp.llhttp_alloc(ke.TYPE.RESPONSE),this.client=A,this.socket=t,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[Xi],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[Im]}setTimeout(A,t){A!==this.timeoutValue||t&Or^this.timeoutType&Or?(this.timeout&&(Ki.clearTimeout(this.timeout),this.timeout=null),A&&(t&Or?this.timeout=Ki.setFastTimeout(AE,A,new WeakRef(this)):(this.timeout=setTimeout(AE,A,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=A):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){this.socket.destroyed||!this.paused||(k(this.ptr!=null),k(Ae==null),this.llhttp.llhttp_resume(this.ptr),k(this.timeoutType===gs),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||eE),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){k(this.ptr!=null),k(Ae==null),k(!this.paused);let{socket:t,llhttp:r}=this;A.length>is&&(sA&&r.free(sA),is=Math.ceil(A.length/4096)*4096,sA=r.malloc(is)),new Uint8Array(r.memory.buffer,sA,is).set(A);try{let n;try{nA=A,Ae=this,n=r.llhttp_execute(this.ptr,sA,A.length)}catch(o){throw o}finally{Ae=null,nA=null}let s=r.llhttp_get_error_pos(this.ptr)-sA;if(n!==ke.ERROR.OK){let o=A.subarray(s);if(n===ke.ERROR.PAUSED_UPGRADE)this.onUpgrade(o);else if(n===ke.ERROR.PAUSED)this.paused=!0,t.unshift(o);else throw this.createError(n,o)}}catch(n){R.destroy(t,n)}}finish(){k(Ae===null),k(this.ptr!=null),k(!this.paused);let{llhttp:A}=this,t;try{Ae=this,t=A.llhttp_finish(this.ptr)}finally{Ae=null}return t===ke.ERROR.OK?null:t===ke.ERROR.PAUSED||t===ke.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,eE)}createError(A,t){let{llhttp:r,contentLength:n,bytesRead:s}=this;if(n&&s!==parseInt(n,10))return new Kl;let o=r.llhttp_get_error_reason(this.ptr),i="";if(o){let a=new Uint8Array(r.memory.buffer,o).indexOf(0);i="Response does not match the HTTP/1.1 protocol ("+Buffer.from(r.memory.buffer,o,a).toString()+")"}return new om(i,ke.ERROR[A],t)}destroy(){k(this.ptr!=null),k(Ae==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Ki.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){this.statusText=A.toString()}onMessageBegin(){let{socket:A,client:t}=this;if(A.destroyed)return-1;if(t[oe]===0)return R.destroy(A,new Pt("bad response",R.getSocketInfo(A))),-1;let r=t[qe][t[Ge]];if(!r)return-1;r.onResponseStarted()}onHeaderField(A){let t=this.headers.length;(t&1)===0?this.headers.push(A):this.headers[t-1]=Buffer.concat([this.headers[t-1],A]),this.trackHeader(A.length)}onHeaderValue(A){let t=this.headers.length;(t&1)===1?(this.headers.push(A),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],A]);let r=this.headers[t-2];if(r.length===10){let n=R.bufferToLowerCasedHeaderName(r);n==="keep-alive"?this.keepAlive+=A.toString():n==="connection"&&(this.connection+=A.toString())}else r.length===14&&R.bufferToLowerCasedHeaderName(r)==="content-length"&&(this.contentLength+=A.toString());this.trackHeader(A.length)}trackHeader(A){this.headersSize+=A,this.headersSize>=this.headersMaxSize&&R.destroy(this.socket,new nm)}onUpgrade(A){let{upgrade:t,client:r,socket:n,headers:s,statusCode:o}=this;k(t),k(r[st]===n),k(!n.destroyed),k(!this.paused),k((s.length&1)===0);let i=r[qe][r[Ge]];k(i),k(i.upgrade||i.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,n.unshift(A),n[K].destroy(),n[K]=null,n[as]=null,n[Ce]=null,Cm(n),r[st]=null,r[iE]=null,r[qe][r[Ge]++]=null,r.emit("disconnect",r[sE],[r],new _t("upgrade"));try{i.onUpgrade(o,s,n)}catch(a){R.destroy(n,a)}r[fA]()}onHeadersComplete(A,t,r){let{client:n,socket:s,headers:o,statusText:i}=this;if(s.destroyed)return-1;if(n[oe]===0)return R.destroy(s,new Pt("bad response",R.getSocketInfo(s))),-1;let a=n[qe][n[Ge]];if(!a)return-1;if(k(!this.upgrade),k(this.statusCode<200),A===100)return R.destroy(s,new Pt("bad response",R.getSocketInfo(s))),-1;if(t&&!a.upgrade)return R.destroy(s,new Pt("bad upgrade",R.getSocketInfo(s))),-1;if(k(this.timeoutType===Zt),this.statusCode=A,this.shouldKeepAlive=r||a.method==="HEAD"&&!s[fe]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let l=a.bodyTimeout!=null?a.bodyTimeout:n[Qm];this.setTimeout(l,gs)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(a.method==="CONNECT")return k(n[oe]===1),this.upgrade=!0,2;if(t)return k(n[oe]===1),this.upgrade=!0,2;if(k((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&n[cs]){let l=this.keepAlive?R.parseKeepAliveTimeout(this.keepAlive):null;if(l!=null){let u=Math.min(l-n[lm],n[um]);u<=0?s[fe]=!0:n[us]=u}else n[us]=n[am]}else s[fe]=!0;let c=a.onHeaders(A,o,this.resume,i)===!1;return a.aborted?-1:a.method==="HEAD"||A<200?1:(s[Wr]&&(s[Wr]=!1,n[fA]()),c?ke.ERROR.PAUSED:0)}onBody(A){let{client:t,socket:r,statusCode:n,maxResponseSize:s}=this;if(r.destroyed)return-1;let o=t[qe][t[Ge]];if(k(o),k(this.timeoutType===gs),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),k(n>=200),s>-1&&this.bytesRead+A.length>s)return R.destroy(r,new im),-1;if(this.bytesRead+=A.length,o.onData(A)===!1)return ke.ERROR.PAUSED}onMessageComplete(){let{client:A,socket:t,statusCode:r,upgrade:n,headers:s,contentLength:o,bytesRead:i,shouldKeepAlive:a}=this;if(t.destroyed&&(!r||a))return-1;if(n)return;k(r>=100),k((this.headers.length&1)===0);let c=A[qe][A[Ge]];if(k(c),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(r<200)){if(c.method!=="HEAD"&&o&&i!==parseInt(o,10))return R.destroy(t,new Kl),-1;if(c.onComplete(s),A[qe][A[Ge]++]=null,t[na]=!0,t[TA])return k(A[oe]===0),R.destroy(t,new _t("reset")),ke.ERROR.PAUSED;if(a){if(t[fe]&&A[oe]===0)return R.destroy(t,new _t("reset")),ke.ERROR.PAUSED;A[cs]==null||A[cs]===1?setImmediate(()=>A[fA]()):A[fA]()}else return R.destroy(t,new _t("reset")),ke.ERROR.PAUSED}}};function AE(e){let{socket:A,timeoutType:t,client:r,paused:n}=e.deref();t===Zt?(!A[TA]||A.writableNeedDrain||r[oe]>1)&&(k(!n,"cannot be paused while waiting for headers"),R.destroy(A,new rm)):t===gs?n||R.destroy(A,new sm):t===ta&&(k(r[oe]===0&&r[us]),R.destroy(A,new _t("socket idle timeout")))}async function fm(e,A){e[st]=A,$i||($i=await Aa,Aa=null),A[qr]=!1,A[TA]=!1,A[fe]=!1,A[Wr]=!1,A[ot]=0,A[nt]=null,A[na]=!1,A[K]=new ra(e,A,$i),os(A,"error",function(r){k(r.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let n=this[K];if(r.code==="ECONNRESET"&&n.statusCode&&!n.shouldKeepAlive){let s=n.finish();s&&(this[Ce]=s,this[as][$l](s));return}this[Ce]=r,this[as][$l](r)}),os(A,"readable",function(){let r=this[K];r&&r.readMore()}),os(A,"end",function(){let r=this[K];if(r.statusCode&&!r.shouldKeepAlive){let n=r.finish();n&&R.destroy(this,n);return}R.destroy(this,new Pt("other side closed",R.getSocketInfo(this)))}),os(A,"close",function(){let r=this[as],n=this[K];aE(this),n&&(!this[Ce]&&n.statusCode&&!n.shouldKeepAlive&&(this[Ce]=n.finish()||this[Ce]),this[K].destroy(),this[K]=null);let s=this[Ce]||new Pt("closed",R.getSocketInfo(this));if(r[st]=null,r[iE]=null,r.destroyed){k(r[oE]===0);let o=r[qe].splice(r[Ge]);for(let i=0;i<o.length;i++){let a=o[i];R.errorRequest(r,a,s)}}else if(r[oe]>0&&s.code!=="UND_ERR_INFO"){let o=r[qe][r[Ge]];r[qe][r[Ge]++]=null,R.errorRequest(r,o,s)}r[gm]=r[Ge],k(r[oe]===0),r.emit("disconnect",r[sE],[r],s),r[fA]()});let t=!1;return A.on("close",()=>{t=!0}),{version:"h1",defaultPipelining:1,write(...r){return ym(e,...r)},resume(){wm(e)},destroy(r,n){t?queueMicrotask(n):A.destroy(r).on("close",n)},get destroyed(){return A.destroyed},busy(r){return!!(A[TA]||A[fe]||A[Wr]||A[ot]===1||r&&(e[oe]>0&&!r.idempotent||e[oe]>0&&(r.upgrade||r.method==="CONNECT")||e[oe]>0&&R.bodyLength(r.body)!==0&&(R.isStream(r.body)||R.isAsyncIterable(r.body)||R.isFormDataLike(r.body))))}}}function aE(e){e[nt]&&(clearTimeout(e[nt]),e[nt]=null),e[ot]=0}function pm(e,A){A[ot]=1,A[nt]=setTimeout(()=>{A[nt]=null,A[ot]=2,e[st]===A&&!A.destroyed&&e[fA]()},0),A[nt].unref?.()}function wm(e){let A=e[st];if(A&&!A.destroyed){if(e[Xl]===0?!A[qr]&&A.unref&&(A.unref(),A[qr]=!0):A[qr]&&A.ref&&(A.ref(),A[qr]=!1),e[oe]===0&&e[oE]>0&&A[na]){if(A[ot]===0)return pm(e,A),A[K].readMore(),A.destroyed,void 0;if(A[ot]===1)return A[K].readMore(),A.destroyed,void 0}if(e[oe]===0&&(A[K].readMore(),A.destroyed))return;if(e[Xl]===0)A[K].timeoutType!==ta&&A[K].setTimeout(e[us],ta);else if(e[oe]>0&&A[K].statusCode<200&&A[K].timeoutType!==Zt){let t=e[qe][e[Ge]],r=t.headersTimeout!=null?t.headersTimeout:e[Em];A[K].setTimeout(r,Zt)}}}function mm(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function ym(e,A){let{method:t,path:r,host:n,upgrade:s,blocking:o,reset:i}=A,{body:a,headers:c,contentLength:l}=A,u=t==="PUT"||t==="POST"||t==="PATCH"||t==="QUERY"||t==="PROPFIND"||t==="PROPPATCH";if(R.isFormDataLike(a)){ji||(ji=Wt().extractBody);let[C,B]=ji(a);A.contentType==null&&c.push("content-type",B),a=C.stream,l=C.length}else if(R.isBlobLike(a)&&A.contentType==null){let C=a.type;if(C){let B=`${C}`;if(!R.isValidHeaderValue(B))return R.errorRequest(e,A,new tm("invalid content-type header")),!1;c.push("content-type",B)}}a&&typeof a.read=="function"&&a.read(0);let g=R.bodyLength(a);if(l=g??l,l===null&&(l=A.contentLength),l===0&&!u&&(l=null),mm(t)&&l>0&&A.contentLength!==null&&A.contentLength!==l){if(e[ea])return R.errorRequest(e,A,new rt),!1;process.emitWarning(new rt)}let E=e[st];aE(E);let Q=C=>{A.aborted||A.completed||(R.errorRequest(e,A,C||new nE),R.destroy(a),R.destroy(E,new _t("aborted")))};try{A.onConnect(Q)}catch(C){R.errorRequest(e,A,C)}if(A.aborted)return!1;t==="HEAD"&&(E[fe]=!0),(s||t==="CONNECT")&&(E[fe]=!0),i!=null&&(E[fe]=i),e[jl]&&E[Bm]++>=e[jl]&&(E[fe]=!0),o&&(E[Wr]=!0);let I=`${t} ${r} HTTP/1.1\r
13
+ `);g.push(I),s+=I.byteLength,Q&&(s=null),n=e,r=async function*(){for(let C of g)C.stream?yield*C.stream():yield C},o=`multipart/form-data; boundary=${a}`}else if(Jl(e))n=e,s=e.size,e.type&&(o=e.type);else if(typeof e[Symbol.asyncIterator]=="function"){if(A)throw new TypeError("keepalive");if(Vr.isDisturbed(e)||e.locked)throw new TypeError("Response body object should not be disturbed or locked");t=e instanceof ReadableStream?e:Yw(e)}if((typeof n=="string"||Vr.isBuffer(n))&&(s=Buffer.byteLength(n)),r!=null){let a;t=new ReadableStream({async start(){a=r(e)[Symbol.asyncIterator]()},async pull(c){let{value:l,done:u}=await a.next();if(u)queueMicrotask(()=>{c.close(),c.byobRequest?.respond(0)});else if(!ql(t)){let g=new Uint8Array(l);g.byteLength&&c.enqueue(g)}return c.desiredSize>0},async cancel(c){await a.return()},type:"bytes"})}return[{stream:t,source:n,length:s},o]}function Kw(e,A=!1){return e instanceof ReadableStream&&(Zi(!Vr.isDisturbed(e),"The body has already been consumed."),Zi(!e.locked,"The stream is locked.")),Pl(e,A)}function Xw(e,A){let[t,r]=A.stream.tee();return A.stream=t,{stream:r,length:A.length,source:A.source}}function jw(e){if(e.aborted)throw new DOMException("The operation was aborted.","AbortError")}function $w(e){return{blob(){return qt(this,t=>{let r=Hl(this);return r===null?r="":r&&(r=_w(r)),new Ow([t],{type:r})},e)},arrayBuffer(){return qt(this,t=>new Uint8Array(t).buffer,e)},text(){return qt(this,Vl,e)},json(){return qt(this,Am,e)},formData(){return qt(this,t=>{let r=Hl(this);if(r!==null)switch(r.essence){case"multipart/form-data":{let n=Zw(t,r);if(n==="failure")throw new TypeError("Failed to parse body as FormData.");let s=new vl;return s[Ot]=n,s}case"application/x-www-form-urlencoded":{let n=new URLSearchParams(t.toString()),s=new vl;for(let[o,i]of n)s.append(o,i);return s}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},e)},bytes(){return qt(this,t=>new Uint8Array(t),e)}}}function em(e){Object.assign(e.prototype,$w(e))}async function qt(e,A,t){if(qw.brandCheck(e,t),_l(e))throw new TypeError("Body is unusable: Body has already been read");jw(e[Ot]);let r=vw(),n=o=>r.reject(o),s=o=>{try{r.resolve(A(o))}catch(i){n(i)}};return e[Ot].body==null?(s(Buffer.allocUnsafe(0)),r.promise):(await Hw(e[Ot].body,s,n),r.promise)}function _l(e){let A=e[Ot].body;return A!=null&&(A.stream.locked||Vr.isDisturbed(A.stream))}function Am(e){return JSON.parse(Vl(e))}function Hl(e){let A=e[Ot].headersList,t=Vw(A);return t==="failure"?null:t}Zl.exports={extractBody:Pl,safelyExtractBody:Kw,cloneBody:Xw,mixinBody:em,streamRegistry:Wl,hasFinalizationRegistry:Ol,bodyUnusable:_l}});var gE=f((uT,cE)=>{"use strict";var k=d("node:assert"),R=x(),{channels:zl}=Ut(),Ki=Ni(),{RequestContentLengthMismatchError:rt,ResponseContentLengthMismatchError:Kl,RequestAbortedError:nE,InvalidArgumentError:tm,HeadersTimeoutError:rm,HeadersOverflowError:nm,SocketError:Pt,InformationalError:_t,BodyTimeoutError:sm,HTTPParserError:om,ResponseExceededMaxSizeError:im}=v(),{kUrl:sE,kReset:fe,kClient:as,kParser:K,kBlocking:Wr,kRunning:oe,kPending:oE,kSize:Xl,kWriting:TA,kQueue:qe,kNoRef:qr,kKeepAliveDefaultTimeout:am,kHostHeader:cm,kPendingIdx:gm,kRunningIdx:Ge,kError:Ce,kPipelining:cs,kSocket:st,kKeepAliveTimeoutValue:us,kMaxHeadersSize:Xi,kKeepAliveMaxTimeout:um,kKeepAliveTimeoutThreshold:lm,kHeadersTimeout:Em,kBodyTimeout:Qm,kStrictContentLength:ea,kMaxRequests:jl,kCounter:Bm,kMaxResponseSize:Im,kOnError:$l,kResume:fA,kHTTPContext:iE}=j(),ke=Wu(),eE=Buffer.alloc(0),ss=Buffer[Symbol.species],os=R.addListener,Cm=R.removeAllListeners,ot=Symbol("kIdleSocketValidation"),nt=Symbol("kIdleSocketValidationTimeout"),na=Symbol("kSocketUsed"),ji;async function hm(){let e=process.env.JEST_WORKER_ID?Li():void 0,A;try{A=await WebAssembly.compile(Zu())}catch{A=await WebAssembly.compile(e||Li())}return await WebAssembly.instantiate(A,{env:{wasm_on_url:(t,r,n)=>0,wasm_on_status:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onStatus(new ss(nA.buffer,s,n))||0},wasm_on_message_begin:t=>(k(Ae.ptr===t),Ae.onMessageBegin()||0),wasm_on_header_field:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onHeaderField(new ss(nA.buffer,s,n))||0},wasm_on_header_value:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onHeaderValue(new ss(nA.buffer,s,n))||0},wasm_on_headers_complete:(t,r,n,s)=>(k(Ae.ptr===t),Ae.onHeadersComplete(r,!!n,!!s)||0),wasm_on_body:(t,r,n)=>{k(Ae.ptr===t);let s=r-sA+nA.byteOffset;return Ae.onBody(new ss(nA.buffer,s,n))||0},wasm_on_message_complete:t=>(k(Ae.ptr===t),Ae.onMessageComplete()||0)}})}var $i=null,Aa=hm();Aa.catch();var Ae=null,nA=null,is=0,sA=null,dm=0,Or=1,Zt=2|Or,gs=4|Or,ta=8|dm,ra=class{constructor(A,t,{exports:r}){k(Number.isFinite(A[Xi])&&A[Xi]>0),this.llhttp=r,this.ptr=this.llhttp.llhttp_alloc(ke.TYPE.RESPONSE),this.client=A,this.socket=t,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[Xi],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[Im]}setTimeout(A,t){A!==this.timeoutValue||t&Or^this.timeoutType&Or?(this.timeout&&(Ki.clearTimeout(this.timeout),this.timeout=null),A&&(t&Or?this.timeout=Ki.setFastTimeout(AE,A,new WeakRef(this)):(this.timeout=setTimeout(AE,A,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=A):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=t}resume(){this.socket.destroyed||!this.paused||(k(this.ptr!=null),k(Ae==null),this.llhttp.llhttp_resume(this.ptr),k(this.timeoutType===gs),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||eE),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){k(this.ptr!=null),k(Ae==null),k(!this.paused);let{socket:t,llhttp:r}=this;A.length>is&&(sA&&r.free(sA),is=Math.ceil(A.length/4096)*4096,sA=r.malloc(is)),new Uint8Array(r.memory.buffer,sA,is).set(A);try{let n;try{nA=A,Ae=this,n=r.llhttp_execute(this.ptr,sA,A.length)}catch(o){throw o}finally{Ae=null,nA=null}let s=r.llhttp_get_error_pos(this.ptr)-sA;if(n!==ke.ERROR.OK){let o=A.subarray(s);if(n===ke.ERROR.PAUSED_UPGRADE)this.onUpgrade(o);else if(n===ke.ERROR.PAUSED)this.paused=!0,t.unshift(o);else throw this.createError(n,o)}}catch(n){R.destroy(t,n)}}finish(){k(Ae===null),k(this.ptr!=null),k(!this.paused);let{llhttp:A}=this,t;try{Ae=this,t=A.llhttp_finish(this.ptr)}finally{Ae=null}return t===ke.ERROR.OK?null:t===ke.ERROR.PAUSED||t===ke.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(t,eE)}createError(A,t){let{llhttp:r,contentLength:n,bytesRead:s}=this;if(n&&s!==parseInt(n,10))return new Kl;let o=r.llhttp_get_error_reason(this.ptr),i="";if(o){let a=new Uint8Array(r.memory.buffer,o).indexOf(0);i="Response does not match the HTTP/1.1 protocol ("+Buffer.from(r.memory.buffer,o,a).toString()+")"}return new om(i,ke.ERROR[A],t)}destroy(){k(this.ptr!=null),k(Ae==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Ki.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){this.statusText=A.toString()}onMessageBegin(){let{socket:A,client:t}=this;if(A.destroyed)return-1;if(t[oe]===0)return R.destroy(A,new Pt("bad response",R.getSocketInfo(A))),-1;let r=t[qe][t[Ge]];if(!r)return-1;r.onResponseStarted()}onHeaderField(A){let t=this.headers.length;(t&1)===0?this.headers.push(A):this.headers[t-1]=Buffer.concat([this.headers[t-1],A]),this.trackHeader(A.length)}onHeaderValue(A){let t=this.headers.length;(t&1)===1?(this.headers.push(A),t+=1):this.headers[t-1]=Buffer.concat([this.headers[t-1],A]);let r=this.headers[t-2];if(r.length===10){let n=R.bufferToLowerCasedHeaderName(r);n==="keep-alive"?this.keepAlive+=A.toString():n==="connection"&&(this.connection+=A.toString())}else r.length===14&&R.bufferToLowerCasedHeaderName(r)==="content-length"&&(this.contentLength+=A.toString());this.trackHeader(A.length)}trackHeader(A){this.headersSize+=A,this.headersSize>=this.headersMaxSize&&R.destroy(this.socket,new nm)}onUpgrade(A){let{upgrade:t,client:r,socket:n,headers:s,statusCode:o}=this;k(t),k(r[st]===n),k(!n.destroyed),k(!this.paused),k((s.length&1)===0);let i=r[qe][r[Ge]];k(i),k(i.upgrade||i.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,n.unshift(A),n[K].destroy(),n[K]=null,n[as]=null,n[Ce]=null,Cm(n),r[st]=null,r[iE]=null,r[qe][r[Ge]++]=null,r.emit("disconnect",r[sE],[r],new _t("upgrade"));try{i.onUpgrade(o,s,n)}catch(a){R.destroy(n,a)}r[fA]()}onHeadersComplete(A,t,r){let{client:n,socket:s,headers:o,statusText:i}=this;if(s.destroyed)return-1;if(n[oe]===0)return R.destroy(s,new Pt("bad response",R.getSocketInfo(s))),-1;let a=n[qe][n[Ge]];if(!a)return-1;if(k(!this.upgrade),k(this.statusCode<200),A===100)return R.destroy(s,new Pt("bad response",R.getSocketInfo(s))),-1;if(t&&!a.upgrade)return R.destroy(s,new Pt("bad upgrade",R.getSocketInfo(s))),-1;if(k(this.timeoutType===Zt),this.statusCode=A,this.shouldKeepAlive=r||a.method==="HEAD"&&!s[fe]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let l=a.bodyTimeout!=null?a.bodyTimeout:n[Qm];this.setTimeout(l,gs)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(a.method==="CONNECT")return k(n[oe]===1),this.upgrade=!0,2;if(t)return k(n[oe]===1),this.upgrade=!0,2;if(k((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&n[cs]){let l=this.keepAlive?R.parseKeepAliveTimeout(this.keepAlive):null;if(l!=null){let u=Math.min(l-n[lm],n[um]);u<=0?s[fe]=!0:n[us]=u}else n[us]=n[am]}else s[fe]=!0;let c=a.onHeaders(A,o,this.resume,i)===!1;return a.aborted?-1:a.method==="HEAD"||A<200?1:(s[Wr]&&(s[Wr]=!1,n[fA]()),c?ke.ERROR.PAUSED:0)}onBody(A){let{client:t,socket:r,statusCode:n,maxResponseSize:s}=this;if(r.destroyed)return-1;let o=t[qe][t[Ge]];if(k(o),k(this.timeoutType===gs),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),k(n>=200),s>-1&&this.bytesRead+A.length>s)return R.destroy(r,new im),-1;if(this.bytesRead+=A.length,o.onData(A)===!1)return ke.ERROR.PAUSED}onMessageComplete(){let{client:A,socket:t,statusCode:r,upgrade:n,headers:s,contentLength:o,bytesRead:i,shouldKeepAlive:a}=this;if(t.destroyed&&(!r||a))return-1;if(n)return;k(r>=100),k((this.headers.length&1)===0);let c=A[qe][A[Ge]];if(k(c),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(r<200)){if(c.method!=="HEAD"&&o&&i!==parseInt(o,10))return R.destroy(t,new Kl),-1;if(c.onComplete(s),A[qe][A[Ge]++]=null,t[na]=!0,t[TA])return k(A[oe]===0),R.destroy(t,new _t("reset")),ke.ERROR.PAUSED;if(a){if(t[fe]&&A[oe]===0)return R.destroy(t,new _t("reset")),ke.ERROR.PAUSED;A[cs]==null||A[cs]===1?setImmediate(()=>A[fA]()):A[fA]()}else return R.destroy(t,new _t("reset")),ke.ERROR.PAUSED}}};function AE(e){let{socket:A,timeoutType:t,client:r,paused:n}=e.deref();t===Zt?(!A[TA]||A.writableNeedDrain||r[oe]>1)&&(k(!n,"cannot be paused while waiting for headers"),R.destroy(A,new rm)):t===gs?n||R.destroy(A,new sm):t===ta&&(k(r[oe]===0&&r[us]),R.destroy(A,new _t("socket idle timeout")))}async function fm(e,A){e[st]=A,$i||($i=await Aa,Aa=null),A[qr]=!1,A[TA]=!1,A[fe]=!1,A[Wr]=!1,A[ot]=0,A[nt]=null,A[na]=!1,A[K]=new ra(e,A,$i),os(A,"error",function(r){k(r.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let n=this[K];if(r.code==="ECONNRESET"&&n.statusCode&&!n.shouldKeepAlive){let s=n.finish();s&&(this[Ce]=s,this[as][$l](s));return}this[Ce]=r,this[as][$l](r)}),os(A,"readable",function(){let r=this[K];r&&r.readMore()}),os(A,"end",function(){let r=this[K];if(r.statusCode&&!r.shouldKeepAlive){let n=r.finish();n&&R.destroy(this,n);return}R.destroy(this,new Pt("other side closed",R.getSocketInfo(this)))}),os(A,"close",function(){let r=this[as],n=this[K];aE(this),n&&(!this[Ce]&&n.statusCode&&!n.shouldKeepAlive&&(this[Ce]=n.finish()||this[Ce]),this[K].destroy(),this[K]=null);let s=this[Ce]||new Pt("closed",R.getSocketInfo(this));if(r[st]=null,r[iE]=null,r.destroyed){k(r[oE]===0);let o=r[qe].splice(r[Ge]);for(let i=0;i<o.length;i++){let a=o[i];R.errorRequest(r,a,s)}}else if(r[oe]>0&&s.code!=="UND_ERR_INFO"){let o=r[qe][r[Ge]];r[qe][r[Ge]++]=null,R.errorRequest(r,o,s)}r[gm]=r[Ge],k(r[oe]===0),r.emit("disconnect",r[sE],[r],s),r[fA]()});let t=!1;return A.on("close",()=>{t=!0}),{version:"h1",defaultPipelining:1,write(...r){return ym(e,...r)},resume(){wm(e)},destroy(r,n){t?queueMicrotask(n):A.destroy(r).on("close",n)},get destroyed(){return A.destroyed},busy(r){return!!(A[TA]||A[fe]||A[Wr]||A[ot]===1||r&&(e[oe]>0&&!r.idempotent||e[oe]>0&&(r.upgrade||r.method==="CONNECT")||e[oe]>0&&R.bodyLength(r.body)!==0&&(R.isStream(r.body)||R.isAsyncIterable(r.body)||R.isFormDataLike(r.body))))}}}function aE(e){e[nt]&&(clearTimeout(e[nt]),e[nt]=null),e[ot]=0}function pm(e,A){A[ot]=1,A[nt]=setTimeout(()=>{A[nt]=null,A[ot]=2,e[st]===A&&!A.destroyed&&e[fA]()},0),A[nt].unref?.()}function wm(e){let A=e[st];if(A&&!A.destroyed){if(e[Xl]===0?!A[qr]&&A.unref&&(A.unref(),A[qr]=!0):A[qr]&&A.ref&&(A.ref(),A[qr]=!1),e[oe]===0&&e[oE]>0&&A[na]){if(A[ot]===0)return pm(e,A),A[K].readMore(),A.destroyed,void 0;if(A[ot]===1)return A[K].readMore(),A.destroyed,void 0}if(e[oe]===0&&(A[K].readMore(),A.destroyed))return;if(e[Xl]===0)A[K].timeoutType!==ta&&A[K].setTimeout(e[us],ta);else if(e[oe]>0&&A[K].statusCode<200&&A[K].timeoutType!==Zt){let t=e[qe][e[Ge]],r=t.headersTimeout!=null?t.headersTimeout:e[Em];A[K].setTimeout(r,Zt)}}}function mm(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function ym(e,A){let{method:t,path:r,host:n,upgrade:s,blocking:o,reset:i}=A,{body:a,headers:c,contentLength:l}=A,u=t==="PUT"||t==="POST"||t==="PATCH"||t==="QUERY"||t==="PROPFIND"||t==="PROPPATCH";if(R.isFormDataLike(a)){ji||(ji=Wt().extractBody);let[C,B]=ji(a);A.contentType==null&&c.push("content-type",B),a=C.stream,l=C.length}else if(R.isBlobLike(a)&&A.contentType==null){let C=a.type;if(C){let B=`${C}`;if(!R.isValidHeaderValue(B))return R.errorRequest(e,A,new tm("invalid content-type header")),!1;c.push("content-type",B)}}a&&typeof a.read=="function"&&a.read(0);let g=R.bodyLength(a);if(l=g??l,l===null&&(l=A.contentLength),l===0&&!u&&(l=null),mm(t)&&l>0&&A.contentLength!==null&&A.contentLength!==l){if(e[ea])return R.errorRequest(e,A,new rt),!1;process.emitWarning(new rt)}let E=e[st];aE(E);let Q=C=>{A.aborted||A.completed||(R.errorRequest(e,A,C||new nE),R.destroy(a),R.destroy(E,new _t("aborted")))};try{A.onConnect(Q)}catch(C){R.errorRequest(e,A,C)}if(A.aborted)return!1;t==="HEAD"&&(E[fe]=!0),(s||t==="CONNECT")&&(E[fe]=!0),i!=null&&(E[fe]=i),e[jl]&&E[Bm]++>=e[jl]&&(E[fe]=!0),o&&(E[Wr]=!0);let I=`${t} ${r} HTTP/1.1\r
14
14
  `;if(typeof n=="string"?I+=`host: ${n}\r
15
15
  `:I+=e[cm],s?I+=`connection: upgrade\r
16
16
  upgrade: ${s}\r
@@ -36,11 +36,11 @@ ${c.toString(16)}\r
36
36
  `,"latin1"):t===null&&A.write(`\r
37
37
  0\r
38
38
  \r
39
- `,"latin1"),t!==null&&n!==t){if(r[ea])throw new rt;process.emitWarning(new rt)}A[K].timeout&&A[K].timeoutType===Zt&&A[K].timeout.refresh&&A[K].timeout.refresh(),r[fA]()}}destroy(A){let{socket:t,client:r,abort:n}=this;t[TA]=!1,A&&(k(r[oe]<=1,"pipeline should only contain this request"),n(A))}};cE.exports=fm});var hE=f((uT,CE)=>{"use strict";var Je=d("node:assert"),{pipeline:km}=d("node:stream"),Y=x(),{RequestContentLengthMismatchError:sa,RequestAbortedError:uE,SocketError:Pr,InformationalError:oa}=v(),{kUrl:Es,kReset:Bs,kClient:zt,kRunning:Is,kPending:Fm,kQueue:xA,kPendingIdx:ia,kRunningIdx:Oe,kError:Pe,kSocket:ge,kStrictContentLength:Rm,kOnError:aa,kMaxConcurrentStreams:IE,kHTTP2Session:We,kResume:YA,kSize:Sm,kHTTPContext:Nm}=j(),pA=Symbol("open streams"),lE,EE=!1,Qs;try{Qs=d("node:http2")}catch{Qs={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Um,HTTP2_HEADER_METHOD:Mm,HTTP2_HEADER_PATH:Lm,HTTP2_HEADER_SCHEME:Tm,HTTP2_HEADER_CONTENT_LENGTH:xm,HTTP2_HEADER_EXPECT:Ym,HTTP2_HEADER_STATUS:Gm}}=Qs;function Jm(e){let A=[];for(let[t,r]of Object.entries(e))if(Array.isArray(r))for(let n of r)A.push(Buffer.from(t),Buffer.from(n));else A.push(Buffer.from(t),Buffer.from(r));return A}async function vm(e,A){e[ge]=A,EE||(EE=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let t=Qs.connect(e[Es],{createConnection:()=>A,peerMaxConcurrentStreams:e[IE]});t[pA]=0,t[zt]=e,t[ge]=A,Y.addListener(t,"error",Vm),Y.addListener(t,"frameError",qm),Y.addListener(t,"end",Om),Y.addListener(t,"goaway",Wm),Y.addListener(t,"close",function(){let{[zt]:n}=this,{[ge]:s}=n,o=this[ge][Pe]||this[Pe]||new Pr("closed",Y.getSocketInfo(s));if(n[We]=null,n.destroyed){Je(n[Fm]===0);let i=n[xA].splice(n[Oe]);for(let a=0;a<i.length;a++){let c=i[a];Y.errorRequest(n,c,o)}}}),t.unref(),e[We]=t,A[We]=t,Y.addListener(A,"error",function(n){Je(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Pe]=n,this[zt][aa](n)}),Y.addListener(A,"end",function(){Y.destroy(this,new Pr("other side closed",Y.getSocketInfo(this)))}),Y.addListener(A,"close",function(){let n=this[Pe]||new Pr("closed",Y.getSocketInfo(this));e[ge]=null,this[We]!=null&&this[We].destroy(n),e[ia]=e[Oe],Je(e[Is]===0),e.emit("disconnect",e[Es],[e],n),e[YA]()});let r=!1;return A.on("close",()=>{r=!0}),{version:"h2",defaultPipelining:1/0,write(...n){return _m(e,...n)},resume(){Hm(e)},destroy(n,s){r?queueMicrotask(s):A.destroy(n).on("close",s)},get destroyed(){return A.destroyed},busy(){return!1}}}function Hm(e){let A=e[ge];A?.destroyed===!1&&(e[Sm]===0&&e[IE]===0?(A.unref(),e[We].unref()):(A.ref(),e[We].ref()))}function Vm(e){Je(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[ge][Pe]=e,this[zt][aa](e)}function qm(e,A,t){if(t===0){let r=new oa(`HTTP/2: "frameError" received - type ${e}, code ${A}`);this[ge][Pe]=r,this[zt][aa](r)}}function Om(){let e=new Pr("other side closed",Y.getSocketInfo(this[ge]));this.destroy(e),Y.destroy(this[ge],e)}function Wm(e){let A=this[Pe]||new Pr(`HTTP/2: "GOAWAY" frame received with code ${e}`,Y.getSocketInfo(this)),t=this[zt];if(t[ge]=null,t[Nm]=null,this[We]!=null&&(this[We].destroy(A),this[We]=null),Y.destroy(this[ge],A),t[Oe]<t[xA].length){let r=t[xA][t[Oe]];t[xA][t[Oe]++]=null,Y.errorRequest(t,r,A),t[ia]=t[Oe]}Je(t[Is]===0),t.emit("disconnect",t[Es],[t],A),t[YA]()}function Pm(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function _m(e,A){let t=e[We],{method:r,path:n,host:s,upgrade:o,expectContinue:i,signal:a,headers:c}=A,{body:l}=A;if(o)return Y.errorRequest(e,A,new Error("Upgrade not supported for H2")),!1;let u={};for(let m=0;m<c.length;m+=2){let T=c[m+0],_=c[m+1];if(Array.isArray(_))for(let Z=0;Z<_.length;Z++)u[T]?u[T]+=`,${_[Z]}`:u[T]=_[Z];else u[T]=_}let g,{hostname:E,port:Q}=e[Es];u[Um]=s||`${E}${Q?`:${Q}`:""}`,u[Mm]=r;let I=m=>{A.aborted||A.completed||(m=m||new uE,Y.errorRequest(e,A,m),g!=null&&Y.destroy(g,m),Y.destroy(l,m),e[xA][e[Oe]++]=null,e[YA]())};try{A.onConnect(I)}catch(m){Y.errorRequest(e,A,m)}if(A.aborted)return!1;if(r==="CONNECT")return t.ref(),g=t.request(u,{endStream:!1,signal:a}),g.id&&!g.pending?(A.onUpgrade(null,null,g),++t[pA],e[xA][e[Oe]++]=null):g.once("ready",()=>{A.onUpgrade(null,null,g),++t[pA],e[xA][e[Oe]++]=null}),g.once("close",()=>{t[pA]-=1,t[pA]===0&&t.unref()}),!0;u[Lm]=n,u[Tm]="https";let C=r==="PUT"||r==="POST"||r==="PATCH";l&&typeof l.read=="function"&&l.read(0);let B=Y.bodyLength(l);if(Y.isFormDataLike(l)){lE??=Wt().extractBody;let[m,T]=lE(l);u["content-type"]=T,l=m.stream,B=m.length}if(B==null&&(B=A.contentLength),(B===0||!C)&&(B=null),Pm(r)&&B>0&&A.contentLength!=null&&A.contentLength!==B){if(e[Rm])return Y.errorRequest(e,A,new sa),!1;process.emitWarning(new sa)}B!=null&&(Je(l,"no body must not have content length"),u[xm]=`${B}`),t.ref();let h=r==="GET"||r==="HEAD"||l===null;return i?(u[Ym]="100-continue",g=t.request(u,{endStream:h,signal:a}),g.once("continue",y)):(g=t.request(u,{endStream:h,signal:a}),y()),++t[pA],g.once("response",m=>{let{[Gm]:T,..._}=m;if(A.onResponseStarted(),A.aborted){let Z=new uE;Y.errorRequest(e,A,Z),Y.destroy(g,Z);return}A.onHeaders(Number(T),Jm(_),g.resume.bind(g),"")===!1&&g.pause(),g.on("data",Z=>{A.onData(Z)===!1&&g.pause()})}),g.once("end",()=>{(g.state?.state==null||g.state.state<6)&&A.onComplete([]),t[pA]===0&&t.unref(),I(new oa("HTTP/2: stream half-closed (remote)")),e[xA][e[Oe]++]=null,e[ia]=e[Oe],e[YA]()}),g.once("close",()=>{t[pA]-=1,t[pA]===0&&t.unref()}),g.once("error",function(m){I(m)}),g.once("frameError",(m,T)=>{I(new oa(`HTTP/2: "frameError" received - type ${m}, code ${T}`))}),!0;function y(){!l||B===0?QE(I,g,null,e,A,e[ge],B,C):Y.isBuffer(l)?QE(I,g,l,e,A,e[ge],B,C):Y.isBlobLike(l)?typeof l.stream=="function"?BE(I,g,l.stream(),e,A,e[ge],B,C):zm(I,g,l,e,A,e[ge],B,C):Y.isStream(l)?Zm(I,e[ge],C,g,l,e,A,B):Y.isIterable(l)?BE(I,g,l,e,A,e[ge],B,C):Je(!1)}}function QE(e,A,t,r,n,s,o,i){try{t!=null&&Y.isBuffer(t)&&(Je(o===t.byteLength,"buffer body must have content length"),A.cork(),A.write(t),A.uncork(),A.end(),n.onBodySent(t)),i||(s[Bs]=!0),n.onRequestSent(),r[YA]()}catch(a){e(a)}}function Zm(e,A,t,r,n,s,o,i){Je(i!==0||s[Is]===0,"stream body cannot be pipelined");let a=km(n,r,l=>{l?(Y.destroy(a,l),e(l)):(Y.removeAllListeners(a),o.onRequestSent(),t||(A[Bs]=!0),s[YA]())});Y.addListener(a,"data",c);function c(l){o.onBodySent(l)}}async function zm(e,A,t,r,n,s,o,i){Je(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new sa;let a=Buffer.from(await t.arrayBuffer());A.cork(),A.write(a),A.uncork(),A.end(),n.onBodySent(a),n.onRequestSent(),i||(s[Bs]=!0),r[YA]()}catch(a){e(a)}}async function BE(e,A,t,r,n,s,o,i){Je(o!==0||r[Is]===0,"iterator body cannot be pipelined");let a=null;function c(){if(a){let u=a;a=null,u()}}let l=()=>new Promise((u,g)=>{Je(a===null),s[Pe]?g(s[Pe]):a=u});A.on("close",c).on("drain",c);try{for await(let u of t){if(s[Pe])throw s[Pe];let g=A.write(u);n.onBodySent(u),g||await l()}A.end(),n.onRequestSent(),i||(s[Bs]=!0),r[YA]()}catch(u){e(u)}finally{A.off("close",c).off("drain",c)}}CE.exports=vm});var hs=f((lT,pE)=>{"use strict";var oA=x(),{kBodyUsed:_r}=j(),ga=d("node:assert"),{InvalidArgumentError:Km}=v(),Xm=d("node:events"),jm=[300,301,302,303,307,308],dE=Symbol("body"),Cs=class{constructor(A){this[dE]=A,this[_r]=!1}async*[Symbol.asyncIterator](){ga(!this[_r],"disturbed"),this[_r]=!0,yield*this[dE]}},ca=class{constructor(A,t,r,n){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Km("maxRedirections must be a positive number");oA.validateHandler(n,r.method,r.upgrade),this.dispatch=A,this.location=null,this.abort=null,this.opts={...r,maxRedirections:0},this.maxRedirections=t,this.handler=n,this.history=[],this.redirectionLimitReached=!1,oA.isStream(this.opts.body)?(oA.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){ga(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[_r]=!1,Xm.prototype.on.call(this.opts.body,"data",function(){this[_r]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Cs(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&oA.isIterable(this.opts.body)&&(this.opts.body=new Cs(this.opts.body))}onConnect(A){this.abort=A,this.handler.onConnect(A,{history:this.history})}onUpgrade(A,t,r){this.handler.onUpgrade(A,t,r)}onError(A){this.handler.onError(A)}onHeaders(A,t,r,n){if(this.location=this.history.length>=this.maxRedirections||oA.isDisturbed(this.opts.body)?null:$m(A,t),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(A,t,r,n);let{origin:s,pathname:o,search:i}=oA.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),a=i?`${o}${i}`:o;this.opts.headers=ey(this.opts.headers,A===303,this.opts.origin!==s),this.opts.path=a,this.opts.origin=s,this.opts.maxRedirections=0,this.opts.query=null,A===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(A){if(!this.location)return this.handler.onData(A)}onComplete(A){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(A)}onBodySent(A){this.handler.onBodySent&&this.handler.onBodySent(A)}};function $m(e,A){if(jm.indexOf(e)===-1)return null;for(let t=0;t<A.length;t+=2)if(A[t].length===8&&oA.headerNameToString(A[t])==="location")return A[t+1]}function fE(e,A,t){if(e.length===4)return oA.headerNameToString(e)==="host";if(A&&oA.headerNameToString(e).startsWith("content-"))return!0;if(t&&(e.length===13||e.length===6||e.length===19)){let r=oA.headerNameToString(e);return r==="authorization"||r==="cookie"||r==="proxy-authorization"}return!1}function ey(e,A,t){let r=[];if(Array.isArray(e))for(let n=0;n<e.length;n+=2)fE(e[n],A,t)||r.push(e[n],e[n+1]);else if(e&&typeof e=="object")for(let n of Object.keys(e))fE(n,A,t)||r.push(n,e[n]);else ga(e==null,"headers must be an object or an array");return r}pE.exports=ca});var ds=f((ET,wE)=>{"use strict";var Ay=hs();function ty({maxRedirections:e}){return A=>function(r,n){let{maxRedirections:s=e}=r;if(!s)return A(r,n);let o=new Ay(A,s,r,n);return r={...r,maxRedirections:0},A(r,o)}}wE.exports=ty});var jt=f((QT,UE)=>{"use strict";var wA=d("node:assert"),FE=d("node:net"),ry=d("node:http"),it=x(),{channels:Kt}=Ut(),ny=Uu(),sy=xt(),{InvalidArgumentError:te,InformationalError:oy,ClientDestroyedError:iy}=v(),ay=Lr(),{kUrl:iA,kServerName:GA,kClient:cy,kBusy:ua,kConnect:gy,kResuming:at,kRunning:jr,kPending:$r,kSize:Xr,kQueue:_e,kConnected:uy,kConnecting:Xt,kNeedDrain:vA,kKeepAliveDefaultTimeout:mE,kHostHeader:ly,kPendingIdx:Ze,kRunningIdx:mA,kError:Ey,kPipelining:fs,kKeepAliveTimeoutValue:Qy,kMaxHeadersSize:By,kKeepAliveMaxTimeout:Iy,kKeepAliveTimeoutThreshold:Cy,kHeadersTimeout:hy,kBodyTimeout:dy,kStrictContentLength:fy,kConnector:Zr,kMaxRedirections:py,kMaxRequests:la,kCounter:wy,kClose:my,kDestroy:yy,kDispatch:Dy,kInterceptors:yE,kLocalAddress:zr,kMaxResponseSize:by,kOnError:ky,kHTTPContext:re,kMaxConcurrentStreams:Fy,kResume:Kr}=j(),Ry=gE(),Sy=hE(),DE=!1,JA=Symbol("kClosedResolve"),bE=()=>{};function RE(e){return e[fs]??e[re]?.defaultPipelining??1}var Ea=class extends sy{constructor(A,{interceptors:t,maxHeaderSize:r,headersTimeout:n,socketTimeout:s,requestTimeout:o,connectTimeout:i,bodyTimeout:a,idleTimeout:c,keepAlive:l,keepAliveTimeout:u,maxKeepAliveTimeout:g,keepAliveMaxTimeout:E,keepAliveTimeoutThreshold:Q,socketPath:I,pipelining:C,tls:B,strictContentLength:h,maxCachedSessions:y,maxRedirections:m,connect:T,maxRequestsPerClient:_,localAddress:Z,maxResponseSize:M,autoSelectFamily:V,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:Be,allowH2:se,webSocket:xe}={}){if(super({webSocket:xe}),l!==void 0)throw new te("unsupported keepAlive, use pipelining=0 instead");if(s!==void 0)throw new te("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(o!==void 0)throw new te("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(c!==void 0)throw new te("unsupported idleTimeout, use keepAliveTimeout instead");if(g!==void 0)throw new te("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(r!=null&&!Number.isFinite(r))throw new te("invalid maxHeaderSize");if(I!=null&&typeof I!="string")throw new te("invalid socketPath");if(i!=null&&(!Number.isFinite(i)||i<0))throw new te("invalid connectTimeout");if(u!=null&&(!Number.isFinite(u)||u<=0))throw new te("invalid keepAliveTimeout");if(E!=null&&(!Number.isFinite(E)||E<=0))throw new te("invalid keepAliveMaxTimeout");if(Q!=null&&!Number.isFinite(Q))throw new te("invalid keepAliveTimeoutThreshold");if(n!=null&&(!Number.isInteger(n)||n<0))throw new te("headersTimeout must be a positive integer or zero");if(a!=null&&(!Number.isInteger(a)||a<0))throw new te("bodyTimeout must be a positive integer or zero");if(T!=null&&typeof T!="function"&&typeof T!="object")throw new te("connect must be a function or an object");if(m!=null&&(!Number.isInteger(m)||m<0))throw new te("maxRedirections must be a positive number");if(_!=null&&(!Number.isInteger(_)||_<0))throw new te("maxRequestsPerClient must be a positive number");if(Z!=null&&(typeof Z!="string"||FE.isIP(Z)===0))throw new te("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new te("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new te("autoSelectFamilyAttemptTimeout must be a positive number");if(se!=null&&typeof se!="boolean")throw new te("allowH2 must be a valid boolean value");if(Be!=null&&(typeof Be!="number"||Be<1))throw new te("maxConcurrentStreams must be a positive integer, greater than 0");typeof T!="function"&&(T=ay({...B,maxCachedSessions:y,allowH2:se,socketPath:I,timeout:i,...V?{autoSelectFamily:V,autoSelectFamilyAttemptTimeout:De}:void 0,...T})),t?.Client&&Array.isArray(t.Client)?(this[yE]=t.Client,DE||(DE=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[yE]=[Ny({maxRedirections:m})],this[iA]=it.parseOrigin(A),this[Zr]=T,this[fs]=C??1,this[By]=r||ry.maxHeaderSize,this[mE]=u??4e3,this[Iy]=E??6e5,this[Cy]=Q??2e3,this[Qy]=this[mE],this[GA]=null,this[zr]=Z??null,this[at]=0,this[vA]=0,this[ly]=`host: ${this[iA].hostname}${this[iA].port?`:${this[iA].port}`:""}\r
40
- `,this[dy]=a??3e5,this[hy]=n??3e5,this[fy]=h??!0,this[py]=m,this[la]=_,this[JA]=null,this[by]=M>-1?M:-1,this[Fy]=Be??100,this[re]=null,this[_e]=[],this[mA]=0,this[Ze]=0,this[Kr]=QA=>Qa(this,QA),this[ky]=QA=>SE(this,QA)}get pipelining(){return this[fs]}set pipelining(A){this[fs]=A,this[Kr](!0)}get[$r](){return this[_e].length-this[Ze]}get[jr](){return this[Ze]-this[mA]}get[Xr](){return this[_e].length-this[mA]}get[uy](){return!!this[re]&&!this[Xt]&&!this[re].destroyed}get[ua](){return!!(this[re]?.busy(null)||this[Xr]>=(RE(this)||1)||this[$r]>0)}[gy](A){NE(this),this.once("connect",A)}[Dy](A,t){let r=A.origin||this[iA].origin,n=new ny(r,A,t);return this[_e].push(n),this[at]||(it.bodyLength(n.body)==null&&it.isIterable(n.body)?(this[at]=1,queueMicrotask(()=>Qa(this))):this[Kr](!0)),this[at]&&this[vA]!==2&&this[ua]&&(this[vA]=2),this[vA]<2}async[my](){return new Promise(A=>{this[Xr]?this[JA]=A:A(null)})}async[yy](A){return new Promise(t=>{let r=this[_e].splice(this[Ze]);for(let s=0;s<r.length;s++){let o=r[s];it.errorRequest(this,o,A)}let n=()=>{this[JA]&&(this[JA](),this[JA]=null),t(null)};this[re]?(this[re].destroy(A,n),this[re]=null):queueMicrotask(n),this[Kr]()})}},Ny=ds();function SE(e,A){if(e[jr]===0&&A.code!=="UND_ERR_INFO"&&A.code!=="UND_ERR_SOCKET"){wA(e[Ze]===e[mA]);let t=e[_e].splice(e[mA]);for(let r=0;r<t.length;r++){let n=t[r];it.errorRequest(e,n,A)}wA(e[Xr]===0)}}async function NE(e){wA(!e[Xt]),wA(!e[re]);let{host:A,hostname:t,protocol:r,port:n}=e[iA];if(t[0]==="["){let s=t.indexOf("]");wA(s!==-1);let o=t.substring(1,s);wA(FE.isIP(o)),t=o}e[Xt]=!0,Kt.beforeConnect.hasSubscribers&&Kt.beforeConnect.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr]});try{let s=await new Promise((o,i)=>{e[Zr]({host:A,hostname:t,protocol:r,port:n,servername:e[GA],localAddress:e[zr]},(a,c)=>{a?i(a):o(c)})});if(e.destroyed){it.destroy(s.on("error",bE),new iy);return}wA(s);try{e[re]=s.alpnProtocol==="h2"?await Sy(e,s):await Ry(e,s)}catch(o){throw s.destroy().on("error",bE),o}e[Xt]=!1,s[wy]=0,s[la]=e[la],s[cy]=e,s[Ey]=null,Kt.connected.hasSubscribers&&Kt.connected.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr],socket:s}),e.emit("connect",e[iA],[e])}catch(s){if(e.destroyed)return;if(e[Xt]=!1,Kt.connectError.hasSubscribers&&Kt.connectError.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr],error:s}),s.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(wA(e[jr]===0);e[$r]>0&&e[_e][e[Ze]].servername===e[GA];){let o=e[_e][e[Ze]++];it.errorRequest(e,o,s)}else SE(e,s);e.emit("connectionError",e[iA],[e],s)}e[Kr]()}function kE(e){e[vA]=0,e.emit("drain",e[iA],[e])}function Qa(e,A){e[at]!==2&&(e[at]=2,Uy(e,A),e[at]=0,e[mA]>256&&(e[_e].splice(0,e[mA]),e[Ze]-=e[mA],e[mA]=0))}function Uy(e,A){for(;;){if(e.destroyed){wA(e[$r]===0);return}if(e[JA]&&!e[Xr]){e[JA](),e[JA]=null;return}if(e[re]&&e[re].resume(),e[ua])e[vA]=2;else if(e[vA]===2){A?(e[vA]=1,queueMicrotask(()=>kE(e))):kE(e);continue}if(e[$r]===0||e[jr]>=(RE(e)||1))return;let t=e[_e][e[Ze]];if(e[iA].protocol==="https:"&&e[GA]!==t.servername){if(e[jr]>0)return;e[GA]=t.servername,e[re]?.destroy(new oy("servername changed"),()=>{e[re]=null,Qa(e)})}if(e[Xt])return;if(!e[re]){NE(e);return}if(e[re].destroyed||e[re].busy(t))return;!t.aborted&&e[re].write(t)?e[Ze]++:e[_e].splice(e[Ze],1)}}UE.exports=Ea});var Ba=f((IT,ME)=>{"use strict";var ps=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];return A===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A)}};ME.exports=class{constructor(){this.head=this.tail=new ps}isEmpty(){return this.head.isEmpty()}push(A){this.head.isFull()&&(this.head=this.head.next=new ps),this.head.push(A)}shift(){let A=this.tail,t=A.shift();return A.isEmpty()&&A.next!==null&&(this.tail=A.next),t}}});var TE=f((CT,LE)=>{var{kFree:My,kConnected:Ly,kPending:Ty,kQueued:xy,kRunning:Yy,kSize:Gy}=j(),ct=Symbol("pool"),Ia=class{constructor(A){this[ct]=A}get connected(){return this[ct][Ly]}get free(){return this[ct][My]}get pending(){return this[ct][Ty]}get queued(){return this[ct][xy]}get running(){return this[ct][Yy]}get size(){return this[ct][Gy]}};LE.exports=Ia});var wa=f((hT,WE)=>{"use strict";var Jy=xt(),vy=Ba(),{kConnected:Ca,kSize:xE,kRunning:YE,kPending:GE,kQueued:en,kBusy:Hy,kFree:Vy,kUrl:qy,kClose:Oy,kDestroy:Wy,kDispatch:Py}=j(),_y=TE(),pe=Symbol("clients"),he=Symbol("needDrain"),An=Symbol("queue"),ha=Symbol("closed resolve"),da=Symbol("onDrain"),JE=Symbol("onConnect"),vE=Symbol("onDisconnect"),HE=Symbol("onConnectionError"),fa=Symbol("get dispatcher"),qE=Symbol("add client"),OE=Symbol("remove client"),VE=Symbol("stats"),pa=class extends Jy{constructor(A){super(A),this[An]=new vy,this[pe]=[],this[en]=0;let t=this;this[da]=function(n,s){let o=t[An],i=!1;for(;!i;){let a=o.shift();if(!a)break;t[en]--,i=!this.dispatch(a.opts,a.handler)}this[he]=i,!this[he]&&t[he]&&(t[he]=!1,t.emit("drain",n,[t,...s])),t[ha]&&o.isEmpty()&&Promise.all(t[pe].map(a=>a.close())).then(t[ha])},this[JE]=(r,n)=>{t.emit("connect",r,[t,...n])},this[vE]=(r,n,s)=>{t.emit("disconnect",r,[t,...n],s)},this[HE]=(r,n,s)=>{t.emit("connectionError",r,[t,...n],s)},this[VE]=new _y(this)}get[Hy](){return this[he]}get[Ca](){return this[pe].filter(A=>A[Ca]).length}get[Vy](){return this[pe].filter(A=>A[Ca]&&!A[he]).length}get[GE](){let A=this[en];for(let{[GE]:t}of this[pe])A+=t;return A}get[YE](){let A=0;for(let{[YE]:t}of this[pe])A+=t;return A}get[xE](){let A=this[en];for(let{[xE]:t}of this[pe])A+=t;return A}get stats(){return this[VE]}async[Oy](){this[An].isEmpty()?await Promise.all(this[pe].map(A=>A.close())):await new Promise(A=>{this[ha]=A})}async[Wy](A){for(;;){let t=this[An].shift();if(!t)break;t.handler.onError(A)}await Promise.all(this[pe].map(t=>t.destroy(A)))}[Py](A,t){let r=this[fa]();return r?r.dispatch(A,t)||(r[he]=!0,this[he]=!this[fa]()):(this[he]=!0,this[An].push({opts:A,handler:t}),this[en]++),!this[he]}[qE](A){return A.on("drain",this[da]).on("connect",this[JE]).on("disconnect",this[vE]).on("connectionError",this[HE]),this[pe].push(A),this[he]&&queueMicrotask(()=>{this[he]&&this[da](A[qy],[this,A])}),this}[OE](A){A.close(()=>{let t=this[pe].indexOf(A);t!==-1&&this[pe].splice(t,1)}),this[he]=this[pe].some(t=>!t[he]&&t.closed!==!0&&t.destroyed!==!0)}};WE.exports={PoolBase:pa,kClients:pe,kNeedDrain:he,kAddClient:qE,kRemoveClient:OE,kGetDispatcher:fa}});var $t=f((dT,zE)=>{"use strict";var{PoolBase:Zy,kClients:ws,kNeedDrain:zy,kAddClient:Ky,kGetDispatcher:Xy}=wa(),jy=jt(),{InvalidArgumentError:ma}=v(),PE=x(),{kUrl:_E,kInterceptors:$y}=j(),eD=Lr(),ya=Symbol("options"),Da=Symbol("connections"),ZE=Symbol("factory");function AD(e,A){return new jy(e,A)}var ba=class extends Zy{constructor(A,{connections:t,factory:r=AD,connect:n,connectTimeout:s,tls:o,maxCachedSessions:i,socketPath:a,autoSelectFamily:c,autoSelectFamilyAttemptTimeout:l,allowH2:u,...g}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new ma("invalid connections");if(typeof r!="function")throw new ma("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new ma("connect must be a function or an object");typeof n!="function"&&(n=eD({...o,maxCachedSessions:i,allowH2:u,socketPath:a,timeout:s,...c?{autoSelectFamily:c,autoSelectFamilyAttemptTimeout:l}:void 0,...n})),super(g),this[$y]=g.interceptors?.Pool&&Array.isArray(g.interceptors.Pool)?g.interceptors.Pool:[],this[Da]=t||null,this[_E]=PE.parseOrigin(A),this[ya]={...PE.deepClone(g),connect:n,allowH2:u},this[ya].interceptors=g.interceptors?{...g.interceptors}:void 0,this[ZE]=r,this.on("connectionError",(E,Q,I)=>{for(let C of Q){let B=this[ws].indexOf(C);B!==-1&&this[ws].splice(B,1)}})}[Xy](){for(let A of this[ws])if(!A[zy])return A;if(!this[Da]||this[ws].length<this[Da]){let A=this[ZE](this[_E],this[ya]);return this[Ky](A),A}}};zE.exports=ba});var eQ=f((fT,$E)=>{"use strict";var{BalancedPoolMissingUpstreamError:tD,InvalidArgumentError:rD}=v(),{PoolBase:nD,kClients:Ee,kNeedDrain:tn,kAddClient:sD,kRemoveClient:oD,kGetDispatcher:iD}=wa(),aD=$t(),{kUrl:ka,kInterceptors:cD}=j(),{parseOrigin:KE}=x(),XE=Symbol("factory"),ms=Symbol("options"),jE=Symbol("kGreatestCommonDivisor"),gt=Symbol("kCurrentWeight"),ut=Symbol("kIndex"),ve=Symbol("kWeight"),ys=Symbol("kMaxWeightPerServer"),Ds=Symbol("kErrorPenalty");function gD(e,A){if(e===0)return A;for(;A!==0;){let t=A;A=e%A,e=t}return e}function uD(e,A){return new aD(e,A)}var Fa=class extends nD{constructor(A=[],{factory:t=uD,...r}={}){if(super(),this[ms]=r,this[ut]=-1,this[gt]=0,this[ys]=this[ms].maxWeightPerServer||100,this[Ds]=this[ms].errorPenalty||15,Array.isArray(A)||(A=[A]),typeof t!="function")throw new rD("factory must be a function.");this[cD]=r.interceptors?.BalancedPool&&Array.isArray(r.interceptors.BalancedPool)?r.interceptors.BalancedPool:[],this[XE]=t;for(let n of A)this.addUpstream(n);this._updateBalancedPoolStats()}addUpstream(A){let t=KE(A).origin;if(this[Ee].find(n=>n[ka].origin===t&&n.closed!==!0&&n.destroyed!==!0))return this;let r=this[XE](t,Object.assign({},this[ms]));this[sD](r),r.on("connect",()=>{r[ve]=Math.min(this[ys],r[ve]+this[Ds])}),r.on("connectionError",()=>{r[ve]=Math.max(1,r[ve]-this[Ds]),this._updateBalancedPoolStats()}),r.on("disconnect",(...n)=>{let s=n[2];s&&s.code==="UND_ERR_SOCKET"&&(r[ve]=Math.max(1,r[ve]-this[Ds]),this._updateBalancedPoolStats())});for(let n of this[Ee])n[ve]=this[ys];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let t=0;t<this[Ee].length;t++)A=gD(this[Ee][t][ve],A);this[jE]=A}removeUpstream(A){let t=KE(A).origin,r=this[Ee].find(n=>n[ka].origin===t&&n.closed!==!0&&n.destroyed!==!0);return r&&this[oD](r),this}get upstreams(){return this[Ee].filter(A=>A.closed!==!0&&A.destroyed!==!0).map(A=>A[ka].origin)}[iD](){if(this[Ee].length===0)throw new tD;if(!this[Ee].find(s=>!s[tn]&&s.closed!==!0&&s.destroyed!==!0)||this[Ee].map(s=>s[tn]).reduce((s,o)=>s&&o,!0))return;let r=0,n=this[Ee].findIndex(s=>!s[tn]);for(;r++<this[Ee].length;){this[ut]=(this[ut]+1)%this[Ee].length;let s=this[Ee][this[ut]];if(s[ve]>this[Ee][n][ve]&&!s[tn]&&(n=this[ut]),this[ut]===0&&(this[gt]=this[gt]-this[jE],this[gt]<=0&&(this[gt]=this[ys])),s[ve]>=this[gt]&&!s[tn])return s}return this[gt]=this[Ee][n][ve],this[ut]=n,this[Ee][n]}};$E.exports=Fa});var er=f((pT,iQ)=>{"use strict";var{InvalidArgumentError:bs}=v(),{kClients:HA,kRunning:AQ,kClose:lD,kDestroy:ED,kDispatch:QD,kInterceptors:BD}=j(),ID=xt(),CD=$t(),hD=jt(),dD=x(),fD=ds(),tQ=Symbol("onConnect"),rQ=Symbol("onDisconnect"),nQ=Symbol("onConnectionError"),pD=Symbol("maxRedirections"),sQ=Symbol("onDrain"),oQ=Symbol("factory"),Ra=Symbol("options");function wD(e,A){return A&&A.connections===1?new hD(e,A):new CD(e,A)}var Sa=class extends ID{constructor({factory:A=wD,maxRedirections:t=0,connect:r,...n}={}){if(typeof A!="function")throw new bs("factory must be a function.");if(r!=null&&typeof r!="function"&&typeof r!="object")throw new bs("connect must be a function or an object");if(!Number.isInteger(t)||t<0)throw new bs("maxRedirections must be a positive number");super(n),r&&typeof r!="function"&&(r={...r}),this[BD]=n.interceptors?.Agent&&Array.isArray(n.interceptors.Agent)?n.interceptors.Agent:[fD({maxRedirections:t})],this[Ra]={...dD.deepClone(n),connect:r},this[Ra].interceptors=n.interceptors?{...n.interceptors}:void 0,this[pD]=t,this[oQ]=A,this[HA]=new Map,this[sQ]=(s,o)=>{this.emit("drain",s,[this,...o])},this[tQ]=(s,o)=>{this.emit("connect",s,[this,...o])},this[rQ]=(s,o,i)=>{this.emit("disconnect",s,[this,...o],i)},this[nQ]=(s,o,i)=>{this.emit("connectionError",s,[this,...o],i)}}get[AQ](){let A=0;for(let t of this[HA].values())A+=t[AQ];return A}[QD](A,t){let r;if(A.origin&&(typeof A.origin=="string"||A.origin instanceof URL))r=String(A.origin);else throw new bs("opts.origin must be a non-empty string or URL.");let n=this[HA].get(r);return n||(n=this[oQ](A.origin,this[Ra]).on("drain",this[sQ]).on("connect",this[tQ]).on("disconnect",this[rQ]).on("connectionError",this[nQ]),this[HA].set(r,n)),n.dispatch(A,t)}async[lD](){let A=[];for(let t of this[HA].values())A.push(t.close());this[HA].clear(),await Promise.all(A)}async[ED](A){let t=[];for(let r of this[HA].values())t.push(r.destroy(A));this[HA].clear(),await Promise.all(t)}};iQ.exports=Sa});var Ta=f((wT,hQ)=>{"use strict";var{kProxy:Na,kClose:EQ,kDestroy:QQ,kDispatch:aQ,kInterceptors:mD}=j(),{URL:lt}=d("node:url"),yD=er(),BQ=$t(),IQ=xt(),{InvalidArgumentError:Ar,RequestAbortedError:DD,SecureProxyConnectionError:bD}=v(),cQ=Lr(),CQ=jt(),ks=Symbol("proxy agent"),Fs=Symbol("proxy client"),VA=Symbol("proxy headers"),Ua=Symbol("request tls settings"),gQ=Symbol("proxy tls settings"),uQ=Symbol("connect endpoint function"),lQ=Symbol("tunnel proxy");function kD(e){return e==="https:"?443:80}function FD(e,A){return new BQ(e,A)}var RD=()=>{};function SD(e,A){return A.connections===1?new CQ(e,A):new BQ(e,A)}var Ma=class extends IQ{#e;constructor(A,{headers:t={},connect:r,factory:n}){if(super(),!A)throw new Ar("Proxy URL is mandatory");this[VA]=t,n?this.#e=n(A,{connect:r}):this.#e=new CQ(A,{connect:r})}[aQ](A,t){let r=t.onHeaders;t.onHeaders=function(i,a,c){if(i===407){typeof t.onError=="function"&&t.onError(new Ar("Proxy Authentication Required (407)"));return}r&&r.call(this,i,a,c)};let{origin:n,path:s="/",headers:o={}}=A;if(A.path=n+s,!("host"in o)&&!("Host"in o)){let{host:i}=new lt(n);o.host=i}return A.headers={...this[VA],...o},this.#e[aQ](A,t)}async[EQ](){return this.#e.close()}async[QQ](A){return this.#e.destroy(A)}},La=class extends IQ{constructor(A){if(super(),!A||typeof A=="object"&&!(A instanceof lt)&&!A.uri)throw new Ar("Proxy uri is mandatory");let{clientFactory:t=FD}=A;if(typeof t!="function")throw new Ar("Proxy opts.clientFactory must be a function.");let{proxyTunnel:r=!0}=A,n=this.#e(A),{href:s,origin:o,port:i,protocol:a,username:c,password:l,hostname:u}=n;if(this[Na]={uri:s,protocol:a},this[mD]=A.interceptors?.ProxyAgent&&Array.isArray(A.interceptors.ProxyAgent)?A.interceptors.ProxyAgent:[],this[Ua]=A.requestTls,this[gQ]=A.proxyTls,this[VA]=A.headers||{},this[lQ]=r,A.auth&&A.token)throw new Ar("opts.auth cannot be used in combination with opts.token");A.auth?this[VA]["proxy-authorization"]=`Basic ${A.auth}`:A.token?this[VA]["proxy-authorization"]=A.token:c&&l&&(this[VA]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(c)}:${decodeURIComponent(l)}`).toString("base64")}`);let g=cQ({...A.proxyTls});this[uQ]=cQ({...A.requestTls});let E=A.factory||SD,Q=(I,C)=>{let{protocol:B}=new lt(I);return!this[lQ]&&B==="http:"&&this[Na].protocol==="http:"?new Ma(this[Na].uri,{headers:this[VA],connect:g,factory:E}):E(I,C)};this[Fs]=t(n,{connect:g}),this[ks]=new yD({...A,factory:Q,connect:async(I,C)=>{let B=I.host;I.port||(B+=`:${kD(I.protocol)}`);try{let{socket:h,statusCode:y}=await this[Fs].connect({origin:o,port:i,path:B,signal:I.signal,headers:{...this[VA],host:I.host},servername:this[gQ]?.servername||u});if(y!==200&&(h.on("error",RD).destroy(),C(new DD(`Proxy response (${y}) !== 200 when HTTP Tunneling`))),I.protocol!=="https:"){C(null,h);return}let m;this[Ua]?m=this[Ua].servername:m=I.servername,this[uQ]({...I,servername:m,httpSocket:h},C)}catch(h){h.code==="ERR_TLS_CERT_ALTNAME_INVALID"?C(new bD(h)):C(h)}}})}dispatch(A,t){let r=ND(A.headers);if(UD(r),r&&!("host"in r)&&!("Host"in r)){let{host:n}=new lt(A.origin);r.host=n}return this[ks].dispatch({...A,headers:r},t)}#e(A){return typeof A=="string"?new lt(A):A instanceof lt?A:new lt(A.uri)}async[EQ](){await this[ks].close(),await this[Fs].close()}async[QQ](){await this[ks].destroy(),await this[Fs].destroy()}};function ND(e){if(Array.isArray(e)){let A={};for(let t=0;t<e.length;t+=2)A[e[t]]=e[t+1];return A}return e}function UD(e){if(e&&Object.keys(e).find(t=>t.toLowerCase()==="proxy-authorization"))throw new Ar("Proxy-Authorization should be sent in ProxyAgent constructor")}hQ.exports=La});var yQ=f((mT,mQ)=>{"use strict";var MD=xt(),{kClose:LD,kDestroy:TD,kClosed:dQ,kDestroyed:fQ,kDispatch:xD,kNoProxyAgent:rn,kHttpProxyAgent:qA,kHttpsProxyAgent:Et}=j(),pQ=Ta(),YD=er(),GD={"http:":80,"https:":443},wQ=!1,xa=class extends MD{#e=null;#A=null;#t=null;constructor(A={}){super(),this.#t=A,wQ||(wQ=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:t,httpsProxy:r,noProxy:n,...s}=A;this[rn]=new YD(s);let o=t??process.env.http_proxy??process.env.HTTP_PROXY;o?this[qA]=new pQ({...s,uri:o}):this[qA]=this[rn];let i=r??process.env.https_proxy??process.env.HTTPS_PROXY;i?this[Et]=new pQ({...s,uri:i}):this[Et]=this[qA],this.#r()}[xD](A,t){let r=new URL(A.origin);return this.#s(r).dispatch(A,t)}async[LD](){await this[rn].close(),this[qA][dQ]||await this[qA].close(),this[Et][dQ]||await this[Et].close()}async[TD](A){await this[rn].destroy(A),this[qA][fQ]||await this[qA].destroy(A),this[Et][fQ]||await this[Et].destroy(A)}#s(A){let{protocol:t,host:r,port:n}=A;return r=r.replace(/:\d*$/,"").toLowerCase(),n=Number.parseInt(n,10)||GD[t]||0,this.#n(r,n)?t==="https:"?this[Et]:this[qA]:this[rn]}#n(A,t){if(this.#o&&this.#r(),this.#A.length===0)return!0;if(this.#e==="*")return!1;for(let r=0;r<this.#A.length;r++){let n=this.#A[r];if(!(n.port&&n.port!==t)){if(/^[.*]/.test(n.hostname)){if(A.endsWith(n.hostname.replace(/^\*/,"")))return!1}else if(A===n.hostname)return!1}}return!0}#r(){let A=this.#t.noProxy??this.#i,t=A.split(/[,\s]/),r=[];for(let n=0;n<t.length;n++){let s=t[n];if(!s)continue;let o=s.match(/^(.+):(\d+)$/);r.push({hostname:(o?o[1]:s).toLowerCase(),port:o?Number.parseInt(o[2],10):0})}this.#e=A,this.#A=r}get#o(){return this.#t.noProxy!==void 0?!1:this.#e!==this.#i}get#i(){return process.env.no_proxy??process.env.NO_PROXY??""}};mQ.exports=xa});var Rs=f((yT,RQ)=>{"use strict";var tr=d("node:assert"),{kRetryHandlerDefaultRetry:DQ}=j(),{RequestRetryError:rr}=v(),{isDisturbed:bQ,parseHeaders:JD,parseRangeHeader:kQ,wrapRequestBody:vD}=x();function HD(e){let A=Date.now();return new Date(e).getTime()-A}function FQ(e,A,t,r){let n=e["content-length"];if(n==null||!Number.isFinite(A.start)||!Number.isFinite(A.end))return null;let s=Number(n),o=A.end-A.start+1;return!Number.isFinite(s)||s!==o?new rr("Content-Length mismatch",t,{headers:e,data:{count:r}}):null}var Ya=class e{constructor(A,t){let{retryOptions:r,...n}=A,{retry:s,maxRetries:o,maxTimeout:i,minTimeout:a,timeoutFactor:c,methods:l,errorCodes:u,retryAfter:g,statusCodes:E}=r??{};this.dispatch=t.dispatch,this.handler=t.handler,this.opts={...n,body:vD(A.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:s??e[DQ],retryAfter:g??!0,maxTimeout:i??30*1e3,minTimeout:a??500,timeoutFactor:c??2,maxRetries:o??5,methods:l??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:u??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(Q=>{this.aborted=!0,this.abort?this.abort(Q):this.reason=Q})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(A,t,r){this.handler.onUpgrade&&this.handler.onUpgrade(A,t,r)}onConnect(A){this.aborted?A(this.reason):this.abort=A}onBodySent(A){if(this.handler.onBodySent)return this.handler.onBodySent(A)}static[DQ](A,{state:t,opts:r},n){let{statusCode:s,code:o,headers:i}=A,{method:a,retryOptions:c}=r,{maxRetries:l,minTimeout:u,maxTimeout:g,timeoutFactor:E,statusCodes:Q,errorCodes:I,methods:C}=c,{counter:B}=t;if(o&&o!=="UND_ERR_REQ_RETRY"&&!I.includes(o)){n(A);return}if(Array.isArray(C)&&!C.includes(a)){n(A);return}if(s!=null&&Array.isArray(Q)&&!Q.includes(s)){n(A);return}if(B>l){n(A);return}let h=i?.["retry-after"];h&&(h=Number(h),h=Number.isNaN(h)?HD(h):h*1e3);let y=h>0?Math.min(h,g):Math.min(u*E**(B-1),g);setTimeout(()=>n(null),y)}onHeaders(A,t,r,n){let s=JD(t);if(this.retryCount+=1,A>=300)return this.retryOpts.statusCodes.includes(A)===!1?this.handler.onHeaders(A,t,r,n):(this.abort(new rr("Request failed",A,{headers:s,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,A!==206&&(this.start>0||A!==200))return this.abort(new rr("server does not support the range header and the payload was partially consumed",A,{headers:s,data:{count:this.retryCount}})),!1;let i=kQ(s["content-range"]);if(!i)return this.abort(new rr("Content-Range mismatch",A,{headers:s,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==s.etag)return this.abort(new rr("ETag mismatch",A,{headers:s,data:{count:this.retryCount}})),!1;let a=FQ(s,i,A,this.retryCount);if(a!=null)return this.abort(a),!1;let{start:c,size:l,end:u=l-1}=i;return tr(this.start===c,"content-range mismatch"),tr(this.end==null||this.end===u,"content-range mismatch"),this.resume=r,!0}if(this.end==null){if(A===206){let i=kQ(s["content-range"]);if(i==null)return this.handler.onHeaders(A,t,r,n);let a=FQ(s,i,A,this.retryCount);if(a!=null)return this.abort(a),!1;let{start:c,size:l,end:u=l-1}=i;tr(c!=null&&Number.isFinite(c),"content-range mismatch"),tr(u!=null&&Number.isFinite(u),"invalid content-length"),this.start=c,this.end=u}if(this.end==null){let i=s["content-length"];this.end=i!=null?Number(i)-1:null}return tr(Number.isFinite(this.start)),tr(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=r,this.etag=s.etag!=null?s.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(A,t,r,n)}let o=new rr("Request failed",A,{headers:s,data:{count:this.retryCount}});return this.abort(o),!1}onData(A){return this.start+=A.length,this.handler.onData(A)}onComplete(A){return this.retryCount=0,this.handler.onComplete(A)}onError(A){if(this.aborted||bQ(this.opts.body))return this.handler.onError(A);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(A,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},t.bind(this));function t(r){if(r!=null||this.aborted||bQ(this.opts.body))return this.handler.onError(r);if(this.start!==0){let n={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(n["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...n}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(n){this.handler.onError(n)}}}};RQ.exports=Ya});var NQ=f((DT,SQ)=>{"use strict";var VD=Ur(),qD=Rs(),Ga=class extends VD{#e=null;#A=null;constructor(A,t={}){super(t),this.#e=A,this.#A=t}dispatch(A,t){let r=new qD({...A,retryOptions:this.#A},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(A,r)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};SQ.exports=Ga});var Oa=f((bT,vQ)=>{"use strict";var xQ=d("node:assert"),{Readable:OD}=d("node:stream"),{RequestAbortedError:YQ,NotSupportedError:WD,InvalidArgumentError:PD,AbortError:Ja}=v(),GQ=x(),{ReadableStreamFrom:_D}=x(),Fe=Symbol("kConsume"),nn=Symbol("kReading"),OA=Symbol("kBody"),UQ=Symbol("kAbort"),JQ=Symbol("kContentType"),MQ=Symbol("kContentLength"),ZD=()=>{},va=class extends OD{constructor({resume:A,abort:t,contentType:r="",contentLength:n,highWaterMark:s=64*1024}){super({autoDestroy:!0,read:A,highWaterMark:s}),this._readableState.dataEmitted=!1,this[UQ]=t,this[Fe]=null,this[OA]=null,this[JQ]=r,this[MQ]=n,this[nn]=!1}destroy(A){return!A&&!this._readableState.endEmitted&&(A=new YQ),A&&this[UQ](),super.destroy(A)}_destroy(A,t){this[nn]?t(A):setImmediate(()=>{t(A)})}on(A,...t){return(A==="data"||A==="readable")&&(this[nn]=!0),super.on(A,...t)}addListener(A,...t){return this.on(A,...t)}off(A,...t){let r=super.off(A,...t);return(A==="data"||A==="readable")&&(this[nn]=this.listenerCount("data")>0||this.listenerCount("readable")>0),r}removeListener(A,...t){return this.off(A,...t)}push(A){return this[Fe]&&A!==null?(Va(this[Fe],A),this[nn]?super.push(A):!0):super.push(A)}async text(){return sn(this,"text")}async json(){return sn(this,"json")}async blob(){return sn(this,"blob")}async bytes(){return sn(this,"bytes")}async arrayBuffer(){return sn(this,"arrayBuffer")}async formData(){throw new WD}get bodyUsed(){return GQ.isDisturbed(this)}get body(){return this[OA]||(this[OA]=_D(this),this[Fe]&&(this[OA].getReader(),xQ(this[OA].locked))),this[OA]}async dump(A){let t=Number.isFinite(A?.limit)?A.limit:131072,r=A?.signal;if(r!=null&&(typeof r!="object"||!("aborted"in r)))throw new PD("signal must be an AbortSignal");return r?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((n,s)=>{this[MQ]>t&&this.destroy(new Ja);let o=()=>{this.destroy(r.reason??new Ja)};r?.addEventListener("abort",o),this.on("close",function(){r?.removeEventListener("abort",o),r?.aborted?s(r.reason??new Ja):n(null)}).on("error",ZD).on("data",function(i){t-=i.length,t<=0&&this.destroy()}).resume()})}};function zD(e){return e[OA]&&e[OA].locked===!0||e[Fe]}function KD(e){return GQ.isDisturbed(e)||zD(e)}async function sn(e,A){return xQ(!e[Fe]),new Promise((t,r)=>{if(KD(e)){let n=e._readableState;n.destroyed&&n.closeEmitted===!1?e.on("error",s=>{r(s)}).on("close",()=>{r(new TypeError("unusable"))}):r(n.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[Fe]={type:A,stream:e,resolve:t,reject:r,length:0,body:[]},e.on("error",function(n){qa(this[Fe],n)}).on("close",function(){this[Fe].body!==null&&qa(this[Fe],new YQ)}),XD(e[Fe])})})}function XD(e){if(e.body===null)return;let{_readableState:A}=e.stream;if(A.bufferIndex){let t=A.bufferIndex,r=A.buffer.length;for(let n=t;n<r;n++)Va(e,A.buffer[n])}else for(let t of A.buffer)Va(e,t);for(A.endEmitted?TQ(this[Fe]):e.stream.on("end",function(){TQ(this[Fe])}),e.stream.resume();e.stream.read()!=null;);}function Ha(e,A){if(e.length===0||A===0)return"";let t=e.length===1?e[0]:Buffer.concat(e,A),r=t.length,n=r>2&&t[0]===239&&t[1]===187&&t[2]===191?3:0;return t.utf8Slice(n,r)}function LQ(e,A){if(e.length===0||A===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let t=new Uint8Array(Buffer.allocUnsafeSlow(A).buffer),r=0;for(let n=0;n<e.length;++n){let s=e[n];t.set(s,r),r+=s.length}return t}function TQ(e){let{type:A,body:t,resolve:r,stream:n,length:s}=e;try{A==="text"?r(Ha(t,s)):A==="json"?r(JSON.parse(Ha(t,s))):A==="arrayBuffer"?r(LQ(t,s).buffer):A==="blob"?r(new Blob(t,{type:n[JQ]})):A==="bytes"&&r(LQ(t,s)),qa(e)}catch(o){n.destroy(o)}}function Va(e,A){e.length+=A.length,e.body.push(A)}function qa(e,A){e.body!==null&&(A?e.reject(A):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}vQ.exports={Readable:va,chunksDecode:Ha}});var Wa=f((kT,WQ)=>{var jD=d("node:assert"),{ResponseStatusCodeError:HQ}=v(),{chunksDecode:VQ}=Oa(),$D=128*1024;async function eb({callback:e,body:A,contentType:t,statusCode:r,statusMessage:n,headers:s}){jD(A);let o=[],i=0;try{for await(let u of A)if(o.push(u),i+=u.length,i>$D){o=[],i=0;break}}catch{o=[],i=0}let a=`Response status code ${r}${n?`: ${n}`:""}`;if(r===204||!t||!i){queueMicrotask(()=>e(new HQ(a,r,s)));return}let c=Error.stackTraceLimit;Error.stackTraceLimit=0;let l;try{qQ(t)?l=JSON.parse(VQ(o,i)):OQ(t)&&(l=VQ(o,i))}catch{}finally{Error.stackTraceLimit=c}queueMicrotask(()=>e(new HQ(a,r,s,l)))}var qQ=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",OQ=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";WQ.exports={getResolveErrorBodyCallback:eb,isContentTypeApplicationJson:qQ,isContentTypeText:OQ}});var ZQ=f((FT,Pa)=>{"use strict";var Ab=d("node:assert"),{Readable:tb}=Oa(),{InvalidArgumentError:nr,RequestAbortedError:PQ}=v(),Re=x(),{getResolveErrorBodyCallback:rb}=Wa(),{AsyncResource:nb}=d("node:async_hooks"),Ss=class extends nb{constructor(A,t){if(!A||typeof A!="object")throw new nr("invalid opts");let{signal:r,method:n,opaque:s,body:o,onInfo:i,responseHeaders:a,throwOnError:c,highWaterMark:l}=A;try{if(typeof t!="function")throw new nr("invalid callback");if(l&&(typeof l!="number"||l<0))throw new nr("invalid highWaterMark");if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new nr("signal must be an EventEmitter or EventTarget");if(n==="CONNECT")throw new nr("invalid method");if(i&&typeof i!="function")throw new nr("invalid onInfo callback");super("UNDICI_REQUEST")}catch(u){throw Re.isStream(o)&&Re.destroy(o.on("error",Re.nop),u),u}this.method=n,this.responseHeaders=a||null,this.opaque=s||null,this.callback=t,this.res=null,this.abort=null,this.body=o,this.trailers={},this.context=null,this.onInfo=i||null,this.throwOnError=c,this.highWaterMark=l,this.signal=r,this.reason=null,this.removeAbortListener=null,Re.isStream(o)&&o.on("error",u=>{this.onError(u)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new PQ:this.removeAbortListener=Re.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new PQ,this.res?Re.destroy(this.res.on("error",Re.nop),this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(A,t){if(this.reason){A(this.reason);return}Ab(this.callback),this.abort=A,this.context=t}onHeaders(A,t,r,n){let{callback:s,opaque:o,abort:i,context:a,responseHeaders:c,highWaterMark:l}=this,u=c==="raw"?Re.parseRawHeaders(t):Re.parseHeaders(t);if(A<200){this.onInfo&&this.onInfo({statusCode:A,headers:u});return}let g=c==="raw"?Re.parseHeaders(t):u,E=g["content-type"],Q=g["content-length"],I=new tb({resume:r,abort:i,contentType:E,contentLength:this.method!=="HEAD"&&Q?Number(Q):null,highWaterMark:l});this.removeAbortListener&&I.on("close",this.removeAbortListener),this.callback=null,this.res=I,s!==null&&(this.throwOnError&&A>=400?this.runInAsyncScope(rb,null,{callback:s,body:I,contentType:E,statusCode:A,statusMessage:n,headers:u}):this.runInAsyncScope(s,null,null,{statusCode:A,headers:u,trailers:this.trailers,opaque:o,body:I,context:a}))}onData(A){return this.res.push(A)}onComplete(A){Re.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:t,callback:r,body:n,opaque:s}=this;r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,A,{opaque:s})})),t&&(this.res=null,queueMicrotask(()=>{Re.destroy(t,A)})),n&&(this.body=null,Re.destroy(n,A)),this.removeAbortListener&&(t?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function _Q(e,A){if(A===void 0)return new Promise((t,r)=>{_Q.call(this,e,(n,s)=>n?r(n):t(s))});try{this.dispatch(e,new Ss(e,A))}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}Pa.exports=_Q;Pa.exports.RequestHandler=Ss});var on=f((RT,XQ)=>{var{addAbortListener:sb}=x(),{RequestAbortedError:ob}=v(),sr=Symbol("kListener"),aA=Symbol("kSignal");function zQ(e){e.abort?e.abort(e[aA]?.reason):e.reason=e[aA]?.reason??new ob,KQ(e)}function ib(e,A){if(e.reason=null,e[aA]=null,e[sr]=null,!!A){if(A.aborted){zQ(e);return}e[aA]=A,e[sr]=()=>{zQ(e)},sb(e[aA],e[sr])}}function KQ(e){e[aA]&&("removeEventListener"in e[aA]?e[aA].removeEventListener("abort",e[sr]):e[aA].removeListener("abort",e[sr]),e[aA]=null,e[sr]=null)}XQ.exports={addSignal:ib,removeSignal:KQ}});var AB=f((ST,eB)=>{"use strict";var ab=d("node:assert"),{finished:cb,PassThrough:gb}=d("node:stream"),{InvalidArgumentError:or,InvalidReturnValueError:ub}=v(),ze=x(),{getResolveErrorBodyCallback:lb}=Wa(),{AsyncResource:Eb}=d("node:async_hooks"),{addSignal:Qb,removeSignal:jQ}=on(),_a=class extends Eb{constructor(A,t,r){if(!A||typeof A!="object")throw new or("invalid opts");let{signal:n,method:s,opaque:o,body:i,onInfo:a,responseHeaders:c,throwOnError:l}=A;try{if(typeof r!="function")throw new or("invalid callback");if(typeof t!="function")throw new or("invalid factory");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new or("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new or("invalid method");if(a&&typeof a!="function")throw new or("invalid onInfo callback");super("UNDICI_STREAM")}catch(u){throw ze.isStream(i)&&ze.destroy(i.on("error",ze.nop),u),u}this.responseHeaders=c||null,this.opaque=o||null,this.factory=t,this.callback=r,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=i,this.onInfo=a||null,this.throwOnError=l||!1,ze.isStream(i)&&i.on("error",u=>{this.onError(u)}),Qb(this,n)}onConnect(A,t){if(this.reason){A(this.reason);return}ab(this.callback),this.abort=A,this.context=t}onHeaders(A,t,r,n){let{factory:s,opaque:o,context:i,callback:a,responseHeaders:c}=this,l=c==="raw"?ze.parseRawHeaders(t):ze.parseHeaders(t);if(A<200){this.onInfo&&this.onInfo({statusCode:A,headers:l});return}this.factory=null;let u;if(this.throwOnError&&A>=400){let Q=(c==="raw"?ze.parseHeaders(t):l)["content-type"];u=new gb,this.callback=null,this.runInAsyncScope(lb,null,{callback:a,body:u,contentType:Q,statusCode:A,statusMessage:n,headers:l})}else{if(s===null)return;if(u=this.runInAsyncScope(s,null,{statusCode:A,headers:l,opaque:o,context:i}),!u||typeof u.write!="function"||typeof u.end!="function"||typeof u.on!="function")throw new ub("expected Writable");cb(u,{readable:!1},E=>{let{callback:Q,res:I,opaque:C,trailers:B,abort:h}=this;this.res=null,(E||!I.readable)&&ze.destroy(I,E),this.callback=null,this.runInAsyncScope(Q,null,E||null,{opaque:C,trailers:B}),E&&h()})}return u.on("drain",r),this.res=u,(u.writableNeedDrain!==void 0?u.writableNeedDrain:u._writableState?.needDrain)!==!0}onData(A){let{res:t}=this;return t?t.write(A):!0}onComplete(A){let{res:t}=this;jQ(this),t&&(this.trailers=ze.parseHeaders(A),t.end())}onError(A){let{res:t,callback:r,opaque:n,body:s}=this;jQ(this),this.factory=null,t?(this.res=null,ze.destroy(t,A)):r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,A,{opaque:n})})),s&&(this.body=null,ze.destroy(s,A))}};function $Q(e,A,t){if(t===void 0)return new Promise((r,n)=>{$Q.call(this,e,A,(s,o)=>s?n(s):r(o))});try{this.dispatch(e,new _a(e,A,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}eB.exports=$Q});var sB=f((NT,nB)=>{"use strict";var{Readable:rB,Duplex:Bb,PassThrough:Ib}=d("node:stream"),{InvalidArgumentError:an,InvalidReturnValueError:Cb,RequestAbortedError:Za}=v(),He=x(),{AsyncResource:hb}=d("node:async_hooks"),{addSignal:db,removeSignal:fb}=on(),tB=d("node:assert"),ir=Symbol("resume"),za=class extends rB{constructor(){super({autoDestroy:!0}),this[ir]=null}_read(){let{[ir]:A}=this;A&&(this[ir]=null,A())}_destroy(A,t){this._read(),t(A)}},Ka=class extends rB{constructor(A){super({autoDestroy:!0}),this[ir]=A}_read(){this[ir]()}_destroy(A,t){!A&&!this._readableState.endEmitted&&(A=new Za),t(A)}},Xa=class extends hb{constructor(A,t){if(!A||typeof A!="object")throw new an("invalid opts");if(typeof t!="function")throw new an("invalid handler");let{signal:r,method:n,opaque:s,onInfo:o,responseHeaders:i}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new an("signal must be an EventEmitter or EventTarget");if(n==="CONNECT")throw new an("invalid method");if(o&&typeof o!="function")throw new an("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=s||null,this.responseHeaders=i||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new za().on("error",He.nop),this.ret=new Bb({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:a}=this;a?.resume&&a.resume()},write:(a,c,l)=>{let{req:u}=this;u.push(a,c)||u._readableState.destroyed?l():u[ir]=l},destroy:(a,c)=>{let{body:l,req:u,res:g,ret:E,abort:Q}=this;!a&&!E._readableState.endEmitted&&(a=new Za),Q&&a&&Q(),He.destroy(l,a),He.destroy(u,a),He.destroy(g,a),fb(this),c(a)}}).on("prefinish",()=>{let{req:a}=this;a.push(null)}),this.res=null,db(this,r)}onConnect(A,t){let{ret:r,res:n}=this;if(this.reason){A(this.reason);return}tB(!n,"pipeline cannot be retried"),tB(!r.destroyed),this.abort=A,this.context=t}onHeaders(A,t,r){let{opaque:n,handler:s,context:o}=this;if(A<200){if(this.onInfo){let a=this.responseHeaders==="raw"?He.parseRawHeaders(t):He.parseHeaders(t);this.onInfo({statusCode:A,headers:a})}return}this.res=new Ka(r);let i;try{this.handler=null;let a=this.responseHeaders==="raw"?He.parseRawHeaders(t):He.parseHeaders(t);i=this.runInAsyncScope(s,null,{statusCode:A,headers:a,opaque:n,body:this.res,context:o})}catch(a){throw this.res.on("error",He.nop),a}if(!i||typeof i.on!="function")throw new Cb("expected Readable");i.on("data",a=>{let{ret:c,body:l}=this;!c.push(a)&&l.pause&&l.pause()}).on("error",a=>{let{ret:c}=this;He.destroy(c,a)}).on("end",()=>{let{ret:a}=this;a.push(null)}).on("close",()=>{let{ret:a}=this;a._readableState.ended||He.destroy(a,new Za)}),this.body=i}onData(A){let{res:t}=this;return t.push(A)}onComplete(A){let{res:t}=this;t.push(null)}onError(A){let{ret:t}=this;this.handler=null,He.destroy(t,A)}};function pb(e,A){try{let t=new Xa(e,A);return this.dispatch({...e,body:t.req},t),t.ret}catch(t){return new Ib().destroy(t)}}nB.exports=pb});var uB=f((UT,gB)=>{"use strict";var{InvalidArgumentError:ja,SocketError:wb}=v(),{AsyncResource:mb}=d("node:async_hooks"),oB=x(),{addSignal:yb,removeSignal:iB}=on(),aB=d("node:assert"),$a=class extends mb{constructor(A,t){if(!A||typeof A!="object")throw new ja("invalid opts");if(typeof t!="function")throw new ja("invalid callback");let{signal:r,opaque:n,responseHeaders:s}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ja("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=s||null,this.opaque=n||null,this.callback=t,this.abort=null,this.context=null,yb(this,r)}onConnect(A,t){if(this.reason){A(this.reason);return}aB(this.callback),this.abort=A,this.context=null}onHeaders(){throw new wb("bad upgrade",null)}onUpgrade(A,t,r){aB(A===101);let{callback:n,opaque:s,context:o}=this;iB(this),this.callback=null;let i=this.responseHeaders==="raw"?oB.parseRawHeaders(t):oB.parseHeaders(t);this.runInAsyncScope(n,null,null,{headers:i,socket:r,opaque:s,context:o})}onError(A){let{callback:t,opaque:r}=this;iB(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,A,{opaque:r})}))}};function cB(e,A){if(A===void 0)return new Promise((t,r)=>{cB.call(this,e,(n,s)=>n?r(n):t(s))});try{let t=new $a(e,A);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},t)}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}gB.exports=cB});var IB=f((MT,BB)=>{"use strict";var Db=d("node:assert"),{AsyncResource:bb}=d("node:async_hooks"),{InvalidArgumentError:ec,SocketError:kb}=v(),lB=x(),{addSignal:Fb,removeSignal:EB}=on(),Ac=class extends bb{constructor(A,t){if(!A||typeof A!="object")throw new ec("invalid opts");if(typeof t!="function")throw new ec("invalid callback");let{signal:r,opaque:n,responseHeaders:s}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ec("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=n||null,this.responseHeaders=s||null,this.callback=t,this.abort=null,Fb(this,r)}onConnect(A,t){if(this.reason){A(this.reason);return}Db(this.callback),this.abort=A,this.context=t}onHeaders(){throw new kb("bad connect",null)}onUpgrade(A,t,r){let{callback:n,opaque:s,context:o}=this;EB(this),this.callback=null;let i=t;i!=null&&(i=this.responseHeaders==="raw"?lB.parseRawHeaders(t):lB.parseHeaders(t)),this.runInAsyncScope(n,null,null,{statusCode:A,headers:i,socket:r,opaque:s,context:o})}onError(A){let{callback:t,opaque:r}=this;EB(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,A,{opaque:r})}))}};function QB(e,A){if(A===void 0)return new Promise((t,r)=>{QB.call(this,e,(n,s)=>n?r(n):t(s))});try{let t=new Ac(e,A);this.dispatch({...e,method:"CONNECT"},t)}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}BB.exports=QB});var CB=f((LT,ar)=>{"use strict";ar.exports.request=ZQ();ar.exports.stream=AB();ar.exports.pipeline=sB();ar.exports.upgrade=uB();ar.exports.connect=IB()});var rc=f((TT,dB)=>{"use strict";var{UndiciError:Rb}=v(),hB=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),tc=class e extends Rb{constructor(A){super(A),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[hB]===!0}[hB]=!0};dB.exports={MockNotMatchedError:tc}});var cr=f((xT,fB)=>{"use strict";fB.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var cn=f((YT,NB)=>{"use strict";var{MockNotMatchedError:Qt}=rc(),{kDispatches:Ns,kMockAgent:Sb,kOriginalDispatch:Nb,kOrigin:Ub,kGetNetConnect:Mb}=cr(),{buildURL:Lb}=x(),{STATUS_CODES:Tb}=d("node:http"),{types:{isPromise:xb}}=d("node:util");function yA(e,A){return typeof e=="string"?e===A:e instanceof RegExp?e.test(A):typeof e=="function"?e(A)===!0:!1}function wB(e){return Object.fromEntries(Object.entries(e).map(([A,t])=>[A.toLocaleLowerCase(),t]))}function mB(e,A){if(Array.isArray(e)){for(let t=0;t<e.length;t+=2)if(e[t].toLocaleLowerCase()===A.toLocaleLowerCase())return e[t+1];return}else return typeof e.get=="function"?e.get(A):wB(e)[A.toLocaleLowerCase()]}function oc(e){let A=e.slice(),t=[];for(let r=0;r<A.length;r+=2)t.push([A[r],A[r+1]]);return Object.fromEntries(t)}function yB(e,A){if(typeof e.headers=="function")return Array.isArray(A)&&(A=oc(A)),e.headers(A?wB(A):{});if(typeof e.headers>"u")return!0;if(typeof A!="object"||typeof e.headers!="object")return!1;for(let[t,r]of Object.entries(e.headers)){let n=mB(A,t);if(!yA(r,n))return!1}return!0}function pB(e){if(typeof e!="string")return e;let A=e.split("?");if(A.length!==2)return e;let t=new URLSearchParams(A.pop());return t.sort(),[...A,t.toString()].join("?")}function Yb(e,{path:A,method:t,body:r,headers:n}){let s=yA(e.path,A),o=yA(e.method,t),i=typeof e.body<"u"?yA(e.body,r):!0,a=yB(e,n);return s&&o&&i&&a}function DB(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function bB(e,A){let t=A.query?Lb(A.path,A.query):A.path,r=typeof t=="string"?pB(t):t,n=e.filter(({consumed:s})=>!s).filter(({path:s})=>yA(pB(s),r));if(n.length===0)throw new Qt(`Mock dispatch not matched for path '${r}'`);if(n=n.filter(({method:s})=>yA(s,A.method)),n.length===0)throw new Qt(`Mock dispatch not matched for method '${A.method}' on path '${r}'`);if(n=n.filter(({body:s})=>typeof s<"u"?yA(s,A.body):!0),n.length===0)throw new Qt(`Mock dispatch not matched for body '${A.body}' on path '${r}'`);if(n=n.filter(s=>yB(s,A.headers)),n.length===0){let s=typeof A.headers=="object"?JSON.stringify(A.headers):A.headers;throw new Qt(`Mock dispatch not matched for headers '${s}' on path '${r}'`)}return n[0]}function Gb(e,A,t){let r={timesInvoked:0,times:1,persist:!1,consumed:!1},n=typeof t=="function"?{callback:t}:{...t},s={...r,...A,pending:!0,data:{error:null,...n}};return e.push(s),s}function nc(e,A){let t=e.findIndex(r=>r.consumed?Yb(r,A):!1);t!==-1&&e.splice(t,1)}function kB(e){let{path:A,method:t,body:r,headers:n,query:s}=e;return{path:A,method:t,body:r,headers:n,query:s}}function sc(e){let A=Object.keys(e),t=[];for(let r=0;r<A.length;++r){let n=A[r],s=e[n],o=Buffer.from(`${n}`);if(Array.isArray(s))for(let i=0;i<s.length;++i)t.push(o,Buffer.from(`${s[i]}`));else t.push(o,Buffer.from(`${s}`))}return t}function FB(e){return Tb[e]||"unknown"}async function Jb(e){let A=[];for await(let t of e)A.push(t);return Buffer.concat(A).toString("utf8")}function RB(e,A){let t=kB(e),r=bB(this[Ns],t);r.timesInvoked++,r.data.callback&&(r.data={...r.data,...r.data.callback(e)});let{data:{statusCode:n,data:s,headers:o,trailers:i,error:a},delay:c,persist:l}=r,{timesInvoked:u,times:g}=r;if(r.consumed=!l&&u>=g,r.pending=u<g,a!==null)return nc(this[Ns],t),A.onError(a),!0;typeof c=="number"&&c>0?setTimeout(()=>{E(this[Ns])},c):E(this[Ns]);function E(I,C=s){let B=Array.isArray(e.headers)?oc(e.headers):e.headers,h=typeof C=="function"?C({...e,headers:B}):C;if(xb(h)){h.then(_=>E(I,_));return}let y=DB(h),m=sc(o),T=sc(i);A.onConnect?.(_=>A.onError(_),null),A.onHeaders?.(n,m,Q,FB(n)),A.onData?.(Buffer.from(y)),A.onComplete?.(T),nc(I,t)}function Q(){}return!0}function vb(){let e=this[Sb],A=this[Ub],t=this[Nb];return function(n,s){if(e.isMockActive)try{RB.call(this,n,s)}catch(o){if(o instanceof Qt){let i=e[Mb]();if(i===!1)throw new Qt(`${o.message}: subsequent request to origin ${A} was not allowed (net.connect disabled)`);if(SB(i,A))t.call(this,n,s);else throw new Qt(`${o.message}: subsequent request to origin ${A} was not allowed (net.connect is not enabled for this origin)`)}else throw o}else t.call(this,n,s)}}function SB(e,A){let t=new URL(A);return e===!0?!0:!!(Array.isArray(e)&&e.some(r=>yA(r,t.host)))}function Hb(e){if(e){let{agent:A,...t}=e;return t}}NB.exports={getResponseData:DB,getMockDispatch:bB,addMockDispatch:Gb,deleteMockDispatch:nc,buildKey:kB,generateKeyValues:sc,matchValue:yA,getResponse:Jb,getStatusText:FB,mockDispatch:RB,buildMockDispatch:vb,checkNetConnect:SB,buildMockOptions:Hb,getHeaderByName:mB,buildHeadersFromArray:oc}});var Ec=f((GT,lc)=>{"use strict";var{getResponseData:Vb,buildKey:qb,addMockDispatch:ic}=cn(),{kDispatches:Us,kDispatchKey:Ms,kDefaultHeaders:ac,kDefaultTrailers:cc,kContentLength:gc,kMockDispatch:Ls}=cr(),{InvalidArgumentError:cA}=v(),{buildURL:Ob}=x(),gr=class{constructor(A){this[Ls]=A}delay(A){if(typeof A!="number"||!Number.isInteger(A)||A<=0)throw new cA("waitInMs must be a valid integer > 0");return this[Ls].delay=A,this}persist(){return this[Ls].persist=!0,this}times(A){if(typeof A!="number"||!Number.isInteger(A)||A<=0)throw new cA("repeatTimes must be a valid integer > 0");return this[Ls].times=A,this}},uc=class{constructor(A,t){if(typeof A!="object")throw new cA("opts must be an object");if(typeof A.path>"u")throw new cA("opts.path must be defined");if(typeof A.method>"u"&&(A.method="GET"),typeof A.path=="string")if(A.query)A.path=Ob(A.path,A.query);else{let r=new URL(A.path,"data://");A.path=r.pathname+r.search}typeof A.method=="string"&&(A.method=A.method.toUpperCase()),this[Ms]=qb(A),this[Us]=t,this[ac]={},this[cc]={},this[gc]=!1}createMockScopeDispatchData({statusCode:A,data:t,responseOptions:r}){let n=Vb(t),s=this[gc]?{"content-length":n.length}:{},o={...this[ac],...s,...r.headers},i={...this[cc],...r.trailers};return{statusCode:A,data:t,headers:o,trailers:i}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new cA("statusCode must be defined");if(typeof A.responseOptions!="object"||A.responseOptions===null)throw new cA("responseOptions must be an object")}reply(A){if(typeof A=="function"){let s=i=>{let a=A(i);if(typeof a!="object"||a===null)throw new cA("reply options callback must return an object");let c={data:"",responseOptions:{},...a};return this.validateReplyParameters(c),{...this.createMockScopeDispatchData(c)}},o=ic(this[Us],this[Ms],s);return new gr(o)}let t={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let r=this.createMockScopeDispatchData(t),n=ic(this[Us],this[Ms],r);return new gr(n)}replyWithError(A){if(typeof A>"u")throw new cA("error must be defined");let t=ic(this[Us],this[Ms],{error:A});return new gr(t)}defaultReplyHeaders(A){if(typeof A>"u")throw new cA("headers must be defined");return this[ac]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new cA("trailers must be defined");return this[cc]=A,this}replyContentLength(){return this[gc]=!0,this}};lc.exports.MockInterceptor=uc;lc.exports.MockScope=gr});var Ic=f((JT,GB)=>{"use strict";var{promisify:Wb}=d("node:util"),Pb=jt(),{buildMockDispatch:_b}=cn(),{kDispatches:UB,kMockAgent:MB,kClose:LB,kOriginalClose:TB,kOrigin:xB,kOriginalDispatch:Zb,kConnected:Qc}=cr(),{MockInterceptor:zb}=Ec(),YB=j(),{InvalidArgumentError:Kb}=v(),Bc=class extends Pb{constructor(A,t){if(super(A,t),!t||!t.agent||typeof t.agent.dispatch!="function")throw new Kb("Argument opts.agent must implement Agent");this[MB]=t.agent,this[xB]=A,this[UB]=[],this[Qc]=1,this[Zb]=this.dispatch,this[TB]=this.close.bind(this),this.dispatch=_b.call(this),this.close=this[LB]}get[YB.kConnected](){return this[Qc]}intercept(A){return new zb(A,this[UB])}async[LB](){await Wb(this[TB])(),this[Qc]=0,this[MB][YB.kClients].delete(this[xB])}};GB.exports=Bc});var dc=f((vT,WB)=>{"use strict";var{promisify:Xb}=d("node:util"),jb=$t(),{buildMockDispatch:$b}=cn(),{kDispatches:JB,kMockAgent:vB,kClose:HB,kOriginalClose:VB,kOrigin:qB,kOriginalDispatch:ek,kConnected:Cc}=cr(),{MockInterceptor:Ak}=Ec(),OB=j(),{InvalidArgumentError:tk}=v(),hc=class extends jb{constructor(A,t){if(super(A,t),!t||!t.agent||typeof t.agent.dispatch!="function")throw new tk("Argument opts.agent must implement Agent");this[vB]=t.agent,this[qB]=A,this[JB]=[],this[Cc]=1,this[ek]=this.dispatch,this[VB]=this.close.bind(this),this.dispatch=$b.call(this),this.close=this[HB]}get[OB.kConnected](){return this[Cc]}intercept(A){return new Ak(A,this[JB])}async[HB](){await Xb(this[VB])(),this[Cc]=0,this[vB][OB.kClients].delete(this[qB])}};WB.exports=hc});var _B=f((VT,PB)=>{"use strict";var rk={pronoun:"it",is:"is",was:"was",this:"this"},nk={pronoun:"they",is:"are",was:"were",this:"these"};PB.exports=class{constructor(A,t){this.singular=A,this.plural=t}pluralize(A){let t=A===1,r=t?rk:nk,n=t?this.singular:this.plural;return{...r,count:A,noun:n}}}});var zB=f((OT,ZB)=>{"use strict";var{Transform:sk}=d("node:stream"),{Console:ok}=d("node:console"),ik=process.versions.icu?"\u2705":"Y ",ak=process.versions.icu?"\u274C":"N ";ZB.exports=class{constructor({disableColors:A}={}){this.transform=new sk({transform(t,r,n){n(null,t)}}),this.logger=new ok({stdout:this.transform,inspectOptions:{colors:!A&&!process.env.CI}})}format(A){let t=A.map(({method:r,path:n,data:{statusCode:s},persist:o,times:i,timesInvoked:a,origin:c})=>({Method:r,Origin:c,Path:n,"Status code":s,Persistent:o?ik:ak,Invocations:a,Remaining:o?1/0:i-a}));return this.logger.table(t),this.transform.read().toString()}}});var $B=f((WT,jB)=>{"use strict";var{kClients:Bt}=j(),ck=er(),{kAgent:fc,kMockAgentSet:Ts,kMockAgentGet:KB,kDispatches:pc,kIsMockActive:xs,kNetConnect:It,kGetNetConnect:gk,kOptions:Ys,kFactory:Gs}=cr(),uk=Ic(),lk=dc(),{matchValue:Ek,buildMockOptions:Qk}=cn(),{InvalidArgumentError:XB,UndiciError:Bk}=v(),Ik=Ur(),Ck=_B(),hk=zB(),wc=class extends Ik{constructor(A){if(super(A),this[It]=!0,this[xs]=!0,A?.agent&&typeof A.agent.dispatch!="function")throw new XB("Argument opts.agent must implement Agent");let t=A?.agent?A.agent:new ck(A);this[fc]=t,this[Bt]=t[Bt],this[Ys]=Qk(A)}get(A){let t=this[KB](A);return t||(t=this[Gs](A),this[Ts](A,t)),t}dispatch(A,t){return this.get(A.origin),this[fc].dispatch(A,t)}async close(){await this[fc].close(),this[Bt].clear()}deactivate(){this[xs]=!1}activate(){this[xs]=!0}enableNetConnect(A){if(typeof A=="string"||typeof A=="function"||A instanceof RegExp)Array.isArray(this[It])?this[It].push(A):this[It]=[A];else if(typeof A>"u")this[It]=!0;else throw new XB("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[It]=!1}get isMockActive(){return this[xs]}[Ts](A,t){this[Bt].set(A,t)}[Gs](A){let t=Object.assign({agent:this},this[Ys]);return this[Ys]&&this[Ys].connections===1?new uk(A,t):new lk(A,t)}[KB](A){let t=this[Bt].get(A);if(t)return t;if(typeof A!="string"){let r=this[Gs]("http://localhost:9999");return this[Ts](A,r),r}for(let[r,n]of Array.from(this[Bt]))if(n&&typeof r!="string"&&Ek(r,A)){let s=this[Gs](A);return this[Ts](A,s),s[pc]=n[pc],s}}[gk](){return this[It]}pendingInterceptors(){let A=this[Bt];return Array.from(A.entries()).flatMap(([t,r])=>r[pc].map(n=>({...n,origin:t}))).filter(({pending:t})=>t)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new hk}={}){let t=this.pendingInterceptors();if(t.length===0)return;let r=new Ck("interceptor","interceptors").pluralize(t.length);throw new Bk(`
39
+ `,"latin1"),t!==null&&n!==t){if(r[ea])throw new rt;process.emitWarning(new rt)}A[K].timeout&&A[K].timeoutType===Zt&&A[K].timeout.refresh&&A[K].timeout.refresh(),r[fA]()}}destroy(A){let{socket:t,client:r,abort:n}=this;t[TA]=!1,A&&(k(r[oe]<=1,"pipeline should only contain this request"),n(A))}};cE.exports=fm});var hE=f((lT,CE)=>{"use strict";var Je=d("node:assert"),{pipeline:km}=d("node:stream"),Y=x(),{RequestContentLengthMismatchError:sa,RequestAbortedError:uE,SocketError:Pr,InformationalError:oa}=v(),{kUrl:Es,kReset:Bs,kClient:zt,kRunning:Is,kPending:Fm,kQueue:xA,kPendingIdx:ia,kRunningIdx:Oe,kError:Pe,kSocket:ge,kStrictContentLength:Rm,kOnError:aa,kMaxConcurrentStreams:IE,kHTTP2Session:We,kResume:YA,kSize:Sm,kHTTPContext:Nm}=j(),pA=Symbol("open streams"),lE,EE=!1,Qs;try{Qs=d("node:http2")}catch{Qs={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:Um,HTTP2_HEADER_METHOD:Mm,HTTP2_HEADER_PATH:Lm,HTTP2_HEADER_SCHEME:Tm,HTTP2_HEADER_CONTENT_LENGTH:xm,HTTP2_HEADER_EXPECT:Ym,HTTP2_HEADER_STATUS:Gm}}=Qs;function Jm(e){let A=[];for(let[t,r]of Object.entries(e))if(Array.isArray(r))for(let n of r)A.push(Buffer.from(t),Buffer.from(n));else A.push(Buffer.from(t),Buffer.from(r));return A}async function vm(e,A){e[ge]=A,EE||(EE=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let t=Qs.connect(e[Es],{createConnection:()=>A,peerMaxConcurrentStreams:e[IE]});t[pA]=0,t[zt]=e,t[ge]=A,Y.addListener(t,"error",Vm),Y.addListener(t,"frameError",qm),Y.addListener(t,"end",Om),Y.addListener(t,"goaway",Wm),Y.addListener(t,"close",function(){let{[zt]:n}=this,{[ge]:s}=n,o=this[ge][Pe]||this[Pe]||new Pr("closed",Y.getSocketInfo(s));if(n[We]=null,n.destroyed){Je(n[Fm]===0);let i=n[xA].splice(n[Oe]);for(let a=0;a<i.length;a++){let c=i[a];Y.errorRequest(n,c,o)}}}),t.unref(),e[We]=t,A[We]=t,Y.addListener(A,"error",function(n){Je(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Pe]=n,this[zt][aa](n)}),Y.addListener(A,"end",function(){Y.destroy(this,new Pr("other side closed",Y.getSocketInfo(this)))}),Y.addListener(A,"close",function(){let n=this[Pe]||new Pr("closed",Y.getSocketInfo(this));e[ge]=null,this[We]!=null&&this[We].destroy(n),e[ia]=e[Oe],Je(e[Is]===0),e.emit("disconnect",e[Es],[e],n),e[YA]()});let r=!1;return A.on("close",()=>{r=!0}),{version:"h2",defaultPipelining:1/0,write(...n){return _m(e,...n)},resume(){Hm(e)},destroy(n,s){r?queueMicrotask(s):A.destroy(n).on("close",s)},get destroyed(){return A.destroyed},busy(){return!1}}}function Hm(e){let A=e[ge];A?.destroyed===!1&&(e[Sm]===0&&e[IE]===0?(A.unref(),e[We].unref()):(A.ref(),e[We].ref()))}function Vm(e){Je(e.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[ge][Pe]=e,this[zt][aa](e)}function qm(e,A,t){if(t===0){let r=new oa(`HTTP/2: "frameError" received - type ${e}, code ${A}`);this[ge][Pe]=r,this[zt][aa](r)}}function Om(){let e=new Pr("other side closed",Y.getSocketInfo(this[ge]));this.destroy(e),Y.destroy(this[ge],e)}function Wm(e){let A=this[Pe]||new Pr(`HTTP/2: "GOAWAY" frame received with code ${e}`,Y.getSocketInfo(this)),t=this[zt];if(t[ge]=null,t[Nm]=null,this[We]!=null&&(this[We].destroy(A),this[We]=null),Y.destroy(this[ge],A),t[Oe]<t[xA].length){let r=t[xA][t[Oe]];t[xA][t[Oe]++]=null,Y.errorRequest(t,r,A),t[ia]=t[Oe]}Je(t[Is]===0),t.emit("disconnect",t[Es],[t],A),t[YA]()}function Pm(e){return e!=="GET"&&e!=="HEAD"&&e!=="OPTIONS"&&e!=="TRACE"&&e!=="CONNECT"}function _m(e,A){let t=e[We],{method:r,path:n,host:s,upgrade:o,expectContinue:i,signal:a,headers:c}=A,{body:l}=A;if(o)return Y.errorRequest(e,A,new Error("Upgrade not supported for H2")),!1;let u={};for(let m=0;m<c.length;m+=2){let T=c[m+0],_=c[m+1];if(Array.isArray(_))for(let Z=0;Z<_.length;Z++)u[T]?u[T]+=`,${_[Z]}`:u[T]=_[Z];else u[T]=_}let g,{hostname:E,port:Q}=e[Es];u[Um]=s||`${E}${Q?`:${Q}`:""}`,u[Mm]=r;let I=m=>{A.aborted||A.completed||(m=m||new uE,Y.errorRequest(e,A,m),g!=null&&Y.destroy(g,m),Y.destroy(l,m),e[xA][e[Oe]++]=null,e[YA]())};try{A.onConnect(I)}catch(m){Y.errorRequest(e,A,m)}if(A.aborted)return!1;if(r==="CONNECT")return t.ref(),g=t.request(u,{endStream:!1,signal:a}),g.id&&!g.pending?(A.onUpgrade(null,null,g),++t[pA],e[xA][e[Oe]++]=null):g.once("ready",()=>{A.onUpgrade(null,null,g),++t[pA],e[xA][e[Oe]++]=null}),g.once("close",()=>{t[pA]-=1,t[pA]===0&&t.unref()}),!0;u[Lm]=n,u[Tm]="https";let C=r==="PUT"||r==="POST"||r==="PATCH";l&&typeof l.read=="function"&&l.read(0);let B=Y.bodyLength(l);if(Y.isFormDataLike(l)){lE??=Wt().extractBody;let[m,T]=lE(l);u["content-type"]=T,l=m.stream,B=m.length}if(B==null&&(B=A.contentLength),(B===0||!C)&&(B=null),Pm(r)&&B>0&&A.contentLength!=null&&A.contentLength!==B){if(e[Rm])return Y.errorRequest(e,A,new sa),!1;process.emitWarning(new sa)}B!=null&&(Je(l,"no body must not have content length"),u[xm]=`${B}`),t.ref();let h=r==="GET"||r==="HEAD"||l===null;return i?(u[Ym]="100-continue",g=t.request(u,{endStream:h,signal:a}),g.once("continue",y)):(g=t.request(u,{endStream:h,signal:a}),y()),++t[pA],g.once("response",m=>{let{[Gm]:T,..._}=m;if(A.onResponseStarted(),A.aborted){let Z=new uE;Y.errorRequest(e,A,Z),Y.destroy(g,Z);return}A.onHeaders(Number(T),Jm(_),g.resume.bind(g),"")===!1&&g.pause(),g.on("data",Z=>{A.onData(Z)===!1&&g.pause()})}),g.once("end",()=>{(g.state?.state==null||g.state.state<6)&&A.onComplete([]),t[pA]===0&&t.unref(),I(new oa("HTTP/2: stream half-closed (remote)")),e[xA][e[Oe]++]=null,e[ia]=e[Oe],e[YA]()}),g.once("close",()=>{t[pA]-=1,t[pA]===0&&t.unref()}),g.once("error",function(m){I(m)}),g.once("frameError",(m,T)=>{I(new oa(`HTTP/2: "frameError" received - type ${m}, code ${T}`))}),!0;function y(){!l||B===0?QE(I,g,null,e,A,e[ge],B,C):Y.isBuffer(l)?QE(I,g,l,e,A,e[ge],B,C):Y.isBlobLike(l)?typeof l.stream=="function"?BE(I,g,l.stream(),e,A,e[ge],B,C):zm(I,g,l,e,A,e[ge],B,C):Y.isStream(l)?Zm(I,e[ge],C,g,l,e,A,B):Y.isIterable(l)?BE(I,g,l,e,A,e[ge],B,C):Je(!1)}}function QE(e,A,t,r,n,s,o,i){try{t!=null&&Y.isBuffer(t)&&(Je(o===t.byteLength,"buffer body must have content length"),A.cork(),A.write(t),A.uncork(),A.end(),n.onBodySent(t)),i||(s[Bs]=!0),n.onRequestSent(),r[YA]()}catch(a){e(a)}}function Zm(e,A,t,r,n,s,o,i){Je(i!==0||s[Is]===0,"stream body cannot be pipelined");let a=km(n,r,l=>{l?(Y.destroy(a,l),e(l)):(Y.removeAllListeners(a),o.onRequestSent(),t||(A[Bs]=!0),s[YA]())});Y.addListener(a,"data",c);function c(l){o.onBodySent(l)}}async function zm(e,A,t,r,n,s,o,i){Je(o===t.size,"blob body must have content length");try{if(o!=null&&o!==t.size)throw new sa;let a=Buffer.from(await t.arrayBuffer());A.cork(),A.write(a),A.uncork(),A.end(),n.onBodySent(a),n.onRequestSent(),i||(s[Bs]=!0),r[YA]()}catch(a){e(a)}}async function BE(e,A,t,r,n,s,o,i){Je(o!==0||r[Is]===0,"iterator body cannot be pipelined");let a=null;function c(){if(a){let u=a;a=null,u()}}let l=()=>new Promise((u,g)=>{Je(a===null),s[Pe]?g(s[Pe]):a=u});A.on("close",c).on("drain",c);try{for await(let u of t){if(s[Pe])throw s[Pe];let g=A.write(u);n.onBodySent(u),g||await l()}A.end(),n.onRequestSent(),i||(s[Bs]=!0),r[YA]()}catch(u){e(u)}finally{A.off("close",c).off("drain",c)}}CE.exports=vm});var hs=f((ET,pE)=>{"use strict";var oA=x(),{kBodyUsed:_r}=j(),ga=d("node:assert"),{InvalidArgumentError:Km}=v(),Xm=d("node:events"),jm=[300,301,302,303,307,308],dE=Symbol("body"),Cs=class{constructor(A){this[dE]=A,this[_r]=!1}async*[Symbol.asyncIterator](){ga(!this[_r],"disturbed"),this[_r]=!0,yield*this[dE]}},ca=class{constructor(A,t,r,n){if(t!=null&&(!Number.isInteger(t)||t<0))throw new Km("maxRedirections must be a positive number");oA.validateHandler(n,r.method,r.upgrade),this.dispatch=A,this.location=null,this.abort=null,this.opts={...r,maxRedirections:0},this.maxRedirections=t,this.handler=n,this.history=[],this.redirectionLimitReached=!1,oA.isStream(this.opts.body)?(oA.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){ga(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[_r]=!1,Xm.prototype.on.call(this.opts.body,"data",function(){this[_r]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new Cs(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&oA.isIterable(this.opts.body)&&(this.opts.body=new Cs(this.opts.body))}onConnect(A){this.abort=A,this.handler.onConnect(A,{history:this.history})}onUpgrade(A,t,r){this.handler.onUpgrade(A,t,r)}onError(A){this.handler.onError(A)}onHeaders(A,t,r,n){if(this.location=this.history.length>=this.maxRedirections||oA.isDisturbed(this.opts.body)?null:$m(A,t),this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections){this.request&&this.request.abort(new Error("max redirects")),this.redirectionLimitReached=!0,this.abort(new Error("max redirects"));return}if(this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return this.handler.onHeaders(A,t,r,n);let{origin:s,pathname:o,search:i}=oA.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),a=i?`${o}${i}`:o;this.opts.headers=ey(this.opts.headers,A===303,this.opts.origin!==s),this.opts.path=a,this.opts.origin=s,this.opts.maxRedirections=0,this.opts.query=null,A===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(A){if(!this.location)return this.handler.onData(A)}onComplete(A){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(A)}onBodySent(A){this.handler.onBodySent&&this.handler.onBodySent(A)}};function $m(e,A){if(jm.indexOf(e)===-1)return null;for(let t=0;t<A.length;t+=2)if(A[t].length===8&&oA.headerNameToString(A[t])==="location")return A[t+1]}function fE(e,A,t){if(e.length===4)return oA.headerNameToString(e)==="host";if(A&&oA.headerNameToString(e).startsWith("content-"))return!0;if(t&&(e.length===13||e.length===6||e.length===19)){let r=oA.headerNameToString(e);return r==="authorization"||r==="cookie"||r==="proxy-authorization"}return!1}function ey(e,A,t){let r=[];if(Array.isArray(e))for(let n=0;n<e.length;n+=2)fE(e[n],A,t)||r.push(e[n],e[n+1]);else if(e&&typeof e=="object")for(let n of Object.keys(e))fE(n,A,t)||r.push(n,e[n]);else ga(e==null,"headers must be an object or an array");return r}pE.exports=ca});var ds=f((QT,wE)=>{"use strict";var Ay=hs();function ty({maxRedirections:e}){return A=>function(r,n){let{maxRedirections:s=e}=r;if(!s)return A(r,n);let o=new Ay(A,s,r,n);return r={...r,maxRedirections:0},A(r,o)}}wE.exports=ty});var jt=f((BT,UE)=>{"use strict";var wA=d("node:assert"),FE=d("node:net"),ry=d("node:http"),it=x(),{channels:Kt}=Ut(),ny=Uu(),sy=xt(),{InvalidArgumentError:te,InformationalError:oy,ClientDestroyedError:iy}=v(),ay=Lr(),{kUrl:iA,kServerName:GA,kClient:cy,kBusy:ua,kConnect:gy,kResuming:at,kRunning:jr,kPending:$r,kSize:Xr,kQueue:_e,kConnected:uy,kConnecting:Xt,kNeedDrain:vA,kKeepAliveDefaultTimeout:mE,kHostHeader:ly,kPendingIdx:Ze,kRunningIdx:mA,kError:Ey,kPipelining:fs,kKeepAliveTimeoutValue:Qy,kMaxHeadersSize:By,kKeepAliveMaxTimeout:Iy,kKeepAliveTimeoutThreshold:Cy,kHeadersTimeout:hy,kBodyTimeout:dy,kStrictContentLength:fy,kConnector:Zr,kMaxRedirections:py,kMaxRequests:la,kCounter:wy,kClose:my,kDestroy:yy,kDispatch:Dy,kInterceptors:yE,kLocalAddress:zr,kMaxResponseSize:by,kOnError:ky,kHTTPContext:re,kMaxConcurrentStreams:Fy,kResume:Kr}=j(),Ry=gE(),Sy=hE(),DE=!1,JA=Symbol("kClosedResolve"),bE=()=>{};function RE(e){return e[fs]??e[re]?.defaultPipelining??1}var Ea=class extends sy{constructor(A,{interceptors:t,maxHeaderSize:r,headersTimeout:n,socketTimeout:s,requestTimeout:o,connectTimeout:i,bodyTimeout:a,idleTimeout:c,keepAlive:l,keepAliveTimeout:u,maxKeepAliveTimeout:g,keepAliveMaxTimeout:E,keepAliveTimeoutThreshold:Q,socketPath:I,pipelining:C,tls:B,strictContentLength:h,maxCachedSessions:y,maxRedirections:m,connect:T,maxRequestsPerClient:_,localAddress:Z,maxResponseSize:M,autoSelectFamily:V,autoSelectFamilyAttemptTimeout:De,maxConcurrentStreams:Be,allowH2:se,webSocket:xe}={}){if(super({webSocket:xe}),l!==void 0)throw new te("unsupported keepAlive, use pipelining=0 instead");if(s!==void 0)throw new te("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(o!==void 0)throw new te("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(c!==void 0)throw new te("unsupported idleTimeout, use keepAliveTimeout instead");if(g!==void 0)throw new te("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(r!=null&&!Number.isFinite(r))throw new te("invalid maxHeaderSize");if(I!=null&&typeof I!="string")throw new te("invalid socketPath");if(i!=null&&(!Number.isFinite(i)||i<0))throw new te("invalid connectTimeout");if(u!=null&&(!Number.isFinite(u)||u<=0))throw new te("invalid keepAliveTimeout");if(E!=null&&(!Number.isFinite(E)||E<=0))throw new te("invalid keepAliveMaxTimeout");if(Q!=null&&!Number.isFinite(Q))throw new te("invalid keepAliveTimeoutThreshold");if(n!=null&&(!Number.isInteger(n)||n<0))throw new te("headersTimeout must be a positive integer or zero");if(a!=null&&(!Number.isInteger(a)||a<0))throw new te("bodyTimeout must be a positive integer or zero");if(T!=null&&typeof T!="function"&&typeof T!="object")throw new te("connect must be a function or an object");if(m!=null&&(!Number.isInteger(m)||m<0))throw new te("maxRedirections must be a positive number");if(_!=null&&(!Number.isInteger(_)||_<0))throw new te("maxRequestsPerClient must be a positive number");if(Z!=null&&(typeof Z!="string"||FE.isIP(Z)===0))throw new te("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new te("maxResponseSize must be a positive number");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new te("autoSelectFamilyAttemptTimeout must be a positive number");if(se!=null&&typeof se!="boolean")throw new te("allowH2 must be a valid boolean value");if(Be!=null&&(typeof Be!="number"||Be<1))throw new te("maxConcurrentStreams must be a positive integer, greater than 0");typeof T!="function"&&(T=ay({...B,maxCachedSessions:y,allowH2:se,socketPath:I,timeout:i,...V?{autoSelectFamily:V,autoSelectFamilyAttemptTimeout:De}:void 0,...T})),t?.Client&&Array.isArray(t.Client)?(this[yE]=t.Client,DE||(DE=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[yE]=[Ny({maxRedirections:m})],this[iA]=it.parseOrigin(A),this[Zr]=T,this[fs]=C??1,this[By]=r||ry.maxHeaderSize,this[mE]=u??4e3,this[Iy]=E??6e5,this[Cy]=Q??2e3,this[Qy]=this[mE],this[GA]=null,this[zr]=Z??null,this[at]=0,this[vA]=0,this[ly]=`host: ${this[iA].hostname}${this[iA].port?`:${this[iA].port}`:""}\r
40
+ `,this[dy]=a??3e5,this[hy]=n??3e5,this[fy]=h??!0,this[py]=m,this[la]=_,this[JA]=null,this[by]=M>-1?M:-1,this[Fy]=Be??100,this[re]=null,this[_e]=[],this[mA]=0,this[Ze]=0,this[Kr]=QA=>Qa(this,QA),this[ky]=QA=>SE(this,QA)}get pipelining(){return this[fs]}set pipelining(A){this[fs]=A,this[Kr](!0)}get[$r](){return this[_e].length-this[Ze]}get[jr](){return this[Ze]-this[mA]}get[Xr](){return this[_e].length-this[mA]}get[uy](){return!!this[re]&&!this[Xt]&&!this[re].destroyed}get[ua](){return!!(this[re]?.busy(null)||this[Xr]>=(RE(this)||1)||this[$r]>0)}[gy](A){NE(this),this.once("connect",A)}[Dy](A,t){let r=A.origin||this[iA].origin,n=new ny(r,A,t);return this[_e].push(n),this[at]||(it.bodyLength(n.body)==null&&it.isIterable(n.body)?(this[at]=1,queueMicrotask(()=>Qa(this))):this[Kr](!0)),this[at]&&this[vA]!==2&&this[ua]&&(this[vA]=2),this[vA]<2}async[my](){return new Promise(A=>{this[Xr]?this[JA]=A:A(null)})}async[yy](A){return new Promise(t=>{let r=this[_e].splice(this[Ze]);for(let s=0;s<r.length;s++){let o=r[s];it.errorRequest(this,o,A)}let n=()=>{this[JA]&&(this[JA](),this[JA]=null),t(null)};this[re]?(this[re].destroy(A,n),this[re]=null):queueMicrotask(n),this[Kr]()})}},Ny=ds();function SE(e,A){if(e[jr]===0&&A.code!=="UND_ERR_INFO"&&A.code!=="UND_ERR_SOCKET"){wA(e[Ze]===e[mA]);let t=e[_e].splice(e[mA]);for(let r=0;r<t.length;r++){let n=t[r];it.errorRequest(e,n,A)}wA(e[Xr]===0)}}async function NE(e){wA(!e[Xt]),wA(!e[re]);let{host:A,hostname:t,protocol:r,port:n}=e[iA];if(t[0]==="["){let s=t.indexOf("]");wA(s!==-1);let o=t.substring(1,s);wA(FE.isIP(o)),t=o}e[Xt]=!0,Kt.beforeConnect.hasSubscribers&&Kt.beforeConnect.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr]});try{let s=await new Promise((o,i)=>{e[Zr]({host:A,hostname:t,protocol:r,port:n,servername:e[GA],localAddress:e[zr]},(a,c)=>{a?i(a):o(c)})});if(e.destroyed){it.destroy(s.on("error",bE),new iy);return}wA(s);try{e[re]=s.alpnProtocol==="h2"?await Sy(e,s):await Ry(e,s)}catch(o){throw s.destroy().on("error",bE),o}e[Xt]=!1,s[wy]=0,s[la]=e[la],s[cy]=e,s[Ey]=null,Kt.connected.hasSubscribers&&Kt.connected.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr],socket:s}),e.emit("connect",e[iA],[e])}catch(s){if(e.destroyed)return;if(e[Xt]=!1,Kt.connectError.hasSubscribers&&Kt.connectError.publish({connectParams:{host:A,hostname:t,protocol:r,port:n,version:e[re]?.version,servername:e[GA],localAddress:e[zr]},connector:e[Zr],error:s}),s.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(wA(e[jr]===0);e[$r]>0&&e[_e][e[Ze]].servername===e[GA];){let o=e[_e][e[Ze]++];it.errorRequest(e,o,s)}else SE(e,s);e.emit("connectionError",e[iA],[e],s)}e[Kr]()}function kE(e){e[vA]=0,e.emit("drain",e[iA],[e])}function Qa(e,A){e[at]!==2&&(e[at]=2,Uy(e,A),e[at]=0,e[mA]>256&&(e[_e].splice(0,e[mA]),e[Ze]-=e[mA],e[mA]=0))}function Uy(e,A){for(;;){if(e.destroyed){wA(e[$r]===0);return}if(e[JA]&&!e[Xr]){e[JA](),e[JA]=null;return}if(e[re]&&e[re].resume(),e[ua])e[vA]=2;else if(e[vA]===2){A?(e[vA]=1,queueMicrotask(()=>kE(e))):kE(e);continue}if(e[$r]===0||e[jr]>=(RE(e)||1))return;let t=e[_e][e[Ze]];if(e[iA].protocol==="https:"&&e[GA]!==t.servername){if(e[jr]>0)return;e[GA]=t.servername,e[re]?.destroy(new oy("servername changed"),()=>{e[re]=null,Qa(e)})}if(e[Xt])return;if(!e[re]){NE(e);return}if(e[re].destroyed||e[re].busy(t))return;!t.aborted&&e[re].write(t)?e[Ze]++:e[_e].splice(e[Ze],1)}}UE.exports=Ea});var Ba=f((CT,ME)=>{"use strict";var ps=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];return A===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A)}};ME.exports=class{constructor(){this.head=this.tail=new ps}isEmpty(){return this.head.isEmpty()}push(A){this.head.isFull()&&(this.head=this.head.next=new ps),this.head.push(A)}shift(){let A=this.tail,t=A.shift();return A.isEmpty()&&A.next!==null&&(this.tail=A.next),t}}});var TE=f((hT,LE)=>{var{kFree:My,kConnected:Ly,kPending:Ty,kQueued:xy,kRunning:Yy,kSize:Gy}=j(),ct=Symbol("pool"),Ia=class{constructor(A){this[ct]=A}get connected(){return this[ct][Ly]}get free(){return this[ct][My]}get pending(){return this[ct][Ty]}get queued(){return this[ct][xy]}get running(){return this[ct][Yy]}get size(){return this[ct][Gy]}};LE.exports=Ia});var wa=f((dT,WE)=>{"use strict";var Jy=xt(),vy=Ba(),{kConnected:Ca,kSize:xE,kRunning:YE,kPending:GE,kQueued:en,kBusy:Hy,kFree:Vy,kUrl:qy,kClose:Oy,kDestroy:Wy,kDispatch:Py}=j(),_y=TE(),pe=Symbol("clients"),he=Symbol("needDrain"),An=Symbol("queue"),ha=Symbol("closed resolve"),da=Symbol("onDrain"),JE=Symbol("onConnect"),vE=Symbol("onDisconnect"),HE=Symbol("onConnectionError"),fa=Symbol("get dispatcher"),qE=Symbol("add client"),OE=Symbol("remove client"),VE=Symbol("stats"),pa=class extends Jy{constructor(A){super(A),this[An]=new vy,this[pe]=[],this[en]=0;let t=this;this[da]=function(n,s){let o=t[An],i=!1;for(;!i;){let a=o.shift();if(!a)break;t[en]--,i=!this.dispatch(a.opts,a.handler)}this[he]=i,!this[he]&&t[he]&&(t[he]=!1,t.emit("drain",n,[t,...s])),t[ha]&&o.isEmpty()&&Promise.all(t[pe].map(a=>a.close())).then(t[ha])},this[JE]=(r,n)=>{t.emit("connect",r,[t,...n])},this[vE]=(r,n,s)=>{t.emit("disconnect",r,[t,...n],s)},this[HE]=(r,n,s)=>{t.emit("connectionError",r,[t,...n],s)},this[VE]=new _y(this)}get[Hy](){return this[he]}get[Ca](){return this[pe].filter(A=>A[Ca]).length}get[Vy](){return this[pe].filter(A=>A[Ca]&&!A[he]).length}get[GE](){let A=this[en];for(let{[GE]:t}of this[pe])A+=t;return A}get[YE](){let A=0;for(let{[YE]:t}of this[pe])A+=t;return A}get[xE](){let A=this[en];for(let{[xE]:t}of this[pe])A+=t;return A}get stats(){return this[VE]}async[Oy](){this[An].isEmpty()?await Promise.all(this[pe].map(A=>A.close())):await new Promise(A=>{this[ha]=A})}async[Wy](A){for(;;){let t=this[An].shift();if(!t)break;t.handler.onError(A)}await Promise.all(this[pe].map(t=>t.destroy(A)))}[Py](A,t){let r=this[fa]();return r?r.dispatch(A,t)||(r[he]=!0,this[he]=!this[fa]()):(this[he]=!0,this[An].push({opts:A,handler:t}),this[en]++),!this[he]}[qE](A){return A.on("drain",this[da]).on("connect",this[JE]).on("disconnect",this[vE]).on("connectionError",this[HE]),this[pe].push(A),this[he]&&queueMicrotask(()=>{this[he]&&this[da](A[qy],[this,A])}),this}[OE](A){A.close(()=>{let t=this[pe].indexOf(A);t!==-1&&this[pe].splice(t,1)}),this[he]=this[pe].some(t=>!t[he]&&t.closed!==!0&&t.destroyed!==!0)}};WE.exports={PoolBase:pa,kClients:pe,kNeedDrain:he,kAddClient:qE,kRemoveClient:OE,kGetDispatcher:fa}});var $t=f((fT,zE)=>{"use strict";var{PoolBase:Zy,kClients:ws,kNeedDrain:zy,kAddClient:Ky,kGetDispatcher:Xy}=wa(),jy=jt(),{InvalidArgumentError:ma}=v(),PE=x(),{kUrl:_E,kInterceptors:$y}=j(),eD=Lr(),ya=Symbol("options"),Da=Symbol("connections"),ZE=Symbol("factory");function AD(e,A){return new jy(e,A)}var ba=class extends Zy{constructor(A,{connections:t,factory:r=AD,connect:n,connectTimeout:s,tls:o,maxCachedSessions:i,socketPath:a,autoSelectFamily:c,autoSelectFamilyAttemptTimeout:l,allowH2:u,...g}={}){if(t!=null&&(!Number.isFinite(t)||t<0))throw new ma("invalid connections");if(typeof r!="function")throw new ma("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new ma("connect must be a function or an object");typeof n!="function"&&(n=eD({...o,maxCachedSessions:i,allowH2:u,socketPath:a,timeout:s,...c?{autoSelectFamily:c,autoSelectFamilyAttemptTimeout:l}:void 0,...n})),super(g),this[$y]=g.interceptors?.Pool&&Array.isArray(g.interceptors.Pool)?g.interceptors.Pool:[],this[Da]=t||null,this[_E]=PE.parseOrigin(A),this[ya]={...PE.deepClone(g),connect:n,allowH2:u},this[ya].interceptors=g.interceptors?{...g.interceptors}:void 0,this[ZE]=r,this.on("connectionError",(E,Q,I)=>{for(let C of Q){let B=this[ws].indexOf(C);B!==-1&&this[ws].splice(B,1)}})}[Xy](){for(let A of this[ws])if(!A[zy])return A;if(!this[Da]||this[ws].length<this[Da]){let A=this[ZE](this[_E],this[ya]);return this[Ky](A),A}}};zE.exports=ba});var eQ=f((pT,$E)=>{"use strict";var{BalancedPoolMissingUpstreamError:tD,InvalidArgumentError:rD}=v(),{PoolBase:nD,kClients:Ee,kNeedDrain:tn,kAddClient:sD,kRemoveClient:oD,kGetDispatcher:iD}=wa(),aD=$t(),{kUrl:ka,kInterceptors:cD}=j(),{parseOrigin:KE}=x(),XE=Symbol("factory"),ms=Symbol("options"),jE=Symbol("kGreatestCommonDivisor"),gt=Symbol("kCurrentWeight"),ut=Symbol("kIndex"),ve=Symbol("kWeight"),ys=Symbol("kMaxWeightPerServer"),Ds=Symbol("kErrorPenalty");function gD(e,A){if(e===0)return A;for(;A!==0;){let t=A;A=e%A,e=t}return e}function uD(e,A){return new aD(e,A)}var Fa=class extends nD{constructor(A=[],{factory:t=uD,...r}={}){if(super(),this[ms]=r,this[ut]=-1,this[gt]=0,this[ys]=this[ms].maxWeightPerServer||100,this[Ds]=this[ms].errorPenalty||15,Array.isArray(A)||(A=[A]),typeof t!="function")throw new rD("factory must be a function.");this[cD]=r.interceptors?.BalancedPool&&Array.isArray(r.interceptors.BalancedPool)?r.interceptors.BalancedPool:[],this[XE]=t;for(let n of A)this.addUpstream(n);this._updateBalancedPoolStats()}addUpstream(A){let t=KE(A).origin;if(this[Ee].find(n=>n[ka].origin===t&&n.closed!==!0&&n.destroyed!==!0))return this;let r=this[XE](t,Object.assign({},this[ms]));this[sD](r),r.on("connect",()=>{r[ve]=Math.min(this[ys],r[ve]+this[Ds])}),r.on("connectionError",()=>{r[ve]=Math.max(1,r[ve]-this[Ds]),this._updateBalancedPoolStats()}),r.on("disconnect",(...n)=>{let s=n[2];s&&s.code==="UND_ERR_SOCKET"&&(r[ve]=Math.max(1,r[ve]-this[Ds]),this._updateBalancedPoolStats())});for(let n of this[Ee])n[ve]=this[ys];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let t=0;t<this[Ee].length;t++)A=gD(this[Ee][t][ve],A);this[jE]=A}removeUpstream(A){let t=KE(A).origin,r=this[Ee].find(n=>n[ka].origin===t&&n.closed!==!0&&n.destroyed!==!0);return r&&this[oD](r),this}get upstreams(){return this[Ee].filter(A=>A.closed!==!0&&A.destroyed!==!0).map(A=>A[ka].origin)}[iD](){if(this[Ee].length===0)throw new tD;if(!this[Ee].find(s=>!s[tn]&&s.closed!==!0&&s.destroyed!==!0)||this[Ee].map(s=>s[tn]).reduce((s,o)=>s&&o,!0))return;let r=0,n=this[Ee].findIndex(s=>!s[tn]);for(;r++<this[Ee].length;){this[ut]=(this[ut]+1)%this[Ee].length;let s=this[Ee][this[ut]];if(s[ve]>this[Ee][n][ve]&&!s[tn]&&(n=this[ut]),this[ut]===0&&(this[gt]=this[gt]-this[jE],this[gt]<=0&&(this[gt]=this[ys])),s[ve]>=this[gt]&&!s[tn])return s}return this[gt]=this[Ee][n][ve],this[ut]=n,this[Ee][n]}};$E.exports=Fa});var er=f((wT,iQ)=>{"use strict";var{InvalidArgumentError:bs}=v(),{kClients:HA,kRunning:AQ,kClose:lD,kDestroy:ED,kDispatch:QD,kInterceptors:BD}=j(),ID=xt(),CD=$t(),hD=jt(),dD=x(),fD=ds(),tQ=Symbol("onConnect"),rQ=Symbol("onDisconnect"),nQ=Symbol("onConnectionError"),pD=Symbol("maxRedirections"),sQ=Symbol("onDrain"),oQ=Symbol("factory"),Ra=Symbol("options");function wD(e,A){return A&&A.connections===1?new hD(e,A):new CD(e,A)}var Sa=class extends ID{constructor({factory:A=wD,maxRedirections:t=0,connect:r,...n}={}){if(typeof A!="function")throw new bs("factory must be a function.");if(r!=null&&typeof r!="function"&&typeof r!="object")throw new bs("connect must be a function or an object");if(!Number.isInteger(t)||t<0)throw new bs("maxRedirections must be a positive number");super(n),r&&typeof r!="function"&&(r={...r}),this[BD]=n.interceptors?.Agent&&Array.isArray(n.interceptors.Agent)?n.interceptors.Agent:[fD({maxRedirections:t})],this[Ra]={...dD.deepClone(n),connect:r},this[Ra].interceptors=n.interceptors?{...n.interceptors}:void 0,this[pD]=t,this[oQ]=A,this[HA]=new Map,this[sQ]=(s,o)=>{this.emit("drain",s,[this,...o])},this[tQ]=(s,o)=>{this.emit("connect",s,[this,...o])},this[rQ]=(s,o,i)=>{this.emit("disconnect",s,[this,...o],i)},this[nQ]=(s,o,i)=>{this.emit("connectionError",s,[this,...o],i)}}get[AQ](){let A=0;for(let t of this[HA].values())A+=t[AQ];return A}[QD](A,t){let r;if(A.origin&&(typeof A.origin=="string"||A.origin instanceof URL))r=String(A.origin);else throw new bs("opts.origin must be a non-empty string or URL.");let n=this[HA].get(r);return n||(n=this[oQ](A.origin,this[Ra]).on("drain",this[sQ]).on("connect",this[tQ]).on("disconnect",this[rQ]).on("connectionError",this[nQ]),this[HA].set(r,n)),n.dispatch(A,t)}async[lD](){let A=[];for(let t of this[HA].values())A.push(t.close());this[HA].clear(),await Promise.all(A)}async[ED](A){let t=[];for(let r of this[HA].values())t.push(r.destroy(A));this[HA].clear(),await Promise.all(t)}};iQ.exports=Sa});var Ta=f((mT,hQ)=>{"use strict";var{kProxy:Na,kClose:EQ,kDestroy:QQ,kDispatch:aQ,kInterceptors:mD}=j(),{URL:lt}=d("node:url"),yD=er(),BQ=$t(),IQ=xt(),{InvalidArgumentError:Ar,RequestAbortedError:DD,SecureProxyConnectionError:bD}=v(),cQ=Lr(),CQ=jt(),ks=Symbol("proxy agent"),Fs=Symbol("proxy client"),VA=Symbol("proxy headers"),Ua=Symbol("request tls settings"),gQ=Symbol("proxy tls settings"),uQ=Symbol("connect endpoint function"),lQ=Symbol("tunnel proxy");function kD(e){return e==="https:"?443:80}function FD(e,A){return new BQ(e,A)}var RD=()=>{};function SD(e,A){return A.connections===1?new CQ(e,A):new BQ(e,A)}var Ma=class extends IQ{#e;constructor(A,{headers:t={},connect:r,factory:n}){if(super(),!A)throw new Ar("Proxy URL is mandatory");this[VA]=t,n?this.#e=n(A,{connect:r}):this.#e=new CQ(A,{connect:r})}[aQ](A,t){let r=t.onHeaders;t.onHeaders=function(i,a,c){if(i===407){typeof t.onError=="function"&&t.onError(new Ar("Proxy Authentication Required (407)"));return}r&&r.call(this,i,a,c)};let{origin:n,path:s="/",headers:o={}}=A;if(A.path=n+s,!("host"in o)&&!("Host"in o)){let{host:i}=new lt(n);o.host=i}return A.headers={...this[VA],...o},this.#e[aQ](A,t)}async[EQ](){return this.#e.close()}async[QQ](A){return this.#e.destroy(A)}},La=class extends IQ{constructor(A){if(super(),!A||typeof A=="object"&&!(A instanceof lt)&&!A.uri)throw new Ar("Proxy uri is mandatory");let{clientFactory:t=FD}=A;if(typeof t!="function")throw new Ar("Proxy opts.clientFactory must be a function.");let{proxyTunnel:r=!0}=A,n=this.#e(A),{href:s,origin:o,port:i,protocol:a,username:c,password:l,hostname:u}=n;if(this[Na]={uri:s,protocol:a},this[mD]=A.interceptors?.ProxyAgent&&Array.isArray(A.interceptors.ProxyAgent)?A.interceptors.ProxyAgent:[],this[Ua]=A.requestTls,this[gQ]=A.proxyTls,this[VA]=A.headers||{},this[lQ]=r,A.auth&&A.token)throw new Ar("opts.auth cannot be used in combination with opts.token");A.auth?this[VA]["proxy-authorization"]=`Basic ${A.auth}`:A.token?this[VA]["proxy-authorization"]=A.token:c&&l&&(this[VA]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(c)}:${decodeURIComponent(l)}`).toString("base64")}`);let g=cQ({...A.proxyTls});this[uQ]=cQ({...A.requestTls});let E=A.factory||SD,Q=(I,C)=>{let{protocol:B}=new lt(I);return!this[lQ]&&B==="http:"&&this[Na].protocol==="http:"?new Ma(this[Na].uri,{headers:this[VA],connect:g,factory:E}):E(I,C)};this[Fs]=t(n,{connect:g}),this[ks]=new yD({...A,factory:Q,connect:async(I,C)=>{let B=I.host;I.port||(B+=`:${kD(I.protocol)}`);try{let{socket:h,statusCode:y}=await this[Fs].connect({origin:o,port:i,path:B,signal:I.signal,headers:{...this[VA],host:I.host},servername:this[gQ]?.servername||u});if(y!==200&&(h.on("error",RD).destroy(),C(new DD(`Proxy response (${y}) !== 200 when HTTP Tunneling`))),I.protocol!=="https:"){C(null,h);return}let m;this[Ua]?m=this[Ua].servername:m=I.servername,this[uQ]({...I,servername:m,httpSocket:h},C)}catch(h){h.code==="ERR_TLS_CERT_ALTNAME_INVALID"?C(new bD(h)):C(h)}}})}dispatch(A,t){let r=ND(A.headers);if(UD(r),r&&!("host"in r)&&!("Host"in r)){let{host:n}=new lt(A.origin);r.host=n}return this[ks].dispatch({...A,headers:r},t)}#e(A){return typeof A=="string"?new lt(A):A instanceof lt?A:new lt(A.uri)}async[EQ](){await this[ks].close(),await this[Fs].close()}async[QQ](){await this[ks].destroy(),await this[Fs].destroy()}};function ND(e){if(Array.isArray(e)){let A={};for(let t=0;t<e.length;t+=2)A[e[t]]=e[t+1];return A}return e}function UD(e){if(e&&Object.keys(e).find(t=>t.toLowerCase()==="proxy-authorization"))throw new Ar("Proxy-Authorization should be sent in ProxyAgent constructor")}hQ.exports=La});var yQ=f((yT,mQ)=>{"use strict";var MD=xt(),{kClose:LD,kDestroy:TD,kClosed:dQ,kDestroyed:fQ,kDispatch:xD,kNoProxyAgent:rn,kHttpProxyAgent:qA,kHttpsProxyAgent:Et}=j(),pQ=Ta(),YD=er(),GD={"http:":80,"https:":443},wQ=!1,xa=class extends MD{#e=null;#A=null;#t=null;constructor(A={}){super(),this.#t=A,wQ||(wQ=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:t,httpsProxy:r,noProxy:n,...s}=A;this[rn]=new YD(s);let o=t??process.env.http_proxy??process.env.HTTP_PROXY;o?this[qA]=new pQ({...s,uri:o}):this[qA]=this[rn];let i=r??process.env.https_proxy??process.env.HTTPS_PROXY;i?this[Et]=new pQ({...s,uri:i}):this[Et]=this[qA],this.#r()}[xD](A,t){let r=new URL(A.origin);return this.#s(r).dispatch(A,t)}async[LD](){await this[rn].close(),this[qA][dQ]||await this[qA].close(),this[Et][dQ]||await this[Et].close()}async[TD](A){await this[rn].destroy(A),this[qA][fQ]||await this[qA].destroy(A),this[Et][fQ]||await this[Et].destroy(A)}#s(A){let{protocol:t,host:r,port:n}=A;return r=r.replace(/:\d*$/,"").toLowerCase(),n=Number.parseInt(n,10)||GD[t]||0,this.#n(r,n)?t==="https:"?this[Et]:this[qA]:this[rn]}#n(A,t){if(this.#o&&this.#r(),this.#A.length===0)return!0;if(this.#e==="*")return!1;for(let r=0;r<this.#A.length;r++){let n=this.#A[r];if(!(n.port&&n.port!==t)){if(/^[.*]/.test(n.hostname)){if(A.endsWith(n.hostname.replace(/^\*/,"")))return!1}else if(A===n.hostname)return!1}}return!0}#r(){let A=this.#t.noProxy??this.#i,t=A.split(/[,\s]/),r=[];for(let n=0;n<t.length;n++){let s=t[n];if(!s)continue;let o=s.match(/^(.+):(\d+)$/);r.push({hostname:(o?o[1]:s).toLowerCase(),port:o?Number.parseInt(o[2],10):0})}this.#e=A,this.#A=r}get#o(){return this.#t.noProxy!==void 0?!1:this.#e!==this.#i}get#i(){return process.env.no_proxy??process.env.NO_PROXY??""}};mQ.exports=xa});var Rs=f((DT,RQ)=>{"use strict";var tr=d("node:assert"),{kRetryHandlerDefaultRetry:DQ}=j(),{RequestRetryError:rr}=v(),{isDisturbed:bQ,parseHeaders:JD,parseRangeHeader:kQ,wrapRequestBody:vD}=x();function HD(e){let A=Date.now();return new Date(e).getTime()-A}function FQ(e,A,t,r){let n=e["content-length"];if(n==null||!Number.isFinite(A.start)||!Number.isFinite(A.end))return null;let s=Number(n),o=A.end-A.start+1;return!Number.isFinite(s)||s!==o?new rr("Content-Length mismatch",t,{headers:e,data:{count:r}}):null}var Ya=class e{constructor(A,t){let{retryOptions:r,...n}=A,{retry:s,maxRetries:o,maxTimeout:i,minTimeout:a,timeoutFactor:c,methods:l,errorCodes:u,retryAfter:g,statusCodes:E}=r??{};this.dispatch=t.dispatch,this.handler=t.handler,this.opts={...n,body:vD(A.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:s??e[DQ],retryAfter:g??!0,maxTimeout:i??30*1e3,minTimeout:a??500,timeoutFactor:c??2,maxRetries:o??5,methods:l??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:u??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(Q=>{this.aborted=!0,this.abort?this.abort(Q):this.reason=Q})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(A,t,r){this.handler.onUpgrade&&this.handler.onUpgrade(A,t,r)}onConnect(A){this.aborted?A(this.reason):this.abort=A}onBodySent(A){if(this.handler.onBodySent)return this.handler.onBodySent(A)}static[DQ](A,{state:t,opts:r},n){let{statusCode:s,code:o,headers:i}=A,{method:a,retryOptions:c}=r,{maxRetries:l,minTimeout:u,maxTimeout:g,timeoutFactor:E,statusCodes:Q,errorCodes:I,methods:C}=c,{counter:B}=t;if(o&&o!=="UND_ERR_REQ_RETRY"&&!I.includes(o)){n(A);return}if(Array.isArray(C)&&!C.includes(a)){n(A);return}if(s!=null&&Array.isArray(Q)&&!Q.includes(s)){n(A);return}if(B>l){n(A);return}let h=i?.["retry-after"];h&&(h=Number(h),h=Number.isNaN(h)?HD(h):h*1e3);let y=h>0?Math.min(h,g):Math.min(u*E**(B-1),g);setTimeout(()=>n(null),y)}onHeaders(A,t,r,n){let s=JD(t);if(this.retryCount+=1,A>=300)return this.retryOpts.statusCodes.includes(A)===!1?this.handler.onHeaders(A,t,r,n):(this.abort(new rr("Request failed",A,{headers:s,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,A!==206&&(this.start>0||A!==200))return this.abort(new rr("server does not support the range header and the payload was partially consumed",A,{headers:s,data:{count:this.retryCount}})),!1;let i=kQ(s["content-range"]);if(!i)return this.abort(new rr("Content-Range mismatch",A,{headers:s,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==s.etag)return this.abort(new rr("ETag mismatch",A,{headers:s,data:{count:this.retryCount}})),!1;let a=FQ(s,i,A,this.retryCount);if(a!=null)return this.abort(a),!1;let{start:c,size:l,end:u=l-1}=i;return tr(this.start===c,"content-range mismatch"),tr(this.end==null||this.end===u,"content-range mismatch"),this.resume=r,!0}if(this.end==null){if(A===206){let i=kQ(s["content-range"]);if(i==null)return this.handler.onHeaders(A,t,r,n);let a=FQ(s,i,A,this.retryCount);if(a!=null)return this.abort(a),!1;let{start:c,size:l,end:u=l-1}=i;tr(c!=null&&Number.isFinite(c),"content-range mismatch"),tr(u!=null&&Number.isFinite(u),"invalid content-length"),this.start=c,this.end=u}if(this.end==null){let i=s["content-length"];this.end=i!=null?Number(i)-1:null}return tr(Number.isFinite(this.start)),tr(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=r,this.etag=s.etag!=null?s.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(A,t,r,n)}let o=new rr("Request failed",A,{headers:s,data:{count:this.retryCount}});return this.abort(o),!1}onData(A){return this.start+=A.length,this.handler.onData(A)}onComplete(A){return this.retryCount=0,this.handler.onComplete(A)}onError(A){if(this.aborted||bQ(this.opts.body))return this.handler.onError(A);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(A,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},t.bind(this));function t(r){if(r!=null||this.aborted||bQ(this.opts.body))return this.handler.onError(r);if(this.start!==0){let n={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(n["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...n}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(n){this.handler.onError(n)}}}};RQ.exports=Ya});var NQ=f((bT,SQ)=>{"use strict";var VD=Ur(),qD=Rs(),Ga=class extends VD{#e=null;#A=null;constructor(A,t={}){super(t),this.#e=A,this.#A=t}dispatch(A,t){let r=new qD({...A,retryOptions:this.#A},{dispatch:this.#e.dispatch.bind(this.#e),handler:t});return this.#e.dispatch(A,r)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};SQ.exports=Ga});var Oa=f((kT,vQ)=>{"use strict";var xQ=d("node:assert"),{Readable:OD}=d("node:stream"),{RequestAbortedError:YQ,NotSupportedError:WD,InvalidArgumentError:PD,AbortError:Ja}=v(),GQ=x(),{ReadableStreamFrom:_D}=x(),Fe=Symbol("kConsume"),nn=Symbol("kReading"),OA=Symbol("kBody"),UQ=Symbol("kAbort"),JQ=Symbol("kContentType"),MQ=Symbol("kContentLength"),ZD=()=>{},va=class extends OD{constructor({resume:A,abort:t,contentType:r="",contentLength:n,highWaterMark:s=64*1024}){super({autoDestroy:!0,read:A,highWaterMark:s}),this._readableState.dataEmitted=!1,this[UQ]=t,this[Fe]=null,this[OA]=null,this[JQ]=r,this[MQ]=n,this[nn]=!1}destroy(A){return!A&&!this._readableState.endEmitted&&(A=new YQ),A&&this[UQ](),super.destroy(A)}_destroy(A,t){this[nn]?t(A):setImmediate(()=>{t(A)})}on(A,...t){return(A==="data"||A==="readable")&&(this[nn]=!0),super.on(A,...t)}addListener(A,...t){return this.on(A,...t)}off(A,...t){let r=super.off(A,...t);return(A==="data"||A==="readable")&&(this[nn]=this.listenerCount("data")>0||this.listenerCount("readable")>0),r}removeListener(A,...t){return this.off(A,...t)}push(A){return this[Fe]&&A!==null?(Va(this[Fe],A),this[nn]?super.push(A):!0):super.push(A)}async text(){return sn(this,"text")}async json(){return sn(this,"json")}async blob(){return sn(this,"blob")}async bytes(){return sn(this,"bytes")}async arrayBuffer(){return sn(this,"arrayBuffer")}async formData(){throw new WD}get bodyUsed(){return GQ.isDisturbed(this)}get body(){return this[OA]||(this[OA]=_D(this),this[Fe]&&(this[OA].getReader(),xQ(this[OA].locked))),this[OA]}async dump(A){let t=Number.isFinite(A?.limit)?A.limit:131072,r=A?.signal;if(r!=null&&(typeof r!="object"||!("aborted"in r)))throw new PD("signal must be an AbortSignal");return r?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((n,s)=>{this[MQ]>t&&this.destroy(new Ja);let o=()=>{this.destroy(r.reason??new Ja)};r?.addEventListener("abort",o),this.on("close",function(){r?.removeEventListener("abort",o),r?.aborted?s(r.reason??new Ja):n(null)}).on("error",ZD).on("data",function(i){t-=i.length,t<=0&&this.destroy()}).resume()})}};function zD(e){return e[OA]&&e[OA].locked===!0||e[Fe]}function KD(e){return GQ.isDisturbed(e)||zD(e)}async function sn(e,A){return xQ(!e[Fe]),new Promise((t,r)=>{if(KD(e)){let n=e._readableState;n.destroyed&&n.closeEmitted===!1?e.on("error",s=>{r(s)}).on("close",()=>{r(new TypeError("unusable"))}):r(n.errored??new TypeError("unusable"))}else queueMicrotask(()=>{e[Fe]={type:A,stream:e,resolve:t,reject:r,length:0,body:[]},e.on("error",function(n){qa(this[Fe],n)}).on("close",function(){this[Fe].body!==null&&qa(this[Fe],new YQ)}),XD(e[Fe])})})}function XD(e){if(e.body===null)return;let{_readableState:A}=e.stream;if(A.bufferIndex){let t=A.bufferIndex,r=A.buffer.length;for(let n=t;n<r;n++)Va(e,A.buffer[n])}else for(let t of A.buffer)Va(e,t);for(A.endEmitted?TQ(this[Fe]):e.stream.on("end",function(){TQ(this[Fe])}),e.stream.resume();e.stream.read()!=null;);}function Ha(e,A){if(e.length===0||A===0)return"";let t=e.length===1?e[0]:Buffer.concat(e,A),r=t.length,n=r>2&&t[0]===239&&t[1]===187&&t[2]===191?3:0;return t.utf8Slice(n,r)}function LQ(e,A){if(e.length===0||A===0)return new Uint8Array(0);if(e.length===1)return new Uint8Array(e[0]);let t=new Uint8Array(Buffer.allocUnsafeSlow(A).buffer),r=0;for(let n=0;n<e.length;++n){let s=e[n];t.set(s,r),r+=s.length}return t}function TQ(e){let{type:A,body:t,resolve:r,stream:n,length:s}=e;try{A==="text"?r(Ha(t,s)):A==="json"?r(JSON.parse(Ha(t,s))):A==="arrayBuffer"?r(LQ(t,s).buffer):A==="blob"?r(new Blob(t,{type:n[JQ]})):A==="bytes"&&r(LQ(t,s)),qa(e)}catch(o){n.destroy(o)}}function Va(e,A){e.length+=A.length,e.body.push(A)}function qa(e,A){e.body!==null&&(A?e.reject(A):e.resolve(),e.type=null,e.stream=null,e.resolve=null,e.reject=null,e.length=0,e.body=null)}vQ.exports={Readable:va,chunksDecode:Ha}});var Wa=f((FT,WQ)=>{var jD=d("node:assert"),{ResponseStatusCodeError:HQ}=v(),{chunksDecode:VQ}=Oa(),$D=128*1024;async function eb({callback:e,body:A,contentType:t,statusCode:r,statusMessage:n,headers:s}){jD(A);let o=[],i=0;try{for await(let u of A)if(o.push(u),i+=u.length,i>$D){o=[],i=0;break}}catch{o=[],i=0}let a=`Response status code ${r}${n?`: ${n}`:""}`;if(r===204||!t||!i){queueMicrotask(()=>e(new HQ(a,r,s)));return}let c=Error.stackTraceLimit;Error.stackTraceLimit=0;let l;try{qQ(t)?l=JSON.parse(VQ(o,i)):OQ(t)&&(l=VQ(o,i))}catch{}finally{Error.stackTraceLimit=c}queueMicrotask(()=>e(new HQ(a,r,s,l)))}var qQ=e=>e.length>15&&e[11]==="/"&&e[0]==="a"&&e[1]==="p"&&e[2]==="p"&&e[3]==="l"&&e[4]==="i"&&e[5]==="c"&&e[6]==="a"&&e[7]==="t"&&e[8]==="i"&&e[9]==="o"&&e[10]==="n"&&e[12]==="j"&&e[13]==="s"&&e[14]==="o"&&e[15]==="n",OQ=e=>e.length>4&&e[4]==="/"&&e[0]==="t"&&e[1]==="e"&&e[2]==="x"&&e[3]==="t";WQ.exports={getResolveErrorBodyCallback:eb,isContentTypeApplicationJson:qQ,isContentTypeText:OQ}});var ZQ=f((RT,Pa)=>{"use strict";var Ab=d("node:assert"),{Readable:tb}=Oa(),{InvalidArgumentError:nr,RequestAbortedError:PQ}=v(),Re=x(),{getResolveErrorBodyCallback:rb}=Wa(),{AsyncResource:nb}=d("node:async_hooks"),Ss=class extends nb{constructor(A,t){if(!A||typeof A!="object")throw new nr("invalid opts");let{signal:r,method:n,opaque:s,body:o,onInfo:i,responseHeaders:a,throwOnError:c,highWaterMark:l}=A;try{if(typeof t!="function")throw new nr("invalid callback");if(l&&(typeof l!="number"||l<0))throw new nr("invalid highWaterMark");if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new nr("signal must be an EventEmitter or EventTarget");if(n==="CONNECT")throw new nr("invalid method");if(i&&typeof i!="function")throw new nr("invalid onInfo callback");super("UNDICI_REQUEST")}catch(u){throw Re.isStream(o)&&Re.destroy(o.on("error",Re.nop),u),u}this.method=n,this.responseHeaders=a||null,this.opaque=s||null,this.callback=t,this.res=null,this.abort=null,this.body=o,this.trailers={},this.context=null,this.onInfo=i||null,this.throwOnError=c,this.highWaterMark=l,this.signal=r,this.reason=null,this.removeAbortListener=null,Re.isStream(o)&&o.on("error",u=>{this.onError(u)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new PQ:this.removeAbortListener=Re.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new PQ,this.res?Re.destroy(this.res.on("error",Re.nop),this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(A,t){if(this.reason){A(this.reason);return}Ab(this.callback),this.abort=A,this.context=t}onHeaders(A,t,r,n){let{callback:s,opaque:o,abort:i,context:a,responseHeaders:c,highWaterMark:l}=this,u=c==="raw"?Re.parseRawHeaders(t):Re.parseHeaders(t);if(A<200){this.onInfo&&this.onInfo({statusCode:A,headers:u});return}let g=c==="raw"?Re.parseHeaders(t):u,E=g["content-type"],Q=g["content-length"],I=new tb({resume:r,abort:i,contentType:E,contentLength:this.method!=="HEAD"&&Q?Number(Q):null,highWaterMark:l});this.removeAbortListener&&I.on("close",this.removeAbortListener),this.callback=null,this.res=I,s!==null&&(this.throwOnError&&A>=400?this.runInAsyncScope(rb,null,{callback:s,body:I,contentType:E,statusCode:A,statusMessage:n,headers:u}):this.runInAsyncScope(s,null,null,{statusCode:A,headers:u,trailers:this.trailers,opaque:o,body:I,context:a}))}onData(A){return this.res.push(A)}onComplete(A){Re.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:t,callback:r,body:n,opaque:s}=this;r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,A,{opaque:s})})),t&&(this.res=null,queueMicrotask(()=>{Re.destroy(t,A)})),n&&(this.body=null,Re.destroy(n,A)),this.removeAbortListener&&(t?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function _Q(e,A){if(A===void 0)return new Promise((t,r)=>{_Q.call(this,e,(n,s)=>n?r(n):t(s))});try{this.dispatch(e,new Ss(e,A))}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}Pa.exports=_Q;Pa.exports.RequestHandler=Ss});var on=f((ST,XQ)=>{var{addAbortListener:sb}=x(),{RequestAbortedError:ob}=v(),sr=Symbol("kListener"),aA=Symbol("kSignal");function zQ(e){e.abort?e.abort(e[aA]?.reason):e.reason=e[aA]?.reason??new ob,KQ(e)}function ib(e,A){if(e.reason=null,e[aA]=null,e[sr]=null,!!A){if(A.aborted){zQ(e);return}e[aA]=A,e[sr]=()=>{zQ(e)},sb(e[aA],e[sr])}}function KQ(e){e[aA]&&("removeEventListener"in e[aA]?e[aA].removeEventListener("abort",e[sr]):e[aA].removeListener("abort",e[sr]),e[aA]=null,e[sr]=null)}XQ.exports={addSignal:ib,removeSignal:KQ}});var AB=f((NT,eB)=>{"use strict";var ab=d("node:assert"),{finished:cb,PassThrough:gb}=d("node:stream"),{InvalidArgumentError:or,InvalidReturnValueError:ub}=v(),ze=x(),{getResolveErrorBodyCallback:lb}=Wa(),{AsyncResource:Eb}=d("node:async_hooks"),{addSignal:Qb,removeSignal:jQ}=on(),_a=class extends Eb{constructor(A,t,r){if(!A||typeof A!="object")throw new or("invalid opts");let{signal:n,method:s,opaque:o,body:i,onInfo:a,responseHeaders:c,throwOnError:l}=A;try{if(typeof r!="function")throw new or("invalid callback");if(typeof t!="function")throw new or("invalid factory");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new or("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new or("invalid method");if(a&&typeof a!="function")throw new or("invalid onInfo callback");super("UNDICI_STREAM")}catch(u){throw ze.isStream(i)&&ze.destroy(i.on("error",ze.nop),u),u}this.responseHeaders=c||null,this.opaque=o||null,this.factory=t,this.callback=r,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=i,this.onInfo=a||null,this.throwOnError=l||!1,ze.isStream(i)&&i.on("error",u=>{this.onError(u)}),Qb(this,n)}onConnect(A,t){if(this.reason){A(this.reason);return}ab(this.callback),this.abort=A,this.context=t}onHeaders(A,t,r,n){let{factory:s,opaque:o,context:i,callback:a,responseHeaders:c}=this,l=c==="raw"?ze.parseRawHeaders(t):ze.parseHeaders(t);if(A<200){this.onInfo&&this.onInfo({statusCode:A,headers:l});return}this.factory=null;let u;if(this.throwOnError&&A>=400){let Q=(c==="raw"?ze.parseHeaders(t):l)["content-type"];u=new gb,this.callback=null,this.runInAsyncScope(lb,null,{callback:a,body:u,contentType:Q,statusCode:A,statusMessage:n,headers:l})}else{if(s===null)return;if(u=this.runInAsyncScope(s,null,{statusCode:A,headers:l,opaque:o,context:i}),!u||typeof u.write!="function"||typeof u.end!="function"||typeof u.on!="function")throw new ub("expected Writable");cb(u,{readable:!1},E=>{let{callback:Q,res:I,opaque:C,trailers:B,abort:h}=this;this.res=null,(E||!I.readable)&&ze.destroy(I,E),this.callback=null,this.runInAsyncScope(Q,null,E||null,{opaque:C,trailers:B}),E&&h()})}return u.on("drain",r),this.res=u,(u.writableNeedDrain!==void 0?u.writableNeedDrain:u._writableState?.needDrain)!==!0}onData(A){let{res:t}=this;return t?t.write(A):!0}onComplete(A){let{res:t}=this;jQ(this),t&&(this.trailers=ze.parseHeaders(A),t.end())}onError(A){let{res:t,callback:r,opaque:n,body:s}=this;jQ(this),this.factory=null,t?(this.res=null,ze.destroy(t,A)):r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,A,{opaque:n})})),s&&(this.body=null,ze.destroy(s,A))}};function $Q(e,A,t){if(t===void 0)return new Promise((r,n)=>{$Q.call(this,e,A,(s,o)=>s?n(s):r(o))});try{this.dispatch(e,new _a(e,A,t))}catch(r){if(typeof t!="function")throw r;let n=e?.opaque;queueMicrotask(()=>t(r,{opaque:n}))}}eB.exports=$Q});var sB=f((UT,nB)=>{"use strict";var{Readable:rB,Duplex:Bb,PassThrough:Ib}=d("node:stream"),{InvalidArgumentError:an,InvalidReturnValueError:Cb,RequestAbortedError:Za}=v(),He=x(),{AsyncResource:hb}=d("node:async_hooks"),{addSignal:db,removeSignal:fb}=on(),tB=d("node:assert"),ir=Symbol("resume"),za=class extends rB{constructor(){super({autoDestroy:!0}),this[ir]=null}_read(){let{[ir]:A}=this;A&&(this[ir]=null,A())}_destroy(A,t){this._read(),t(A)}},Ka=class extends rB{constructor(A){super({autoDestroy:!0}),this[ir]=A}_read(){this[ir]()}_destroy(A,t){!A&&!this._readableState.endEmitted&&(A=new Za),t(A)}},Xa=class extends hb{constructor(A,t){if(!A||typeof A!="object")throw new an("invalid opts");if(typeof t!="function")throw new an("invalid handler");let{signal:r,method:n,opaque:s,onInfo:o,responseHeaders:i}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new an("signal must be an EventEmitter or EventTarget");if(n==="CONNECT")throw new an("invalid method");if(o&&typeof o!="function")throw new an("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=s||null,this.responseHeaders=i||null,this.handler=t,this.abort=null,this.context=null,this.onInfo=o||null,this.req=new za().on("error",He.nop),this.ret=new Bb({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:a}=this;a?.resume&&a.resume()},write:(a,c,l)=>{let{req:u}=this;u.push(a,c)||u._readableState.destroyed?l():u[ir]=l},destroy:(a,c)=>{let{body:l,req:u,res:g,ret:E,abort:Q}=this;!a&&!E._readableState.endEmitted&&(a=new Za),Q&&a&&Q(),He.destroy(l,a),He.destroy(u,a),He.destroy(g,a),fb(this),c(a)}}).on("prefinish",()=>{let{req:a}=this;a.push(null)}),this.res=null,db(this,r)}onConnect(A,t){let{ret:r,res:n}=this;if(this.reason){A(this.reason);return}tB(!n,"pipeline cannot be retried"),tB(!r.destroyed),this.abort=A,this.context=t}onHeaders(A,t,r){let{opaque:n,handler:s,context:o}=this;if(A<200){if(this.onInfo){let a=this.responseHeaders==="raw"?He.parseRawHeaders(t):He.parseHeaders(t);this.onInfo({statusCode:A,headers:a})}return}this.res=new Ka(r);let i;try{this.handler=null;let a=this.responseHeaders==="raw"?He.parseRawHeaders(t):He.parseHeaders(t);i=this.runInAsyncScope(s,null,{statusCode:A,headers:a,opaque:n,body:this.res,context:o})}catch(a){throw this.res.on("error",He.nop),a}if(!i||typeof i.on!="function")throw new Cb("expected Readable");i.on("data",a=>{let{ret:c,body:l}=this;!c.push(a)&&l.pause&&l.pause()}).on("error",a=>{let{ret:c}=this;He.destroy(c,a)}).on("end",()=>{let{ret:a}=this;a.push(null)}).on("close",()=>{let{ret:a}=this;a._readableState.ended||He.destroy(a,new Za)}),this.body=i}onData(A){let{res:t}=this;return t.push(A)}onComplete(A){let{res:t}=this;t.push(null)}onError(A){let{ret:t}=this;this.handler=null,He.destroy(t,A)}};function pb(e,A){try{let t=new Xa(e,A);return this.dispatch({...e,body:t.req},t),t.ret}catch(t){return new Ib().destroy(t)}}nB.exports=pb});var uB=f((MT,gB)=>{"use strict";var{InvalidArgumentError:ja,SocketError:wb}=v(),{AsyncResource:mb}=d("node:async_hooks"),oB=x(),{addSignal:yb,removeSignal:iB}=on(),aB=d("node:assert"),$a=class extends mb{constructor(A,t){if(!A||typeof A!="object")throw new ja("invalid opts");if(typeof t!="function")throw new ja("invalid callback");let{signal:r,opaque:n,responseHeaders:s}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ja("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=s||null,this.opaque=n||null,this.callback=t,this.abort=null,this.context=null,yb(this,r)}onConnect(A,t){if(this.reason){A(this.reason);return}aB(this.callback),this.abort=A,this.context=null}onHeaders(){throw new wb("bad upgrade",null)}onUpgrade(A,t,r){aB(A===101);let{callback:n,opaque:s,context:o}=this;iB(this),this.callback=null;let i=this.responseHeaders==="raw"?oB.parseRawHeaders(t):oB.parseHeaders(t);this.runInAsyncScope(n,null,null,{headers:i,socket:r,opaque:s,context:o})}onError(A){let{callback:t,opaque:r}=this;iB(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,A,{opaque:r})}))}};function cB(e,A){if(A===void 0)return new Promise((t,r)=>{cB.call(this,e,(n,s)=>n?r(n):t(s))});try{let t=new $a(e,A);this.dispatch({...e,method:e.method||"GET",upgrade:e.protocol||"Websocket"},t)}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}gB.exports=cB});var IB=f((LT,BB)=>{"use strict";var Db=d("node:assert"),{AsyncResource:bb}=d("node:async_hooks"),{InvalidArgumentError:ec,SocketError:kb}=v(),lB=x(),{addSignal:Fb,removeSignal:EB}=on(),Ac=class extends bb{constructor(A,t){if(!A||typeof A!="object")throw new ec("invalid opts");if(typeof t!="function")throw new ec("invalid callback");let{signal:r,opaque:n,responseHeaders:s}=A;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ec("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=n||null,this.responseHeaders=s||null,this.callback=t,this.abort=null,Fb(this,r)}onConnect(A,t){if(this.reason){A(this.reason);return}Db(this.callback),this.abort=A,this.context=t}onHeaders(){throw new kb("bad connect",null)}onUpgrade(A,t,r){let{callback:n,opaque:s,context:o}=this;EB(this),this.callback=null;let i=t;i!=null&&(i=this.responseHeaders==="raw"?lB.parseRawHeaders(t):lB.parseHeaders(t)),this.runInAsyncScope(n,null,null,{statusCode:A,headers:i,socket:r,opaque:s,context:o})}onError(A){let{callback:t,opaque:r}=this;EB(this),t&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(t,null,A,{opaque:r})}))}};function QB(e,A){if(A===void 0)return new Promise((t,r)=>{QB.call(this,e,(n,s)=>n?r(n):t(s))});try{let t=new Ac(e,A);this.dispatch({...e,method:"CONNECT"},t)}catch(t){if(typeof A!="function")throw t;let r=e?.opaque;queueMicrotask(()=>A(t,{opaque:r}))}}BB.exports=QB});var CB=f((TT,ar)=>{"use strict";ar.exports.request=ZQ();ar.exports.stream=AB();ar.exports.pipeline=sB();ar.exports.upgrade=uB();ar.exports.connect=IB()});var rc=f((xT,dB)=>{"use strict";var{UndiciError:Rb}=v(),hB=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),tc=class e extends Rb{constructor(A){super(A),Error.captureStackTrace(this,e),this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[hB]===!0}[hB]=!0};dB.exports={MockNotMatchedError:tc}});var cr=f((YT,fB)=>{"use strict";fB.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected")}});var cn=f((GT,NB)=>{"use strict";var{MockNotMatchedError:Qt}=rc(),{kDispatches:Ns,kMockAgent:Sb,kOriginalDispatch:Nb,kOrigin:Ub,kGetNetConnect:Mb}=cr(),{buildURL:Lb}=x(),{STATUS_CODES:Tb}=d("node:http"),{types:{isPromise:xb}}=d("node:util");function yA(e,A){return typeof e=="string"?e===A:e instanceof RegExp?e.test(A):typeof e=="function"?e(A)===!0:!1}function wB(e){return Object.fromEntries(Object.entries(e).map(([A,t])=>[A.toLocaleLowerCase(),t]))}function mB(e,A){if(Array.isArray(e)){for(let t=0;t<e.length;t+=2)if(e[t].toLocaleLowerCase()===A.toLocaleLowerCase())return e[t+1];return}else return typeof e.get=="function"?e.get(A):wB(e)[A.toLocaleLowerCase()]}function oc(e){let A=e.slice(),t=[];for(let r=0;r<A.length;r+=2)t.push([A[r],A[r+1]]);return Object.fromEntries(t)}function yB(e,A){if(typeof e.headers=="function")return Array.isArray(A)&&(A=oc(A)),e.headers(A?wB(A):{});if(typeof e.headers>"u")return!0;if(typeof A!="object"||typeof e.headers!="object")return!1;for(let[t,r]of Object.entries(e.headers)){let n=mB(A,t);if(!yA(r,n))return!1}return!0}function pB(e){if(typeof e!="string")return e;let A=e.split("?");if(A.length!==2)return e;let t=new URLSearchParams(A.pop());return t.sort(),[...A,t.toString()].join("?")}function Yb(e,{path:A,method:t,body:r,headers:n}){let s=yA(e.path,A),o=yA(e.method,t),i=typeof e.body<"u"?yA(e.body,r):!0,a=yB(e,n);return s&&o&&i&&a}function DB(e){return Buffer.isBuffer(e)||e instanceof Uint8Array||e instanceof ArrayBuffer?e:typeof e=="object"?JSON.stringify(e):e.toString()}function bB(e,A){let t=A.query?Lb(A.path,A.query):A.path,r=typeof t=="string"?pB(t):t,n=e.filter(({consumed:s})=>!s).filter(({path:s})=>yA(pB(s),r));if(n.length===0)throw new Qt(`Mock dispatch not matched for path '${r}'`);if(n=n.filter(({method:s})=>yA(s,A.method)),n.length===0)throw new Qt(`Mock dispatch not matched for method '${A.method}' on path '${r}'`);if(n=n.filter(({body:s})=>typeof s<"u"?yA(s,A.body):!0),n.length===0)throw new Qt(`Mock dispatch not matched for body '${A.body}' on path '${r}'`);if(n=n.filter(s=>yB(s,A.headers)),n.length===0){let s=typeof A.headers=="object"?JSON.stringify(A.headers):A.headers;throw new Qt(`Mock dispatch not matched for headers '${s}' on path '${r}'`)}return n[0]}function Gb(e,A,t){let r={timesInvoked:0,times:1,persist:!1,consumed:!1},n=typeof t=="function"?{callback:t}:{...t},s={...r,...A,pending:!0,data:{error:null,...n}};return e.push(s),s}function nc(e,A){let t=e.findIndex(r=>r.consumed?Yb(r,A):!1);t!==-1&&e.splice(t,1)}function kB(e){let{path:A,method:t,body:r,headers:n,query:s}=e;return{path:A,method:t,body:r,headers:n,query:s}}function sc(e){let A=Object.keys(e),t=[];for(let r=0;r<A.length;++r){let n=A[r],s=e[n],o=Buffer.from(`${n}`);if(Array.isArray(s))for(let i=0;i<s.length;++i)t.push(o,Buffer.from(`${s[i]}`));else t.push(o,Buffer.from(`${s}`))}return t}function FB(e){return Tb[e]||"unknown"}async function Jb(e){let A=[];for await(let t of e)A.push(t);return Buffer.concat(A).toString("utf8")}function RB(e,A){let t=kB(e),r=bB(this[Ns],t);r.timesInvoked++,r.data.callback&&(r.data={...r.data,...r.data.callback(e)});let{data:{statusCode:n,data:s,headers:o,trailers:i,error:a},delay:c,persist:l}=r,{timesInvoked:u,times:g}=r;if(r.consumed=!l&&u>=g,r.pending=u<g,a!==null)return nc(this[Ns],t),A.onError(a),!0;typeof c=="number"&&c>0?setTimeout(()=>{E(this[Ns])},c):E(this[Ns]);function E(I,C=s){let B=Array.isArray(e.headers)?oc(e.headers):e.headers,h=typeof C=="function"?C({...e,headers:B}):C;if(xb(h)){h.then(_=>E(I,_));return}let y=DB(h),m=sc(o),T=sc(i);A.onConnect?.(_=>A.onError(_),null),A.onHeaders?.(n,m,Q,FB(n)),A.onData?.(Buffer.from(y)),A.onComplete?.(T),nc(I,t)}function Q(){}return!0}function vb(){let e=this[Sb],A=this[Ub],t=this[Nb];return function(n,s){if(e.isMockActive)try{RB.call(this,n,s)}catch(o){if(o instanceof Qt){let i=e[Mb]();if(i===!1)throw new Qt(`${o.message}: subsequent request to origin ${A} was not allowed (net.connect disabled)`);if(SB(i,A))t.call(this,n,s);else throw new Qt(`${o.message}: subsequent request to origin ${A} was not allowed (net.connect is not enabled for this origin)`)}else throw o}else t.call(this,n,s)}}function SB(e,A){let t=new URL(A);return e===!0?!0:!!(Array.isArray(e)&&e.some(r=>yA(r,t.host)))}function Hb(e){if(e){let{agent:A,...t}=e;return t}}NB.exports={getResponseData:DB,getMockDispatch:bB,addMockDispatch:Gb,deleteMockDispatch:nc,buildKey:kB,generateKeyValues:sc,matchValue:yA,getResponse:Jb,getStatusText:FB,mockDispatch:RB,buildMockDispatch:vb,checkNetConnect:SB,buildMockOptions:Hb,getHeaderByName:mB,buildHeadersFromArray:oc}});var Ec=f((JT,lc)=>{"use strict";var{getResponseData:Vb,buildKey:qb,addMockDispatch:ic}=cn(),{kDispatches:Us,kDispatchKey:Ms,kDefaultHeaders:ac,kDefaultTrailers:cc,kContentLength:gc,kMockDispatch:Ls}=cr(),{InvalidArgumentError:cA}=v(),{buildURL:Ob}=x(),gr=class{constructor(A){this[Ls]=A}delay(A){if(typeof A!="number"||!Number.isInteger(A)||A<=0)throw new cA("waitInMs must be a valid integer > 0");return this[Ls].delay=A,this}persist(){return this[Ls].persist=!0,this}times(A){if(typeof A!="number"||!Number.isInteger(A)||A<=0)throw new cA("repeatTimes must be a valid integer > 0");return this[Ls].times=A,this}},uc=class{constructor(A,t){if(typeof A!="object")throw new cA("opts must be an object");if(typeof A.path>"u")throw new cA("opts.path must be defined");if(typeof A.method>"u"&&(A.method="GET"),typeof A.path=="string")if(A.query)A.path=Ob(A.path,A.query);else{let r=new URL(A.path,"data://");A.path=r.pathname+r.search}typeof A.method=="string"&&(A.method=A.method.toUpperCase()),this[Ms]=qb(A),this[Us]=t,this[ac]={},this[cc]={},this[gc]=!1}createMockScopeDispatchData({statusCode:A,data:t,responseOptions:r}){let n=Vb(t),s=this[gc]?{"content-length":n.length}:{},o={...this[ac],...s,...r.headers},i={...this[cc],...r.trailers};return{statusCode:A,data:t,headers:o,trailers:i}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new cA("statusCode must be defined");if(typeof A.responseOptions!="object"||A.responseOptions===null)throw new cA("responseOptions must be an object")}reply(A){if(typeof A=="function"){let s=i=>{let a=A(i);if(typeof a!="object"||a===null)throw new cA("reply options callback must return an object");let c={data:"",responseOptions:{},...a};return this.validateReplyParameters(c),{...this.createMockScopeDispatchData(c)}},o=ic(this[Us],this[Ms],s);return new gr(o)}let t={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(t);let r=this.createMockScopeDispatchData(t),n=ic(this[Us],this[Ms],r);return new gr(n)}replyWithError(A){if(typeof A>"u")throw new cA("error must be defined");let t=ic(this[Us],this[Ms],{error:A});return new gr(t)}defaultReplyHeaders(A){if(typeof A>"u")throw new cA("headers must be defined");return this[ac]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new cA("trailers must be defined");return this[cc]=A,this}replyContentLength(){return this[gc]=!0,this}};lc.exports.MockInterceptor=uc;lc.exports.MockScope=gr});var Ic=f((vT,GB)=>{"use strict";var{promisify:Wb}=d("node:util"),Pb=jt(),{buildMockDispatch:_b}=cn(),{kDispatches:UB,kMockAgent:MB,kClose:LB,kOriginalClose:TB,kOrigin:xB,kOriginalDispatch:Zb,kConnected:Qc}=cr(),{MockInterceptor:zb}=Ec(),YB=j(),{InvalidArgumentError:Kb}=v(),Bc=class extends Pb{constructor(A,t){if(super(A,t),!t||!t.agent||typeof t.agent.dispatch!="function")throw new Kb("Argument opts.agent must implement Agent");this[MB]=t.agent,this[xB]=A,this[UB]=[],this[Qc]=1,this[Zb]=this.dispatch,this[TB]=this.close.bind(this),this.dispatch=_b.call(this),this.close=this[LB]}get[YB.kConnected](){return this[Qc]}intercept(A){return new zb(A,this[UB])}async[LB](){await Wb(this[TB])(),this[Qc]=0,this[MB][YB.kClients].delete(this[xB])}};GB.exports=Bc});var dc=f((HT,WB)=>{"use strict";var{promisify:Xb}=d("node:util"),jb=$t(),{buildMockDispatch:$b}=cn(),{kDispatches:JB,kMockAgent:vB,kClose:HB,kOriginalClose:VB,kOrigin:qB,kOriginalDispatch:ek,kConnected:Cc}=cr(),{MockInterceptor:Ak}=Ec(),OB=j(),{InvalidArgumentError:tk}=v(),hc=class extends jb{constructor(A,t){if(super(A,t),!t||!t.agent||typeof t.agent.dispatch!="function")throw new tk("Argument opts.agent must implement Agent");this[vB]=t.agent,this[qB]=A,this[JB]=[],this[Cc]=1,this[ek]=this.dispatch,this[VB]=this.close.bind(this),this.dispatch=$b.call(this),this.close=this[HB]}get[OB.kConnected](){return this[Cc]}intercept(A){return new Ak(A,this[JB])}async[HB](){await Xb(this[VB])(),this[Cc]=0,this[vB][OB.kClients].delete(this[qB])}};WB.exports=hc});var _B=f((qT,PB)=>{"use strict";var rk={pronoun:"it",is:"is",was:"was",this:"this"},nk={pronoun:"they",is:"are",was:"were",this:"these"};PB.exports=class{constructor(A,t){this.singular=A,this.plural=t}pluralize(A){let t=A===1,r=t?rk:nk,n=t?this.singular:this.plural;return{...r,count:A,noun:n}}}});var zB=f((WT,ZB)=>{"use strict";var{Transform:sk}=d("node:stream"),{Console:ok}=d("node:console"),ik=process.versions.icu?"\u2705":"Y ",ak=process.versions.icu?"\u274C":"N ";ZB.exports=class{constructor({disableColors:A}={}){this.transform=new sk({transform(t,r,n){n(null,t)}}),this.logger=new ok({stdout:this.transform,inspectOptions:{colors:!A&&!process.env.CI}})}format(A){let t=A.map(({method:r,path:n,data:{statusCode:s},persist:o,times:i,timesInvoked:a,origin:c})=>({Method:r,Origin:c,Path:n,"Status code":s,Persistent:o?ik:ak,Invocations:a,Remaining:o?1/0:i-a}));return this.logger.table(t),this.transform.read().toString()}}});var $B=f((PT,jB)=>{"use strict";var{kClients:Bt}=j(),ck=er(),{kAgent:fc,kMockAgentSet:Ts,kMockAgentGet:KB,kDispatches:pc,kIsMockActive:xs,kNetConnect:It,kGetNetConnect:gk,kOptions:Ys,kFactory:Gs}=cr(),uk=Ic(),lk=dc(),{matchValue:Ek,buildMockOptions:Qk}=cn(),{InvalidArgumentError:XB,UndiciError:Bk}=v(),Ik=Ur(),Ck=_B(),hk=zB(),wc=class extends Ik{constructor(A){if(super(A),this[It]=!0,this[xs]=!0,A?.agent&&typeof A.agent.dispatch!="function")throw new XB("Argument opts.agent must implement Agent");let t=A?.agent?A.agent:new ck(A);this[fc]=t,this[Bt]=t[Bt],this[Ys]=Qk(A)}get(A){let t=this[KB](A);return t||(t=this[Gs](A),this[Ts](A,t)),t}dispatch(A,t){return this.get(A.origin),this[fc].dispatch(A,t)}async close(){await this[fc].close(),this[Bt].clear()}deactivate(){this[xs]=!1}activate(){this[xs]=!0}enableNetConnect(A){if(typeof A=="string"||typeof A=="function"||A instanceof RegExp)Array.isArray(this[It])?this[It].push(A):this[It]=[A];else if(typeof A>"u")this[It]=!0;else throw new XB("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[It]=!1}get isMockActive(){return this[xs]}[Ts](A,t){this[Bt].set(A,t)}[Gs](A){let t=Object.assign({agent:this},this[Ys]);return this[Ys]&&this[Ys].connections===1?new uk(A,t):new lk(A,t)}[KB](A){let t=this[Bt].get(A);if(t)return t;if(typeof A!="string"){let r=this[Gs]("http://localhost:9999");return this[Ts](A,r),r}for(let[r,n]of Array.from(this[Bt]))if(n&&typeof r!="string"&&Ek(r,A)){let s=this[Gs](A);return this[Ts](A,s),s[pc]=n[pc],s}}[gk](){return this[It]}pendingInterceptors(){let A=this[Bt];return Array.from(A.entries()).flatMap(([t,r])=>r[pc].map(n=>({...n,origin:t}))).filter(({pending:t})=>t)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new hk}={}){let t=this.pendingInterceptors();if(t.length===0)return;let r=new Ck("interceptor","interceptors").pluralize(t.length);throw new Bk(`
41
41
  ${r.count} ${r.noun} ${r.is} pending:
42
42
 
43
43
  ${A.format(t)}
44
- `.trim())}};jB.exports=wc});var Js=f((PT,rI)=>{"use strict";var eI=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dk}=v(),fk=er();tI()===void 0&&AI(new fk);function AI(e){if(!e||typeof e.dispatch!="function")throw new dk("Argument agent must implement Agent");Object.defineProperty(globalThis,eI,{value:e,writable:!0,enumerable:!1,configurable:!1})}function tI(){return globalThis[eI]}rI.exports={setGlobalDispatcher:AI,getGlobalDispatcher:tI}});var vs=f((ZT,nI)=>{"use strict";nI.exports=class{#e;constructor(A){if(typeof A!="object"||A===null)throw new TypeError("handler must be an object");this.#e=A}onConnect(...A){return this.#e.onConnect?.(...A)}onError(...A){return this.#e.onError?.(...A)}onUpgrade(...A){return this.#e.onUpgrade?.(...A)}onResponseStarted(...A){return this.#e.onResponseStarted?.(...A)}onHeaders(...A){return this.#e.onHeaders?.(...A)}onData(...A){return this.#e.onData?.(...A)}onComplete(...A){return this.#e.onComplete?.(...A)}onBodySent(...A){return this.#e.onBodySent?.(...A)}}});var oI=f((zT,sI)=>{"use strict";var pk=hs();sI.exports=e=>{let A=e?.maxRedirections;return t=>function(n,s){let{maxRedirections:o=A,...i}=n;if(!o)return t(n,s);let a=new pk(t,o,n,s);return t(i,a)}}});var aI=f((KT,iI)=>{"use strict";var wk=Rs();iI.exports=e=>A=>function(r,n){return A(r,new wk({...r,retryOptions:{...e,...r.retryOptions}},{handler:n,dispatch:A}))}});var gI=f((XT,cI)=>{"use strict";var mk=x(),{InvalidArgumentError:yk,RequestAbortedError:Dk}=v(),bk=vs(),mc=class extends bk{#e=1024*1024;#A=null;#t=!1;#s=!1;#n=0;#r=null;#o=null;constructor({maxSize:A},t){if(super(t),A!=null&&(!Number.isFinite(A)||A<1))throw new yk("maxSize must be a number greater than 0");this.#e=A??this.#e,this.#o=t}onConnect(A){this.#A=A,this.#o.onConnect(this.#i.bind(this))}#i(A){this.#s=!0,this.#r=A}onHeaders(A,t,r,n){let o=mk.parseHeaders(t)["content-length"];if(o!=null&&o>this.#e)throw new Dk(`Response size (${o}) larger than maxSize (${this.#e})`);return this.#s?!0:this.#o.onHeaders(A,t,r,n)}onError(A){this.#t||(A=this.#r??A,this.#o.onError(A))}onData(A){return this.#n=this.#n+A.length,this.#n>=this.#e&&(this.#t=!0,this.#s?this.#o.onError(this.#r):this.#o.onComplete([])),!0}onComplete(A){if(!this.#t){if(this.#s){this.#o.onError(this.reason);return}this.#o.onComplete(A)}}};function kk({maxSize:e}={maxSize:1024*1024}){return A=>function(r,n){let{dumpMaxSize:s=e}=r,o=new mc({maxSize:s},n);return A(r,o)}}cI.exports=kk});var EI=f((jT,lI)=>{"use strict";var{isIP:Fk}=d("node:net"),{lookup:Rk}=d("node:dns"),Sk=vs(),{InvalidArgumentError:ur,InformationalError:Nk}=v(),uI=Math.pow(2,31)-1,yc=class{#e=0;#A=0;#t=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#e=A.maxTTL,this.#A=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#s,this.pick=A.pick??this.#n}get full(){return this.#t.size===this.#A}runLookup(A,t,r){let n=this.#t.get(A.hostname);if(n==null&&this.full){r(null,A.origin);return}let s={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#A};if(n==null)this.lookup(A,s,(o,i)=>{if(o||i==null||i.length===0){r(o??new Nk("No DNS entries found"));return}this.setRecords(A,i);let a=this.#t.get(A.hostname),c=this.pick(A,a,s.affinity),l;typeof c.port=="number"?l=`:${c.port}`:A.port!==""?l=`:${A.port}`:l="",r(null,`${A.protocol}//${c.family===6?`[${c.address}]`:c.address}${l}`)});else{let o=this.pick(A,n,s.affinity);if(o==null){this.#t.delete(A.hostname),this.runLookup(A,t,r);return}let i;typeof o.port=="number"?i=`:${o.port}`:A.port!==""?i=`:${A.port}`:i="",r(null,`${A.protocol}//${o.family===6?`[${o.address}]`:o.address}${i}`)}}#s(A,t,r){Rk(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(n,s)=>{if(n)return r(n);let o=new Map;for(let i of s)o.set(`${i.address}:${i.family}`,i);r(null,o.values())})}#n(A,t,r){let n=null,{records:s,offset:o}=t,i;if(this.dualStack?(r==null&&(o==null||o===uI?(t.offset=0,r=4):(t.offset++,r=(t.offset&1)===1?6:4)),s[r]!=null&&s[r].ips.length>0?i=s[r]:i=s[r===4?6:4]):i=s[r],i==null||i.ips.length===0)return n;i.offset==null||i.offset===uI?i.offset=0:i.offset++;let a=i.offset%i.ips.length;return n=i.ips[a]??null,n==null?n:Date.now()-n.timestamp>n.ttl?(i.ips.splice(a,1),this.pick(A,t,r)):n}setRecords(A,t){let r=Date.now(),n={records:{4:null,6:null}};for(let s of t){s.timestamp=r,typeof s.ttl=="number"?s.ttl=Math.min(s.ttl,this.#e):s.ttl=this.#e;let o=n.records[s.family]??{ips:[]};o.ips.push(s),n.records[s.family]=o}this.#t.set(A.hostname,n)}getHandler(A,t){return new Dc(this,A,t)}},Dc=class extends Sk{#e=null;#A=null;#t=null;#s=null;#n=null;constructor(A,{origin:t,handler:r,dispatch:n},s){super(r),this.#n=t,this.#s=r,this.#A={...s},this.#e=A,this.#t=n}onError(A){switch(A.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#e.dualStack){this.#e.runLookup(this.#n,this.#A,(t,r)=>{if(t)return this.#s.onError(t);let n={...this.#A,origin:r};this.#t(n,this)});return}this.#s.onError(A);return}case"ENOTFOUND":this.#e.deleteRecord(this.#n);default:this.#s.onError(A);break}}};lI.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!="number"||e?.maxTTL<0))throw new ur("Invalid maxTTL. Must be a positive number");if(e?.maxItems!=null&&(typeof e?.maxItems!="number"||e?.maxItems<1))throw new ur("Invalid maxItems. Must be a positive number and greater than zero");if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new ur("Invalid affinity. Must be either 4 or 6");if(e?.dualStack!=null&&typeof e?.dualStack!="boolean")throw new ur("Invalid dualStack. Must be a boolean");if(e?.lookup!=null&&typeof e?.lookup!="function")throw new ur("Invalid lookup. Must be a function");if(e?.pick!=null&&typeof e?.pick!="function")throw new ur("Invalid pick. Must be a function");let A=e?.dualStack??!0,t;A?t=e?.affinity??null:t=e?.affinity??4;let r={maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:A,affinity:t,maxItems:e?.maxItems??1/0},n=new yc(r);return s=>function(i,a){let c=i.origin.constructor===URL?i.origin:new URL(i.origin);return Fk(c.hostname)!==0?s(i,a):(n.runLookup(c,i,(l,u)=>{if(l)return a.onError(l);let g=null;g={...i,servername:c.hostname,origin:u,headers:{host:c.hostname,...i.headers}},s(g,n.getHandler({origin:c,dispatch:s,handler:a},i))}),!0)}}});var Ct=f(($T,fI)=>{"use strict";var{kConstruct:Uk}=j(),{kEnumerableProperty:lr}=x(),{iteratorMixin:Mk,isValidHeaderName:gn,isValidHeaderValue:BI}=be(),{webidl:J}=ue(),bc=d("node:assert"),Hs=d("node:util"),ie=Symbol("headers map"),Se=Symbol("headers map sorted");function QI(e){return e===10||e===13||e===9||e===32}function II(e){let A=0,t=e.length;for(;t>A&&QI(e.charCodeAt(t-1));)--t;for(;t>A&&QI(e.charCodeAt(A));)++A;return A===0&&t===e.length?e:e.substring(A,t)}function CI(e,A){if(Array.isArray(A))for(let t=0;t<A.length;++t){let r=A[t];if(r.length!==2)throw J.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${r.length}.`});kc(e,r[0],r[1])}else if(typeof A=="object"&&A!==null){let t=Object.keys(A);for(let r=0;r<t.length;++r)kc(e,t[r],A[t[r]])}else throw J.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})}function kc(e,A,t){if(t=II(t),gn(A)){if(!BI(t))throw J.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header value"})}else throw J.errors.invalidArgument({prefix:"Headers.append",value:A,type:"header name"});if(dI(e)==="immutable")throw new TypeError("immutable");return Fc(e).append(A,t,!1)}function hI(e,A){return e[0]<A[0]?-1:1}var Vs=class e{cookies=null;constructor(A){A instanceof e?(this[ie]=new Map(A[ie]),this[Se]=A[Se],this.cookies=A.cookies===null?null:[...A.cookies]):(this[ie]=new Map(A),this[Se]=null)}contains(A,t){return this[ie].has(t?A:A.toLowerCase())}clear(){this[ie].clear(),this[Se]=null,this.cookies=null}append(A,t,r){this[Se]=null;let n=r?A:A.toLowerCase(),s=this[ie].get(n);if(s){let o=n==="cookie"?"; ":", ";this[ie].set(n,{name:s.name,value:`${s.value}${o}${t}`})}else this[ie].set(n,{name:A,value:t});n==="set-cookie"&&(this.cookies??=[]).push(t)}set(A,t,r){this[Se]=null;let n=r?A:A.toLowerCase();n==="set-cookie"&&(this.cookies=[t]),this[ie].set(n,{name:A,value:t})}delete(A,t){this[Se]=null,t||(A=A.toLowerCase()),A==="set-cookie"&&(this.cookies=null),this[ie].delete(A)}get(A,t){return this[ie].get(t?A:A.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:A,1:{value:t}}of this[ie])yield[A,t]}get entries(){let A={};if(this[ie].size!==0)for(let{name:t,value:r}of this[ie].values())A[t]=r;return A}rawValues(){return this[ie].values()}get entriesList(){let A=[];if(this[ie].size!==0)for(let{0:t,1:{name:r,value:n}}of this[ie])if(t==="set-cookie")for(let s of this.cookies)A.push([r,s]);else A.push([r,n]);return A}toSortedArray(){let A=this[ie].size,t=new Array(A);if(A<=32){if(A===0)return t;let r=this[ie][Symbol.iterator](),n=r.next().value;t[0]=[n[0],n[1].value],bc(n[1].value!==null);for(let s=1,o=0,i=0,a=0,c=0,l,u;s<A;++s){for(u=r.next().value,l=t[s]=[u[0],u[1].value],bc(l[1]!==null),a=0,i=s;a<i;)c=a+(i-a>>1),t[c][0]<=l[0]?a=c+1:i=c;if(s!==c){for(o=s;o>a;)t[o]=t[--o];t[a]=l}}if(!r.next().done)throw new TypeError("Unreachable");return t}else{let r=0;for(let{0:n,1:{value:s}}of this[ie])t[r++]=[n,s],bc(s!==null);return t.sort(hI)}}},Ke=class e{#e;#A;constructor(A=void 0){J.util.markAsUncloneable(this),A!==Uk&&(this.#A=new Vs,this.#e="none",A!==void 0&&(A=J.converters.HeadersInit(A,"Headers contructor","init"),CI(this,A)))}append(A,t){J.brandCheck(this,e),J.argumentLengthCheck(arguments,2,"Headers.append");let r="Headers.append";return A=J.converters.ByteString(A,r,"name"),t=J.converters.ByteString(t,r,"value"),kc(this,A,t)}delete(A){if(J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.delete"),A=J.converters.ByteString(A,"Headers.delete","name"),!gn(A))throw J.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#A.contains(A,!1)&&this.#A.delete(A,!1)}get(A){J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.get");let t="Headers.get";if(A=J.converters.ByteString(A,t,"name"),!gn(A))throw J.errors.invalidArgument({prefix:t,value:A,type:"header name"});return this.#A.get(A,!1)}has(A){J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.has");let t="Headers.has";if(A=J.converters.ByteString(A,t,"name"),!gn(A))throw J.errors.invalidArgument({prefix:t,value:A,type:"header name"});return this.#A.contains(A,!1)}set(A,t){J.brandCheck(this,e),J.argumentLengthCheck(arguments,2,"Headers.set");let r="Headers.set";if(A=J.converters.ByteString(A,r,"name"),t=J.converters.ByteString(t,r,"value"),t=II(t),gn(A)){if(!BI(t))throw J.errors.invalidArgument({prefix:r,value:t,type:"header value"})}else throw J.errors.invalidArgument({prefix:r,value:A,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#A.set(A,t,!1)}getSetCookie(){J.brandCheck(this,e);let A=this.#A.cookies;return A?[...A]:[]}get[Se](){if(this.#A[Se])return this.#A[Se];let A=[],t=this.#A.toSortedArray(),r=this.#A.cookies;if(r===null||r.length===1)return this.#A[Se]=t;for(let n=0;n<t.length;++n){let{0:s,1:o}=t[n];if(s==="set-cookie")for(let i=0;i<r.length;++i)A.push([s,r[i]]);else A.push([s,o])}return this.#A[Se]=A}[Hs.inspect.custom](A,t){return t.depth??=A,`Headers ${Hs.formatWithOptions(t,this.#A.entries)}`}static getHeadersGuard(A){return A.#e}static setHeadersGuard(A,t){A.#e=t}static getHeadersList(A){return A.#A}static setHeadersList(A,t){A.#A=t}},{getHeadersGuard:dI,setHeadersGuard:Lk,getHeadersList:Fc,setHeadersList:Tk}=Ke;Reflect.deleteProperty(Ke,"getHeadersGuard");Reflect.deleteProperty(Ke,"setHeadersGuard");Reflect.deleteProperty(Ke,"getHeadersList");Reflect.deleteProperty(Ke,"setHeadersList");Mk("Headers",Ke,Se,0,1);Object.defineProperties(Ke.prototype,{append:lr,delete:lr,get:lr,has:lr,set:lr,getSetCookie:lr,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Hs.inspect.custom]:{enumerable:!1}});J.converters.HeadersInit=function(e,A,t){if(J.util.Type(e)==="Object"){let r=Reflect.get(e,Symbol.iterator);if(!Hs.types.isProxy(e)&&r===Ke.prototype.entries)try{return Fc(e).entriesList}catch{}return typeof r=="function"?J.converters["sequence<sequence<ByteString>>"](e,A,t,r.bind(e)):J.converters["record<ByteString, ByteString>"](e,A,t)}throw J.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})};fI.exports={fill:CI,compareHeaderName:hI,Headers:Ke,HeadersList:Vs,getHeadersGuard:dI,setHeadersGuard:Lk,setHeadersList:Tk,getHeadersList:Fc}});var ln=f((ex,UI)=>{"use strict";var{Headers:bI,HeadersList:pI,fill:xk,getHeadersGuard:Yk,setHeadersGuard:kI,setHeadersList:FI}=Ct(),{extractBody:wI,cloneBody:Gk,mixinBody:Jk,hasFinalizationRegistry:RI,streamRegistry:SI,bodyUnusable:vk}=Wt(),Rc=x(),mI=d("node:util"),{kEnumerableProperty:Ne}=Rc,{isValidReasonPhrase:Hk,isCancelled:Vk,isAborted:qk,isBlobLike:Ok,serializeJavascriptValueToJSONString:Wk,isErrorLike:Pk,isomorphicEncode:_k,environmentSettingsObject:Zk}=be(),{redirectStatusSet:zk,nullBodyStatus:Kk}=Tr(),{kState:ee,kHeaders:DA}=LA(),{webidl:L}=ue(),{FormData:Xk}=Hr(),{URLSerializer:yI}=de(),{kConstruct:Os}=j(),Sc=d("node:assert"),{types:jk}=d("node:util"),$k=new TextEncoder("utf-8"),ht=class e{static error(){return un(Ws(),"immutable")}static json(A,t={}){L.argumentLengthCheck(arguments,1,"Response.json"),t!==null&&(t=L.converters.ResponseInit(t));let r=$k.encode(Wk(A)),n=wI(r),s=un(Er({}),"response");return DI(s,t,{body:n[0],type:"application/json"}),s}static redirect(A,t=302){L.argumentLengthCheck(arguments,1,"Response.redirect"),A=L.converters.USVString(A),t=L.converters["unsigned short"](t);let r;try{r=new URL(A,Zk.settingsObject.baseUrl)}catch(o){throw new TypeError(`Failed to parse URL from ${A}`,{cause:o})}if(!zk.has(t))throw new RangeError(`Invalid status code ${t}`);let n=un(Er({}),"immutable");n[ee].status=t;let s=_k(yI(r));return n[ee].headersList.append("location",s,!0),n}constructor(A=null,t={}){if(L.util.markAsUncloneable(this),A===Os)return;A!==null&&(A=L.converters.BodyInit(A)),t=L.converters.ResponseInit(t),this[ee]=Er({}),this[DA]=new bI(Os),kI(this[DA],"response"),FI(this[DA],this[ee].headersList);let r=null;if(A!=null){let[n,s]=wI(A);r={body:n,type:s}}DI(this,t,r)}get type(){return L.brandCheck(this,e),this[ee].type}get url(){L.brandCheck(this,e);let A=this[ee].urlList,t=A[A.length-1]??null;return t===null?"":yI(t,!0)}get redirected(){return L.brandCheck(this,e),this[ee].urlList.length>1}get status(){return L.brandCheck(this,e),this[ee].status}get ok(){return L.brandCheck(this,e),this[ee].status>=200&&this[ee].status<=299}get statusText(){return L.brandCheck(this,e),this[ee].statusText}get headers(){return L.brandCheck(this,e),this[DA]}get body(){return L.brandCheck(this,e),this[ee].body?this[ee].body.stream:null}get bodyUsed(){return L.brandCheck(this,e),!!this[ee].body&&Rc.isDisturbed(this[ee].body.stream)}clone(){if(L.brandCheck(this,e),vk(this))throw L.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=Nc(this[ee]);return RI&&this[ee].body?.stream&&SI.register(this,new WeakRef(this[ee].body.stream)),un(A,Yk(this[DA]))}[mI.inspect.custom](A,t){t.depth===null&&(t.depth=2),t.colors??=!0;let r={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${mI.formatWithOptions(t,r)}`}};Jk(ht);Object.defineProperties(ht.prototype,{type:Ne,url:Ne,status:Ne,ok:Ne,redirected:Ne,statusText:Ne,headers:Ne,clone:Ne,body:Ne,bodyUsed:Ne,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ht,{json:Ne,redirect:Ne,error:Ne});function Nc(e){if(e.internalResponse)return NI(Nc(e.internalResponse),e.type);let A=Er({...e,body:null});return e.body!=null&&(A.body=Gk(A,e.body)),A}function Er(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new pI(e?.headersList):new pI,urlList:e?.urlList?[...e.urlList]:[]}}function Ws(e){let A=Pk(e);return Er({type:"error",status:0,error:A?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function eF(e){return e.type==="error"&&e.status===0}function qs(e,A){return A={internalResponse:e,...A},new Proxy(e,{get(t,r){return r in A?A[r]:t[r]},set(t,r,n){return Sc(!(r in A)),t[r]=n,!0}})}function NI(e,A){if(A==="basic")return qs(e,{type:"basic",headersList:e.headersList});if(A==="cors")return qs(e,{type:"cors",headersList:e.headersList});if(A==="opaque")return qs(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(A==="opaqueredirect")return qs(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Sc(!1)}function AF(e,A=null){return Sc(Vk(e)),qk(e)?Ws(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:A})):Ws(Object.assign(new DOMException("Request was cancelled."),{cause:A}))}function DI(e,A,t){if(A.status!==null&&(A.status<200||A.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in A&&A.statusText!=null&&!Hk(String(A.statusText)))throw new TypeError("Invalid statusText");if("status"in A&&A.status!=null&&(e[ee].status=A.status),"statusText"in A&&A.statusText!=null&&(e[ee].statusText=A.statusText),"headers"in A&&A.headers!=null&&xk(e[DA],A.headers),t){if(Kk.includes(e.status))throw L.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[ee].body=t.body,t.type!=null&&!e[ee].headersList.contains("content-type",!0)&&e[ee].headersList.append("content-type",t.type,!0)}}function un(e,A){let t=new ht(Os);return t[ee]=e,t[DA]=new bI(Os),FI(t[DA],e.headersList),kI(t[DA],A),RI&&e.body?.stream&&SI.register(t,new WeakRef(e.body.stream)),t}L.converters.ReadableStream=L.interfaceConverter(ReadableStream);L.converters.FormData=L.interfaceConverter(Xk);L.converters.URLSearchParams=L.interfaceConverter(URLSearchParams);L.converters.XMLHttpRequestBodyInit=function(e,A,t){return typeof e=="string"?L.converters.USVString(e,A,t):Ok(e)?L.converters.Blob(e,A,t,{strict:!1}):ArrayBuffer.isView(e)||jk.isArrayBuffer(e)?L.converters.BufferSource(e,A,t):Rc.isFormDataLike(e)?L.converters.FormData(e,A,t,{strict:!1}):e instanceof URLSearchParams?L.converters.URLSearchParams(e,A,t):L.converters.DOMString(e,A,t)};L.converters.BodyInit=function(e,A,t){return e instanceof ReadableStream?L.converters.ReadableStream(e,A,t):e?.[Symbol.asyncIterator]?e:L.converters.XMLHttpRequestBodyInit(e,A,t)};L.converters.ResponseInit=L.dictionaryConverter([{key:"status",converter:L.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:L.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:L.converters.HeadersInit}]);UI.exports={isNetworkError:eF,makeNetworkError:Ws,makeResponse:Er,makeAppropriateNetworkError:AF,filterResponse:NI,Response:ht,cloneResponse:Nc,fromInnerResponse:un}});var xI=f((Ax,TI)=>{"use strict";var{kConnected:MI,kSize:LI}=j(),Uc=class{constructor(A){this.value=A}deref(){return this.value[MI]===0&&this.value[LI]===0?void 0:this.value}},Mc=class{constructor(A){this.finalizer=A}register(A,t){A.on&&A.on("disconnect",()=>{A[MI]===0&&A[LI]===0&&this.finalizer(t)})}unregister(A){}};TI.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Uc,FinalizationRegistry:Mc}):{WeakRef,FinalizationRegistry}}});var Qr=f((tx,XI)=>{"use strict";var{extractBody:tF,mixinBody:rF,cloneBody:nF,bodyUnusable:YI}=Wt(),{Headers:PI,fill:sF,HeadersList:zs,setHeadersGuard:Tc,getHeadersGuard:oF,setHeadersList:_I,getHeadersList:GI}=Ct(),{FinalizationRegistry:iF}=xI()(),_s=x(),JI=d("node:util"),{isValidHTTPToken:aF,sameOrigin:vI,environmentSettingsObject:Ps}=be(),{forbiddenMethodsSet:cF,corsSafeListedMethodsSet:gF,referrerPolicy:uF,requestRedirect:lF,requestMode:EF,requestCredentials:QF,requestCache:BF,requestDuplex:IF}=Tr(),{kEnumerableProperty:ae,normalizedMethodRecordsBase:CF,normalizedMethodRecords:hF}=_s,{kHeaders:Ue,kSignal:Zs,kState:X,kDispatcher:Lc}=LA(),{webidl:S}=ue(),{URLSerializer:dF}=de(),{kConstruct:Ks}=j(),fF=d("node:assert"),{getMaxListeners:HI,setMaxListeners:VI,getEventListeners:pF,defaultMaxListeners:qI}=d("node:events"),wF=Symbol("abortController"),ZI=new iF(({signal:e,abort:A})=>{e.removeEventListener("abort",A)}),Xs=new WeakMap;function OI(e){return A;function A(){let t=e.deref();if(t!==void 0){ZI.unregister(A),this.removeEventListener("abort",A),t.abort(this.reason);let r=Xs.get(t.signal);if(r!==void 0){if(r.size!==0){for(let n of r){let s=n.deref();s!==void 0&&s.abort(this.reason)}r.clear()}Xs.delete(t.signal)}}}}var WI=!1,WA=class e{constructor(A,t={}){if(S.util.markAsUncloneable(this),A===Ks)return;let r="Request constructor";S.argumentLengthCheck(arguments,1,r),A=S.converters.RequestInfo(A,r,"input"),t=S.converters.RequestInit(t,r,"init");let n=null,s=null,o=Ps.settingsObject.baseUrl,i=null;if(typeof A=="string"){this[Lc]=t.dispatcher;let B;try{B=new URL(A,o)}catch(h){throw new TypeError("Failed to parse URL from "+A,{cause:h})}if(B.username||B.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+A);n=js({urlList:[B]}),s="cors"}else this[Lc]=t.dispatcher||A[Lc],fF(A instanceof e),n=A[X],i=A[Zs];let a=Ps.settingsObject.origin,c="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&vI(n.window,a)&&(c=n.window),t.window!=null)throw new TypeError(`'window' option '${c}' must be null`);"window"in t&&(c="no-window"),n=js({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:Ps.settingsObject,window:c,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let l=Object.keys(t).length!==0;if(l&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),t.referrer!==void 0){let B=t.referrer;if(B==="")n.referrer="no-referrer";else{let h;try{h=new URL(B,o)}catch(y){throw new TypeError(`Referrer "${B}" is not a valid URL.`,{cause:y})}h.protocol==="about:"&&h.hostname==="client"||a&&!vI(h,Ps.settingsObject.baseUrl)?n.referrer="client":n.referrer=h}}t.referrerPolicy!==void 0&&(n.referrerPolicy=t.referrerPolicy);let u;if(t.mode!==void 0?u=t.mode:u=s,u==="navigate")throw S.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(u!=null&&(n.mode=u),t.credentials!==void 0&&(n.credentials=t.credentials),t.cache!==void 0&&(n.cache=t.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(t.redirect!==void 0&&(n.redirect=t.redirect),t.integrity!=null&&(n.integrity=String(t.integrity)),t.keepalive!==void 0&&(n.keepalive=!!t.keepalive),t.method!==void 0){let B=t.method,h=hF[B];if(h!==void 0)n.method=h;else{if(!aF(B))throw new TypeError(`'${B}' is not a valid HTTP method.`);let y=B.toUpperCase();if(cF.has(y))throw new TypeError(`'${B}' HTTP method is unsupported.`);B=CF[y]??B,n.method=B}!WI&&n.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),WI=!0)}t.signal!==void 0&&(i=t.signal),this[X]=n;let g=new AbortController;if(this[Zs]=g.signal,i!=null){if(!i||typeof i.aborted!="boolean"||typeof i.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(i.aborted)g.abort(i.reason);else{this[wF]=g;let B=new WeakRef(g),h=OI(B);try{(typeof HI=="function"&&HI(i)===qI||pF(i,"abort").length>=qI)&&VI(1500,i)}catch{}_s.addAbortListener(i,h),ZI.register(g,{signal:i,abort:h},h)}}if(this[Ue]=new PI(Ks),_I(this[Ue],n.headersList),Tc(this[Ue],"request"),u==="no-cors"){if(!gF.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);Tc(this[Ue],"request-no-cors")}if(l){let B=GI(this[Ue]),h=t.headers!==void 0?t.headers:new zs(B);if(B.clear(),h instanceof zs){for(let{name:y,value:m}of h.rawValues())B.append(y,m,!1);B.cookies=h.cookies}else sF(this[Ue],h)}let E=A instanceof e?A[X].body:null;if((t.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let Q=null;if(t.body!=null){let[B,h]=tF(t.body,n.keepalive);Q=B,h&&!GI(this[Ue]).contains("content-type",!0)&&this[Ue].append("content-type",h)}let I=Q??E;if(I!=null&&I.source==null){if(Q!=null&&t.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let C=I;if(Q==null&&E!=null){if(YI(A))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let B=new TransformStream;E.stream.pipeThrough(B),C={source:E.source,length:E.length,stream:B.readable}}this[X].body=C}get method(){return S.brandCheck(this,e),this[X].method}get url(){return S.brandCheck(this,e),dF(this[X].url)}get headers(){return S.brandCheck(this,e),this[Ue]}get destination(){return S.brandCheck(this,e),this[X].destination}get referrer(){return S.brandCheck(this,e),this[X].referrer==="no-referrer"?"":this[X].referrer==="client"?"about:client":this[X].referrer.toString()}get referrerPolicy(){return S.brandCheck(this,e),this[X].referrerPolicy}get mode(){return S.brandCheck(this,e),this[X].mode}get credentials(){return this[X].credentials}get cache(){return S.brandCheck(this,e),this[X].cache}get redirect(){return S.brandCheck(this,e),this[X].redirect}get integrity(){return S.brandCheck(this,e),this[X].integrity}get keepalive(){return S.brandCheck(this,e),this[X].keepalive}get isReloadNavigation(){return S.brandCheck(this,e),this[X].reloadNavigation}get isHistoryNavigation(){return S.brandCheck(this,e),this[X].historyNavigation}get signal(){return S.brandCheck(this,e),this[Zs]}get body(){return S.brandCheck(this,e),this[X].body?this[X].body.stream:null}get bodyUsed(){return S.brandCheck(this,e),!!this[X].body&&_s.isDisturbed(this[X].body.stream)}get duplex(){return S.brandCheck(this,e),"half"}clone(){if(S.brandCheck(this,e),YI(this))throw new TypeError("unusable");let A=zI(this[X]),t=new AbortController;if(this.signal.aborted)t.abort(this.signal.reason);else{let r=Xs.get(this.signal);r===void 0&&(r=new Set,Xs.set(this.signal,r));let n=new WeakRef(t);r.add(n),_s.addAbortListener(t.signal,OI(n))}return KI(A,t.signal,oF(this[Ue]))}[JI.inspect.custom](A,t){t.depth===null&&(t.depth=2),t.colors??=!0;let r={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${JI.formatWithOptions(t,r)}`}};rF(WA);function js(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new zs(e.headersList):new zs}}function zI(e){let A=js({...e,body:null});return e.body!=null&&(A.body=nF(A,e.body)),A}function KI(e,A,t){let r=new WA(Ks);return r[X]=e,r[Zs]=A,r[Ue]=new PI(Ks),_I(r[Ue],e.headersList),Tc(r[Ue],t),r}Object.defineProperties(WA.prototype,{method:ae,url:ae,headers:ae,redirect:ae,clone:ae,signal:ae,duplex:ae,destination:ae,body:ae,bodyUsed:ae,isHistoryNavigation:ae,isReloadNavigation:ae,keepalive:ae,integrity:ae,cache:ae,credentials:ae,attribute:ae,referrerPolicy:ae,referrer:ae,mode:ae,[Symbol.toStringTag]:{value:"Request",configurable:!0}});S.converters.Request=S.interfaceConverter(WA);S.converters.RequestInfo=function(e,A,t){return typeof e=="string"?S.converters.USVString(e,A,t):e instanceof WA?S.converters.Request(e,A,t):S.converters.USVString(e,A,t)};S.converters.AbortSignal=S.interfaceConverter(AbortSignal);S.converters.RequestInit=S.dictionaryConverter([{key:"method",converter:S.converters.ByteString},{key:"headers",converter:S.converters.HeadersInit},{key:"body",converter:S.nullableConverter(S.converters.BodyInit)},{key:"referrer",converter:S.converters.USVString},{key:"referrerPolicy",converter:S.converters.DOMString,allowedValues:uF},{key:"mode",converter:S.converters.DOMString,allowedValues:EF},{key:"credentials",converter:S.converters.DOMString,allowedValues:QF},{key:"cache",converter:S.converters.DOMString,allowedValues:BF},{key:"redirect",converter:S.converters.DOMString,allowedValues:lF},{key:"integrity",converter:S.converters.DOMString},{key:"keepalive",converter:S.converters.boolean},{key:"signal",converter:S.nullableConverter(e=>S.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:S.converters.any},{key:"duplex",converter:S.converters.DOMString,allowedValues:IF},{key:"dispatcher",converter:S.converters.any}]);XI.exports={Request:WA,makeRequest:js,fromInnerRequest:KI,cloneRequest:zI}});var Qn=f((rx,lC)=>{"use strict";var{makeNetworkError:O,makeAppropriateNetworkError:$s,filterResponse:xc,makeResponse:eo,fromInnerResponse:mF}=ln(),{HeadersList:jI}=Ct(),{Request:yF,cloneRequest:DF}=Qr(),PA=d("node:zlib"),{bytesMatch:bF,makePolicyContainer:kF,clonePolicyContainer:FF,requestBadPort:RF,TAOCheck:SF,appendRequestOriginHeader:NF,responseLocationURL:UF,requestCurrentURL:gA,setRequestReferrerPolicyOnRedirect:MF,tryUpgradeRequestToAPotentiallyTrustworthyURL:LF,createOpaqueTimingInfo:Hc,appendFetchMetadata:TF,corsCheck:xF,crossOriginResourcePolicyCheck:YF,determineRequestsReferrer:GF,coarsenedSharedCurrentTime:En,createDeferredPromise:JF,isBlobLike:vF,sameOrigin:vc,isCancelled:dt,isAborted:$I,isErrorLike:HF,fullyReadBody:VF,readableStreamClose:qF,isomorphicEncode:Ao,urlIsLocal:OF,urlIsHttpHttpsScheme:Vc,urlHasHttpsScheme:WF,clampAndCoarsenConnectionTimingInfo:PF,simpleRangeHeaderValue:_F,buildContentRange:ZF,createInflate:zF,extractMimeType:KF}=be(),{kState:rC,kDispatcher:XF}=LA(),ft=d("node:assert"),{safelyExtractBody:qc,extractBody:eC}=Wt(),{redirectStatusSet:nC,nullBodyStatus:sC,safeMethodsSet:jF,requestBodyHeader:$F,subresourceSet:eR}=Tr(),AR=d("node:events"),{Readable:tR,pipeline:rR,finished:nR}=d("node:stream"),{addAbortListener:sR,isErrored:oR,isReadable:to,bufferToLowerCasedHeaderName:AC}=x(),{dataURLProcessor:iR,serializeAMimeType:aR,minimizeSupportedMimeType:cR}=de(),{getGlobalDispatcher:gR}=Js(),{webidl:uR}=ue(),{STATUS_CODES:lR}=d("node:http"),ER=["GET","HEAD"],QR=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Yc,ro=class extends AR{constructor(A){super(),this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A))}abort(A){this.state==="ongoing"&&(this.state="aborted",A||(A=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A))}};function BR(e){oC(e,"fetch")}function IR(e,A=void 0){uR.argumentLengthCheck(arguments,1,"globalThis.fetch");let t=JF(),r;try{r=new yF(e,A)}catch(l){return t.reject(l),t.promise}let n=r[rC];if(r.signal.aborted)return Gc(t,n,null,r.signal.reason),t.promise;n.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(n.serviceWorkers="none");let o=null,i=!1,a=null;return sR(r.signal,()=>{i=!0,ft(a!=null),a.abort(r.signal.reason);let l=o?.deref();Gc(t,n,l,r.signal.reason)}),a=aC({request:n,processResponseEndOfBody:BR,processResponse:l=>{if(!i){if(l.aborted){Gc(t,n,o,a.serializedAbortReason);return}if(l.type==="error"){t.reject(new TypeError("fetch failed",{cause:l.error}));return}o=new WeakRef(mF(l,"immutable")),t.resolve(o.deref()),t=null}},dispatcher:r[XF]}),t.promise}function oC(e,A="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let t=e.urlList[0],r=e.timingInfo,n=e.cacheState;Vc(t)&&r!==null&&(e.timingAllowPassed||(r=Hc({startTime:r.startTime}),n=""),r.endTime=En(),e.timingInfo=r,iC(r,t.href,A,globalThis,n))}var iC=performance.markResourceTiming;function Gc(e,A,t,r){if(e&&e.reject(r),A.body!=null&&to(A.body?.stream)&&A.body.stream.cancel(r).catch(s=>{if(s.code!=="ERR_INVALID_STATE")throw s}),t==null)return;let n=t[rC];n.body!=null&&to(n.body?.stream)&&n.body.stream.cancel(r).catch(s=>{if(s.code!=="ERR_INVALID_STATE")throw s})}function aC({request:e,processRequestBodyChunkLength:A,processRequestEndOfBody:t,processResponse:r,processResponseEndOfBody:n,processResponseConsumeBody:s,useParallelQueue:o=!1,dispatcher:i=gR()}){ft(i);let a=null,c=!1;e.client!=null&&(a=e.client.globalObject,c=e.client.crossOriginIsolatedCapability);let l=En(c),u=Hc({startTime:l}),g={controller:new ro(i),request:e,timingInfo:u,processRequestBodyChunkLength:A,processRequestEndOfBody:t,processResponse:r,processResponseConsumeBody:s,processResponseEndOfBody:n,taskDestination:a,crossOriginIsolatedCapability:c};return ft(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=FF(e.client.policyContainer):e.policyContainer=kF()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,eR.has(e.destination),cC(g).catch(E=>{g.controller.terminate(E)}),g.controller}async function cC(e,A=!1){let t=e.request,r=null;if(t.localURLsOnly&&!OF(gA(t))&&(r=O("local URLs only")),LF(t),RF(t)==="blocked"&&(r=O("bad port")),t.referrerPolicy===""&&(t.referrerPolicy=t.policyContainer.referrerPolicy),t.referrer!=="no-referrer"&&(t.referrer=GF(t)),r===null&&(r=await(async()=>{let s=gA(t);return vc(s,t.url)&&t.responseTainting==="basic"||s.protocol==="data:"||t.mode==="navigate"||t.mode==="websocket"?(t.responseTainting="basic",await tC(e)):t.mode==="same-origin"?O('request mode cannot be "same-origin"'):t.mode==="no-cors"?t.redirect!=="follow"?O('redirect mode cannot be "follow" for "no-cors" request'):(t.responseTainting="opaque",await tC(e)):Vc(gA(t))?(t.responseTainting="cors",await gC(e)):O("URL scheme must be a HTTP(S) scheme")})()),A)return r;r.status!==0&&!r.internalResponse&&(t.responseTainting,t.responseTainting==="basic"?r=xc(r,"basic"):t.responseTainting==="cors"?r=xc(r,"cors"):t.responseTainting==="opaque"?r=xc(r,"opaque"):ft(!1));let n=r.status===0?r:r.internalResponse;if(n.urlList.length===0&&n.urlList.push(...t.urlList),t.timingAllowFailed||(r.timingAllowPassed=!0),r.type==="opaque"&&n.status===206&&n.rangeRequested&&!t.headers.contains("range",!0)&&(r=n=O()),r.status!==0&&(t.method==="HEAD"||t.method==="CONNECT"||sC.includes(n.status))&&(n.body=null,e.controller.dump=!0),t.integrity){let s=i=>Jc(e,O(i));if(t.responseTainting==="opaque"||r.body==null){s(r.error);return}let o=i=>{if(!bF(i,t.integrity)){s("integrity mismatch");return}r.body=qc(i)[0],Jc(e,r)};await VF(r.body,o,s)}else Jc(e,r)}function tC(e){if(dt(e)&&e.request.redirectCount===0)return Promise.resolve($s(e));let{request:A}=e,{protocol:t}=gA(A);switch(t){case"about:":return Promise.resolve(O("about scheme is not supported"));case"blob:":{Yc||(Yc=d("node:buffer").resolveObjectURL);let r=gA(A);if(r.search.length!==0)return Promise.resolve(O("NetworkError when attempting to fetch resource."));let n=Yc(r.toString());if(A.method!=="GET"||!vF(n))return Promise.resolve(O("invalid method"));let s=eo(),o=n.size,i=Ao(`${o}`),a=n.type;if(A.headersList.contains("range",!0)){s.rangeRequested=!0;let c=A.headersList.get("range",!0),l=_F(c,!0);if(l==="failure")return Promise.resolve(O("failed to fetch the data URL"));let{rangeStartValue:u,rangeEndValue:g}=l;if(u===null)u=o-g,g=u+g-1;else{if(u>=o)return Promise.resolve(O("Range start is greater than the blob's size."));(g===null||g>=o)&&(g=o-1)}let E=n.slice(u,g,a),Q=eC(E);s.body=Q[0];let I=Ao(`${E.size}`),C=ZF(u,g,o);s.status=206,s.statusText="Partial Content",s.headersList.set("content-length",I,!0),s.headersList.set("content-type",a,!0),s.headersList.set("content-range",C,!0)}else{let c=eC(n);s.statusText="OK",s.body=c[0],s.headersList.set("content-length",i,!0),s.headersList.set("content-type",a,!0)}return Promise.resolve(s)}case"data:":{let r=gA(A),n=iR(r);if(n==="failure")return Promise.resolve(O("failed to fetch the data URL"));let s=aR(n.mimeType);return Promise.resolve(eo({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:s}]],body:qc(n.body)[0]}))}case"file:":return Promise.resolve(O("not implemented... yet..."));case"http:":case"https:":return gC(e).catch(r=>O(r));default:return Promise.resolve(O("unknown scheme"))}}function CR(e,A){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(A))}function Jc(e,A){let t=e.timingInfo,r=()=>{let s=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=t),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;t.endTime=s;let i=A.cacheState,a=A.bodyInfo;A.timingAllowPassed||(t=Hc(t),i="");let c=0;if(e.request.mode!=="navigator"||!A.hasCrossOriginRedirects){c=A.status;let l=KF(A.headersList);l!=="failure"&&(a.contentType=cR(l))}e.request.initiatorType!=null&&iC(t,e.request.url.href,e.request.initiatorType,globalThis,i,a,c)};let o=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(A)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>o())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(A),e.processResponse=null});let n=A.type==="error"?A:A.internalResponse??A;n.body==null?r():nR(n.body.stream,()=>{r()})}async function gC(e){let A=e.request,t=null,r=null,n=e.timingInfo;if(A.serviceWorkers,t===null){if(A.redirect==="follow"&&(A.serviceWorkers="none"),r=t=await uC(e),A.responseTainting==="cors"&&xF(A,t)==="failure")return O("cors failure");SF(A,t)==="failure"&&(A.timingAllowFailed=!0)}return(A.responseTainting==="opaque"||t.type==="opaque")&&YF(A.origin,A.client,A.destination,r)==="blocked"?O("blocked"):(nC.has(r.status)&&(A.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),A.redirect==="error"?t=O("unexpected redirect"):A.redirect==="manual"?t=r:A.redirect==="follow"?t=await hR(e,t):ft(!1)),t.timingInfo=n,t)}function hR(e,A){let t=e.request,r=A.internalResponse?A.internalResponse:A,n;try{if(n=UF(r,gA(t).hash),n==null)return A}catch(o){return Promise.resolve(O(o))}if(!Vc(n))return Promise.resolve(O("URL scheme must be a HTTP(S) scheme"));if(t.redirectCount===20)return Promise.resolve(O("redirect count exceeded"));if(t.redirectCount+=1,t.mode==="cors"&&(n.username||n.password)&&!vc(t,n))return Promise.resolve(O('cross origin not allowed for request mode "cors"'));if(t.responseTainting==="cors"&&(n.username||n.password))return Promise.resolve(O('URL cannot contain credentials for request mode "cors"'));if(r.status!==303&&t.body!=null&&t.body.source==null)return Promise.resolve(O());if([301,302].includes(r.status)&&t.method==="POST"||r.status===303&&!ER.includes(t.method)){t.method="GET",t.body=null;for(let o of $F)t.headersList.delete(o)}vc(gA(t),n)||(t.headersList.delete("authorization",!0),t.headersList.delete("proxy-authorization",!0),t.headersList.delete("cookie",!0),t.headersList.delete("host",!0)),t.body!=null&&(ft(t.body.source!=null),t.body=qc(t.body.source)[0]);let s=e.timingInfo;return s.redirectEndTime=s.postRedirectStartTime=En(e.crossOriginIsolatedCapability),s.redirectStartTime===0&&(s.redirectStartTime=s.startTime),t.urlList.push(n),MF(t,r),cC(e,!0)}async function uC(e,A=!1,t=!1){let r=e.request,n=null,s=null,o=null,i=null,a=!1;r.window==="no-window"&&r.redirect==="error"?(n=e,s=r):(s=DF(r),n={...e},n.request=s);let c=r.credentials==="include"||r.credentials==="same-origin"&&r.responseTainting==="basic",l=s.body?s.body.length:null,u=null;if(s.body==null&&["POST","PUT"].includes(s.method)&&(u="0"),l!=null&&(u=Ao(`${l}`)),u!=null&&s.headersList.append("content-length",u,!0),l!=null&&s.keepalive,s.referrer instanceof URL&&s.headersList.append("referer",Ao(s.referrer.href),!0),NF(s),TF(s),s.headersList.contains("user-agent",!0)||s.headersList.append("user-agent",QR),s.cache==="default"&&(s.headersList.contains("if-modified-since",!0)||s.headersList.contains("if-none-match",!0)||s.headersList.contains("if-unmodified-since",!0)||s.headersList.contains("if-match",!0)||s.headersList.contains("if-range",!0))&&(s.cache="no-store"),s.cache==="no-cache"&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains("cache-control",!0)&&s.headersList.append("cache-control","max-age=0",!0),(s.cache==="no-store"||s.cache==="reload")&&(s.headersList.contains("pragma",!0)||s.headersList.append("pragma","no-cache",!0),s.headersList.contains("cache-control",!0)||s.headersList.append("cache-control","no-cache",!0)),s.headersList.contains("range",!0)&&s.headersList.append("accept-encoding","identity",!0),s.headersList.contains("accept-encoding",!0)||(WF(gA(s))?s.headersList.append("accept-encoding","br, gzip, deflate",!0):s.headersList.append("accept-encoding","gzip, deflate",!0)),s.headersList.delete("host",!0),i==null&&(s.cache="no-store"),s.cache!=="no-store"&&s.cache,o==null){if(s.cache==="only-if-cached")return O("only if cached");let g=await dR(n,c,t);!jF.has(s.method)&&g.status>=200&&g.status<=399,a&&g.status,o==null&&(o=g)}if(o.urlList=[...s.urlList],s.headersList.contains("range",!0)&&(o.rangeRequested=!0),o.requestIncludesCredentials=c,o.status===407)return r.window==="no-window"?O():dt(e)?$s(e):O("proxy authentication required");if(o.status===421&&!t&&(r.body==null||r.body.source!=null)){if(dt(e))return $s(e);e.controller.connection.destroy(),o=await uC(e,A,!0)}return o}async function dR(e,A=!1,t=!1){ft(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(Q,I=!0){this.destroyed||(this.destroyed=!0,I&&this.abort?.(Q??new DOMException("The operation was aborted.","AbortError")))}};let r=e.request,n=null,s=e.timingInfo;null==null&&(r.cache="no-store");let i=t?"yes":"no";r.mode;let a=null;if(r.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(r.body!=null){let Q=async function*(B){dt(e)||(yield B,e.processRequestBodyChunkLength?.(B.byteLength))},I=()=>{dt(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},C=B=>{dt(e)||(B.name==="AbortError"?e.controller.abort():e.controller.terminate(B))};a=(async function*(){try{for await(let B of r.body.stream)yield*Q(B);I()}catch(B){C(B)}})()}try{let{body:Q,status:I,statusText:C,headersList:B,socket:h}=await E({body:a});if(h)n=eo({status:I,statusText:C,headersList:B,socket:h});else{let y=Q[Symbol.asyncIterator]();e.controller.next=()=>y.next(),n=eo({status:I,statusText:C,headersList:B})}}catch(Q){return Q.name==="AbortError"?(e.controller.connection.destroy(),$s(e,Q)):O(Q)}let c=async()=>{await e.controller.resume()},l=Q=>{dt(e)||e.controller.abort(Q)},u=new ReadableStream({async start(Q){e.controller.controller=Q},async pull(Q){await c(Q)},async cancel(Q){await l(Q)},type:"bytes"});n.body={stream:u,source:null,length:null},e.controller.onAborted=g,e.controller.on("terminated",g),e.controller.resume=async()=>{for(;;){let Q,I;try{let{done:B,value:h}=await e.controller.next();if($I(e))break;Q=B?void 0:h}catch(B){e.controller.ended&&!s.encodedBodySize?Q=void 0:(Q=B,I=!0)}if(Q===void 0){qF(e.controller.controller),CR(e,n);return}if(s.decodedBodySize+=Q?.byteLength??0,I){e.controller.terminate(Q);return}let C=new Uint8Array(Q);if(C.byteLength&&e.controller.controller.enqueue(C),oR(u)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function g(Q){$I(e)?(n.aborted=!0,to(u)&&e.controller.controller.error(e.controller.serializedAbortReason)):to(u)&&e.controller.controller.error(new TypeError("terminated",{cause:HF(Q)?Q:void 0})),e.controller.connection.destroy()}return n;function E({body:Q}){let I=gA(r),C=e.controller.dispatcher;return new Promise((B,h)=>C.dispatch({path:I.pathname+I.search,origin:I.origin,method:r.method,body:C.isMockActive?r.body&&(r.body.source||r.body.stream):Q,headers:r.headersList.entries,maxRedirections:0,upgrade:r.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(y){let{connection:m}=e.controller;s.finalConnectionTimingInfo=PF(void 0,s.postRedirectStartTime,e.crossOriginIsolatedCapability),m.destroyed?y(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",y),this.abort=m.abort=y),s.finalNetworkRequestStartTime=En(e.crossOriginIsolatedCapability)},onResponseStarted(){s.finalNetworkResponseStartTime=En(e.crossOriginIsolatedCapability)},onHeaders(y,m,T,_){if(y<200)return;let Z="",M=new jI;for(let se=0;se<m.length;se+=2)M.append(AC(m[se]),m[se+1].toString("latin1"),!0);Z=M.get("location",!0),this.body=new tR({read:T});let V=[],De=Z&&r.redirect==="follow"&&nC.has(y);if(r.method!=="HEAD"&&r.method!=="CONNECT"&&!sC.includes(y)&&!De){let se=M.get("content-encoding",!0),xe=se?se.toLowerCase().split(","):[],QA=5;if(xe.length>QA)return h(new Error(`too many content-encodings in response: ${xe.length}, maximum allowed is ${QA}`)),!0;for(let Rt=xe.length-1;Rt>=0;--Rt){let St=xe[Rt].trim();if(St==="x-gzip"||St==="gzip")V.push(PA.createGunzip({flush:PA.constants.Z_SYNC_FLUSH,finishFlush:PA.constants.Z_SYNC_FLUSH}));else if(St==="deflate")V.push(zF({flush:PA.constants.Z_SYNC_FLUSH,finishFlush:PA.constants.Z_SYNC_FLUSH}));else if(St==="br")V.push(PA.createBrotliDecompress({flush:PA.constants.BROTLI_OPERATION_FLUSH,finishFlush:PA.constants.BROTLI_OPERATION_FLUSH}));else{V.length=0;break}}}let Be=this.onError.bind(this);return B({status:y,statusText:_,headersList:M,body:V.length?rR(this.body,...V,se=>{se&&this.onError(se)}).on("error",Be):this.body.on("error",Be)}),!0},onData(y){if(e.controller.dump)return;let m=y;return s.encodedBodySize+=m.byteLength,this.body.push(m)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(y){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(y),e.controller.terminate(y),h(y)},onUpgrade(y,m,T){if(y!==101)return;let _=new jI;for(let Z=0;Z<m.length;Z+=2)_.append(AC(m[Z]),m[Z+1].toString("latin1"),!0);return B({status:y,statusText:lR[y],headersList:_,socket:T}),!0}}))}}lC.exports={fetch:IR,Fetch:ro,fetching:aC,finalizeAndReportTiming:oC}});var Oc=f((nx,EC)=>{"use strict";EC.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var BC=f((sx,QC)=>{"use strict";var{webidl:Me}=ue(),no=Symbol("ProgressEvent state"),Wc=class e extends Event{constructor(A,t={}){A=Me.converters.DOMString(A,"ProgressEvent constructor","type"),t=Me.converters.ProgressEventInit(t??{}),super(A,t),this[no]={lengthComputable:t.lengthComputable,loaded:t.loaded,total:t.total}}get lengthComputable(){return Me.brandCheck(this,e),this[no].lengthComputable}get loaded(){return Me.brandCheck(this,e),this[no].loaded}get total(){return Me.brandCheck(this,e),this[no].total}};Me.converters.ProgressEventInit=Me.dictionaryConverter([{key:"lengthComputable",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:Me.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:Me.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Me.converters.boolean,defaultValue:()=>!1}]);QC.exports={ProgressEvent:Wc}});var CC=f((ox,IC)=>{"use strict";function fR(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}IC.exports={getEncoding:fR}});var DC=f((ix,yC)=>{"use strict";var{kState:Br,kError:Pc,kResult:hC,kAborted:Bn,kLastProgressEventFired:_c}=Oc(),{ProgressEvent:pR}=BC(),{getEncoding:dC}=CC(),{serializeAMimeType:wR,parseMIMEType:fC}=de(),{types:mR}=d("node:util"),{StringDecoder:pC}=d("string_decoder"),{btoa:wC}=d("node:buffer"),yR={enumerable:!0,writable:!1,configurable:!1};function DR(e,A,t,r){if(e[Br]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Br]="loading",e[hC]=null,e[Pc]=null;let s=A.stream().getReader(),o=[],i=s.read(),a=!0;(async()=>{for(;!e[Bn];)try{let{done:c,value:l}=await i;if(a&&!e[Bn]&&queueMicrotask(()=>{_A("loadstart",e)}),a=!1,!c&&mR.isUint8Array(l))o.push(l),(e[_c]===void 0||Date.now()-e[_c]>=50)&&!e[Bn]&&(e[_c]=Date.now(),queueMicrotask(()=>{_A("progress",e)})),i=s.read();else if(c){queueMicrotask(()=>{e[Br]="done";try{let u=bR(o,t,A.type,r);if(e[Bn])return;e[hC]=u,_A("load",e)}catch(u){e[Pc]=u,_A("error",e)}e[Br]!=="loading"&&_A("loadend",e)});break}}catch(c){if(e[Bn])return;queueMicrotask(()=>{e[Br]="done",e[Pc]=c,_A("error",e),e[Br]!=="loading"&&_A("loadend",e)});break}})()}function _A(e,A){let t=new pR(e,{bubbles:!1,cancelable:!1});A.dispatchEvent(t)}function bR(e,A,t,r){switch(A){case"DataURL":{let n="data:",s=fC(t||"application/octet-stream");s!=="failure"&&(n+=wR(s)),n+=";base64,";let o=new pC("latin1");for(let i of e)n+=wC(o.write(i));return n+=wC(o.end()),n}case"Text":{let n="failure";if(r&&(n=dC(r)),n==="failure"&&t){let s=fC(t);s!=="failure"&&(n=dC(s.parameters.get("charset")))}return n==="failure"&&(n="UTF-8"),kR(e,n)}case"ArrayBuffer":return mC(e).buffer;case"BinaryString":{let n="",s=new pC("latin1");for(let o of e)n+=s.write(o);return n+=s.end(),n}}}function kR(e,A){let t=mC(e),r=FR(t),n=0;r!==null&&(A=r,n=r==="UTF-8"?3:2);let s=t.slice(n);return new TextDecoder(A).decode(s)}function FR(e){let[A,t,r]=e;return A===239&&t===187&&r===191?"UTF-8":A===254&&t===255?"UTF-16BE":A===255&&t===254?"UTF-16LE":null}function mC(e){let A=e.reduce((r,n)=>r+n.byteLength,0),t=0;return e.reduce((r,n)=>(r.set(n,t),t+=n.byteLength,r),new Uint8Array(A))}yC.exports={staticPropertyDescriptors:yR,readOperation:DR,fireAProgressEvent:_A}});var RC=f((ax,FC)=>{"use strict";var{staticPropertyDescriptors:Ir,readOperation:so,fireAProgressEvent:bC}=DC(),{kState:pt,kError:kC,kResult:oo,kEvents:H,kAborted:RR}=Oc(),{webidl:P}=ue(),{kEnumerableProperty:we}=x(),Xe=class e extends EventTarget{constructor(){super(),this[pt]="empty",this[oo]=null,this[kC]=null,this[H]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"ArrayBuffer")}readAsBinaryString(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"BinaryString")}readAsText(A,t=void 0){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsText"),A=P.converters.Blob(A,{strict:!1}),t!==void 0&&(t=P.converters.DOMString(t,"FileReader.readAsText","encoding")),so(this,A,"Text",t)}readAsDataURL(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"DataURL")}abort(){if(this[pt]==="empty"||this[pt]==="done"){this[oo]=null;return}this[pt]==="loading"&&(this[pt]="done",this[oo]=null),this[RR]=!0,bC("abort",this),this[pt]!=="loading"&&bC("loadend",this)}get readyState(){switch(P.brandCheck(this,e),this[pt]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return P.brandCheck(this,e),this[oo]}get error(){return P.brandCheck(this,e),this[kC]}get onloadend(){return P.brandCheck(this,e),this[H].loadend}set onloadend(A){P.brandCheck(this,e),this[H].loadend&&this.removeEventListener("loadend",this[H].loadend),typeof A=="function"?(this[H].loadend=A,this.addEventListener("loadend",A)):this[H].loadend=null}get onerror(){return P.brandCheck(this,e),this[H].error}set onerror(A){P.brandCheck(this,e),this[H].error&&this.removeEventListener("error",this[H].error),typeof A=="function"?(this[H].error=A,this.addEventListener("error",A)):this[H].error=null}get onloadstart(){return P.brandCheck(this,e),this[H].loadstart}set onloadstart(A){P.brandCheck(this,e),this[H].loadstart&&this.removeEventListener("loadstart",this[H].loadstart),typeof A=="function"?(this[H].loadstart=A,this.addEventListener("loadstart",A)):this[H].loadstart=null}get onprogress(){return P.brandCheck(this,e),this[H].progress}set onprogress(A){P.brandCheck(this,e),this[H].progress&&this.removeEventListener("progress",this[H].progress),typeof A=="function"?(this[H].progress=A,this.addEventListener("progress",A)):this[H].progress=null}get onload(){return P.brandCheck(this,e),this[H].load}set onload(A){P.brandCheck(this,e),this[H].load&&this.removeEventListener("load",this[H].load),typeof A=="function"?(this[H].load=A,this.addEventListener("load",A)):this[H].load=null}get onabort(){return P.brandCheck(this,e),this[H].abort}set onabort(A){P.brandCheck(this,e),this[H].abort&&this.removeEventListener("abort",this[H].abort),typeof A=="function"?(this[H].abort=A,this.addEventListener("abort",A)):this[H].abort=null}};Xe.EMPTY=Xe.prototype.EMPTY=0;Xe.LOADING=Xe.prototype.LOADING=1;Xe.DONE=Xe.prototype.DONE=2;Object.defineProperties(Xe.prototype,{EMPTY:Ir,LOADING:Ir,DONE:Ir,readAsArrayBuffer:we,readAsBinaryString:we,readAsText:we,readAsDataURL:we,abort:we,readyState:we,result:we,error:we,onloadstart:we,onprogress:we,onload:we,onabort:we,onerror:we,onloadend:we,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(Xe,{EMPTY:Ir,LOADING:Ir,DONE:Ir});FC.exports={FileReader:Xe}});var io=f((cx,SC)=>{"use strict";SC.exports={kConstruct:j().kConstruct}});var MC=f((gx,UC)=>{"use strict";var SR=d("node:assert"),{URLSerializer:NC}=de(),{isValidHeaderName:NR}=be();function UR(e,A,t=!1){let r=NC(e,t),n=NC(A,t);return r===n}function MR(e){SR(e!==null);let A=[];for(let t of e.split(","))t=t.trim(),NR(t)&&A.push(t);return A}UC.exports={urlEquals:UR,getFieldValues:MR}});var xC=f((ux,TC)=>{"use strict";var{kConstruct:LR}=io(),{urlEquals:TR,getFieldValues:Zc}=MC(),{kEnumerableProperty:wt,isDisturbed:xR}=x(),{webidl:b}=ue(),{Response:YR,cloneResponse:GR,fromInnerResponse:JR}=ln(),{Request:bA,fromInnerRequest:vR}=Qr(),{kState:je}=LA(),{fetching:HR}=Qn(),{urlIsHttpHttpsScheme:ao,createDeferredPromise:Cr,readAllBytes:VR}=be(),zc=d("node:assert"),co=class e{#e;constructor(){arguments[0]!==LR&&b.illegalConstructor(),b.util.markAsUncloneable(this),this.#e=arguments[1]}async match(A,t={}){b.brandCheck(this,e);let r="Cache.match";b.argumentLengthCheck(arguments,1,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.CacheQueryOptions(t,r,"options");let n=this.#n(A,t,1);if(n.length!==0)return n[0]}async matchAll(A=void 0,t={}){b.brandCheck(this,e);let r="Cache.matchAll";return A!==void 0&&(A=b.converters.RequestInfo(A,r,"request")),t=b.converters.CacheQueryOptions(t,r,"options"),this.#n(A,t)}async add(A){b.brandCheck(this,e);let t="Cache.add";b.argumentLengthCheck(arguments,1,t),A=b.converters.RequestInfo(A,t,"request");let r=[A];return await this.addAll(r)}async addAll(A){b.brandCheck(this,e);let t="Cache.addAll";b.argumentLengthCheck(arguments,1,t);let r=[],n=[];for(let g of A){if(g===void 0)throw b.errors.conversionFailed({prefix:t,argument:"Argument 1",types:["undefined is not allowed"]});if(g=b.converters.RequestInfo(g),typeof g=="string")continue;let E=g[je];if(!ao(E.url)||E.method!=="GET")throw b.errors.exception({header:t,message:"Expected http/s scheme when method is not GET."})}let s=[];for(let g of A){let E=new bA(g)[je];if(!ao(E.url))throw b.errors.exception({header:t,message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let Q=Cr();s.push(HR({request:E,processResponse(I){if(I.type==="error"||I.status===206||I.status<200||I.status>299)Q.reject(b.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(I.headersList.contains("vary")){let C=Zc(I.headersList.get("vary"));for(let B of C)if(B==="*"){Q.reject(b.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let h of s)h.abort();return}}},processResponseEndOfBody(I){if(I.aborted){Q.reject(new DOMException("aborted","AbortError"));return}Q.resolve(I)}})),r.push(Q.promise)}let i=await Promise.all(r),a=[],c=0;for(let g of i){let E={type:"put",request:n[c],response:g};a.push(E),c++}let l=Cr(),u=null;try{this.#A(a)}catch(g){u=g}return queueMicrotask(()=>{u===null?l.resolve(void 0):l.reject(u)}),l.promise}async put(A,t){b.brandCheck(this,e);let r="Cache.put";b.argumentLengthCheck(arguments,2,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.Response(t,r,"response");let n=null;if(A instanceof bA?n=A[je]:n=new bA(A)[je],!ao(n.url)||n.method!=="GET")throw b.errors.exception({header:r,message:"Expected an http/s scheme when method is not GET"});let s=t[je];if(s.status===206)throw b.errors.exception({header:r,message:"Got 206 status"});if(s.headersList.contains("vary")){let E=Zc(s.headersList.get("vary"));for(let Q of E)if(Q==="*")throw b.errors.exception({header:r,message:"Got * vary field value"})}if(s.body&&(xR(s.body.stream)||s.body.stream.locked))throw b.errors.exception({header:r,message:"Response body is locked or disturbed"});let o=GR(s),i=Cr();if(s.body!=null){let Q=s.body.stream.getReader();VR(Q).then(i.resolve,i.reject)}else i.resolve(void 0);let a=[],c={type:"put",request:n,response:o};a.push(c);let l=await i.promise;o.body!=null&&(o.body.source=l);let u=Cr(),g=null;try{this.#A(a)}catch(E){g=E}return queueMicrotask(()=>{g===null?u.resolve():u.reject(g)}),u.promise}async delete(A,t={}){b.brandCheck(this,e);let r="Cache.delete";b.argumentLengthCheck(arguments,1,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.CacheQueryOptions(t,r,"options");let n=null;if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return!1}else zc(typeof A=="string"),n=new bA(A)[je];let s=[],o={type:"delete",request:n,options:t};s.push(o);let i=Cr(),a=null,c;try{c=this.#A(s)}catch(l){a=l}return queueMicrotask(()=>{a===null?i.resolve(!!c?.length):i.reject(a)}),i.promise}async keys(A=void 0,t={}){b.brandCheck(this,e);let r="Cache.keys";A!==void 0&&(A=b.converters.RequestInfo(A,r,"request")),t=b.converters.CacheQueryOptions(t,r,"options");let n=null;if(A!==void 0)if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return[]}else typeof A=="string"&&(n=new bA(A)[je]);let s=Cr(),o=[];if(A===void 0)for(let i of this.#e)o.push(i[0]);else{let i=this.#t(n,t);for(let a of i)o.push(a[0])}return queueMicrotask(()=>{let i=[];for(let a of o){let c=vR(a,new AbortController().signal,"immutable");i.push(c)}s.resolve(Object.freeze(i))}),s.promise}#A(A){let t=this.#e,r=[...t],n=[],s=[];try{for(let o of A){if(o.type!=="delete"&&o.type!=="put")throw b.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(o.type==="delete"&&o.response!=null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#t(o.request,o.options,n).length)throw new DOMException("???","InvalidStateError");let i;if(o.type==="delete"){if(i=this.#t(o.request,o.options),i.length===0)return[];for(let a of i){let c=t.indexOf(a);zc(c!==-1),t.splice(c,1)}}else if(o.type==="put"){if(o.response==null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let a=o.request;if(!ao(a.url))throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(a.method!=="GET")throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(o.options!=null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});i=this.#t(o.request);for(let c of i){let l=t.indexOf(c);zc(l!==-1),t.splice(l,1)}t.push([o.request,o.response]),n.push([o.request,o.response])}s.push([o.request,o.response])}return s}catch(o){throw this.#e.length=0,this.#e=r,o}}#t(A,t,r){let n=[],s=r??this.#e;for(let o of s){let[i,a]=o;this.#s(A,i,a,t)&&n.push(o)}return n}#s(A,t,r=null,n){let s=new URL(A.url),o=new URL(t.url);if(n?.ignoreSearch&&(o.search="",s.search=""),!TR(s,o,!0))return!1;if(r==null||n?.ignoreVary||!r.headersList.contains("vary"))return!0;let i=Zc(r.headersList.get("vary"));for(let a of i){if(a==="*")return!1;let c=t.headersList.get(a),l=A.headersList.get(a);if(c!==l)return!1}return!0}#n(A,t,r=1/0){let n=null;if(A!==void 0)if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return[]}else typeof A=="string"&&(n=new bA(A)[je]);let s=[];if(A===void 0)for(let i of this.#e)s.push(i[1]);else{let i=this.#t(n,t);for(let a of i)s.push(a[1])}let o=[];for(let i of s){let a=JR(i,"immutable");if(o.push(a.clone()),o.length>=r)break}return Object.freeze(o)}};Object.defineProperties(co.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:wt,matchAll:wt,add:wt,addAll:wt,put:wt,delete:wt,keys:wt});var LC=[{key:"ignoreSearch",converter:b.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:b.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:b.converters.boolean,defaultValue:()=>!1}];b.converters.CacheQueryOptions=b.dictionaryConverter(LC);b.converters.MultiCacheQueryOptions=b.dictionaryConverter([...LC,{key:"cacheName",converter:b.converters.DOMString}]);b.converters.Response=b.interfaceConverter(YR);b.converters["sequence<RequestInfo>"]=b.sequenceConverter(b.converters.RequestInfo);TC.exports={Cache:co}});var GC=f((lx,YC)=>{"use strict";var{kConstruct:In}=io(),{Cache:go}=xC(),{webidl:Qe}=ue(),{kEnumerableProperty:Cn}=x(),uo=class e{#e=new Map;constructor(){arguments[0]!==In&&Qe.illegalConstructor(),Qe.util.markAsUncloneable(this)}async match(A,t={}){if(Qe.brandCheck(this,e),Qe.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=Qe.converters.RequestInfo(A),t=Qe.converters.MultiCacheQueryOptions(t),t.cacheName!=null){if(this.#e.has(t.cacheName)){let r=this.#e.get(t.cacheName);return await new go(In,r).match(A,t)}}else for(let r of this.#e.values()){let s=await new go(In,r).match(A,t);if(s!==void 0)return s}}async has(A){Qe.brandCheck(this,e);let t="CacheStorage.has";return Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.has(A)}async open(A){Qe.brandCheck(this,e);let t="CacheStorage.open";if(Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.has(A)){let n=this.#e.get(A);return new go(In,n)}let r=[];return this.#e.set(A,r),new go(In,r)}async delete(A){Qe.brandCheck(this,e);let t="CacheStorage.delete";return Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.delete(A)}async keys(){return Qe.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(uo.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:Cn,has:Cn,open:Cn,delete:Cn,keys:Cn});YC.exports={CacheStorage:uo}});var vC=f((Ex,JC)=>{"use strict";JC.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var jc=f((Qx,OC)=>{"use strict";function qR(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t>=0&&t<=8||t>=10&&t<=31||t===127)return!0}return!1}function Kc(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<33||t>126||t===34||t===40||t===41||t===60||t===62||t===64||t===44||t===59||t===58||t===92||t===47||t===91||t===93||t===63||t===61||t===123||t===125)throw new Error("Invalid cookie name")}}function Xc(e){let A=e.length,t=0;if(e[0]==='"'){if(A===1||e[A-1]!=='"')throw new Error("Invalid cookie value");--A,++t}for(;t<A;){let r=e.charCodeAt(t++);if(r<33||r>126||r===34||r===44||r===59||r===92)throw new Error("Invalid cookie value")}}function VC(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<32||t>126||t===59)throw new Error("Invalid cookie path")}}function HC(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function OR(e){if(e===" ")return;if(e.length>255)throw new Error("Invalid cookie domain");let A=0;for(let t=0;t<e.length;++t){let r=e.charCodeAt(t);if(r===46){if(A===0)throw new Error("Invalid cookie domain");if(e.charCodeAt(t-1)===45)throw new Error("Invalid cookie domain");A=0;continue}if(A===0&&!HC(r))throw new Error("Invalid cookie domain");if(!HC(r)&&r!==45)throw new Error("Invalid cookie domain");if(++A>63)throw new Error("Invalid cookie domain")}if(A===0||e.charCodeAt(e.length-1)===45)throw new Error("Invalid cookie domain")}var WR=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],PR=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],lo=Array(61).fill(0).map((e,A)=>A.toString().padStart(2,"0"));function qC(e){return typeof e=="number"&&(e=new Date(e)),`${WR[e.getUTCDay()]}, ${lo[e.getUTCDate()]} ${PR[e.getUTCMonth()]} ${e.getUTCFullYear()} ${lo[e.getUTCHours()]}:${lo[e.getUTCMinutes()]}:${lo[e.getUTCSeconds()]} GMT`}function _R(e){if(e<0)throw new Error("Invalid cookie max-age")}function ZR(e){if(e.name.length===0)return null;Kc(e.name),Xc(e.value);let A=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&A.push("Secure"),e.httpOnly&&A.push("HttpOnly"),typeof e.maxAge=="number"&&(_R(e.maxAge),A.push(`Max-Age=${e.maxAge}`)),e.domain&&(OR(e.domain),A.push(`Domain=${e.domain}`)),e.path&&(VC(e.path),A.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&A.push(`Expires=${qC(e.expires)}`),e.sameSite&&A.push(`SameSite=${e.sameSite}`);for(let t of e.unparsed){if(!t.includes("="))throw new Error("Invalid unparsed");let[r,...n]=t.split("="),s=r.trim(),o=n.join("=");Kc(s),Xc(o),A.push(`${s}=${o}`)}return A.join("; ")}OC.exports={isCTLExcludingHtab:qR,validateCookieName:Kc,validateCookiePath:VC,validateCookieValue:Xc,toIMFDate:qC,stringify:ZR}});var PC=f((Bx,WC)=>{"use strict";var{maxNameValuePairSize:zR,maxAttributeValueSize:KR}=vC(),{isCTLExcludingHtab:XR}=jc(),{collectASequenceOfCodePointsFast:Eo}=de(),jR=d("node:assert");function $R(e){if(XR(e))return null;let A="",t="",r="",n="";if(e.includes(";")){let s={position:0};A=Eo(";",e,s),t=e.slice(s.position)}else A=e;if(!A.includes("="))n=A;else{let s={position:0};r=Eo("=",A,s),n=A.slice(s.position+1)}return r=r.trim(),n=n.trim(),r.length+n.length>zR?null:{name:r,value:n,...hr(t)}}function hr(e,A={}){if(e.length===0)return A;jR(e[0]===";"),e=e.slice(1);let t="";e.includes(";")?(t=Eo(";",e,{position:0}),e=e.slice(t.length)):(t=e,e="");let r="",n="";if(t.includes("=")){let o={position:0};r=Eo("=",t,o),n=t.slice(o.position+1)}else r=t;if(r=r.trim(),n=n.trim(),n.length>KR)return hr(e,A);let s=r.toLowerCase();if(s==="expires"){let o=new Date(n);A.expires=o}else if(s==="max-age"){let o=n.charCodeAt(0);if((o<48||o>57)&&n[0]!=="-"||!/^\d+$/.test(n))return hr(e,A);let i=Number(n);A.maxAge=i}else if(s==="domain"){let o=n;o[0]==="."&&(o=o.slice(1)),o=o.toLowerCase(),A.domain=o}else if(s==="path"){let o="";n.length===0||n[0]!=="/"?o="/":o=n,A.path=o}else if(s==="secure")A.secure=!0;else if(s==="httponly")A.httpOnly=!0;else if(s==="samesite"){let o=n.toLowerCase();o==="none"?A.sameSite="None":o==="strict"?A.sameSite="Strict":o==="lax"&&(A.sameSite="Lax")}else A.unparsed??=[],A.unparsed.push(`${r}=${n}`);return hr(e,A)}WC.exports={parseSetCookie:$R,parseUnparsedAttributes:hr}});var zC=f((Ix,ZC)=>{"use strict";var{parseSetCookie:eS}=PC(),{stringify:AS}=jc(),{webidl:G}=ue(),{Headers:Qo}=Ct();function tS(e){G.argumentLengthCheck(arguments,1,"getCookies"),G.brandCheck(e,Qo,{strict:!1});let A=e.get("cookie"),t={};if(!A)return t;for(let r of A.split(";")){let[n,...s]=r.split("=");t[n.trim()]=s.join("=")}return t}function rS(e,A,t){G.brandCheck(e,Qo,{strict:!1});let r="deleteCookie";G.argumentLengthCheck(arguments,2,r),A=G.converters.DOMString(A,r,"name"),t=G.converters.DeleteCookieAttributes(t),_C(e,{name:A,value:"",expires:new Date(0),...t})}function nS(e){G.argumentLengthCheck(arguments,1,"getSetCookies"),G.brandCheck(e,Qo,{strict:!1});let A=e.getSetCookie();return A?A.map(t=>eS(t)):[]}function _C(e,A){G.argumentLengthCheck(arguments,2,"setCookie"),G.brandCheck(e,Qo,{strict:!1}),A=G.converters.Cookie(A);let t=AS(A);t&&e.append("Set-Cookie",t)}G.converters.DeleteCookieAttributes=G.dictionaryConverter([{converter:G.nullableConverter(G.converters.DOMString),key:"path",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"domain",defaultValue:()=>null}]);G.converters.Cookie=G.dictionaryConverter([{converter:G.converters.DOMString,key:"name"},{converter:G.converters.DOMString,key:"value"},{converter:G.nullableConverter(e=>typeof e=="number"?G.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:G.nullableConverter(G.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"path",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.boolean),key:"secure",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:G.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:G.sequenceConverter(G.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);ZC.exports={getCookies:tS,deleteCookie:rS,getSetCookies:nS,setCookie:_C}});var fr=f((Cx,XC)=>{"use strict";var{webidl:D}=ue(),{kEnumerableProperty:me}=x(),{kConstruct:KC}=j(),{MessagePort:sS}=d("node:worker_threads"),dr=class e extends Event{#e;constructor(A,t={}){if(A===KC){super(arguments[1],arguments[2]),D.util.markAsUncloneable(this);return}let r="MessageEvent constructor";D.argumentLengthCheck(arguments,1,r),A=D.converters.DOMString(A,r,"type"),t=D.converters.MessageEventInit(t,r,"eventInitDict"),super(A,t),this.#e=t,D.util.markAsUncloneable(this)}get data(){return D.brandCheck(this,e),this.#e.data}get origin(){return D.brandCheck(this,e),this.#e.origin}get lastEventId(){return D.brandCheck(this,e),this.#e.lastEventId}get source(){return D.brandCheck(this,e),this.#e.source}get ports(){return D.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(A,t=!1,r=!1,n=null,s="",o="",i=null,a=[]){return D.brandCheck(this,e),D.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(A,{bubbles:t,cancelable:r,data:n,origin:s,lastEventId:o,source:i,ports:a})}static createFastMessageEvent(A,t){let r=new e(KC,A,t);return r.#e=t,r.#e.data??=null,r.#e.origin??="",r.#e.lastEventId??="",r.#e.source??=null,r.#e.ports??=[],r}},{createFastMessageEvent:oS}=dr;delete dr.createFastMessageEvent;var Bo=class e extends Event{#e;constructor(A,t={}){let r="CloseEvent constructor";D.argumentLengthCheck(arguments,1,r),A=D.converters.DOMString(A,r,"type"),t=D.converters.CloseEventInit(t),super(A,t),this.#e=t,D.util.markAsUncloneable(this)}get wasClean(){return D.brandCheck(this,e),this.#e.wasClean}get code(){return D.brandCheck(this,e),this.#e.code}get reason(){return D.brandCheck(this,e),this.#e.reason}},Io=class e extends Event{#e;constructor(A,t){let r="ErrorEvent constructor";D.argumentLengthCheck(arguments,1,r),super(A,t),D.util.markAsUncloneable(this),A=D.converters.DOMString(A,r,"type"),t=D.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return D.brandCheck(this,e),this.#e.message}get filename(){return D.brandCheck(this,e),this.#e.filename}get lineno(){return D.brandCheck(this,e),this.#e.lineno}get colno(){return D.brandCheck(this,e),this.#e.colno}get error(){return D.brandCheck(this,e),this.#e.error}};Object.defineProperties(dr.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:me,origin:me,lastEventId:me,source:me,ports:me,initMessageEvent:me});Object.defineProperties(Bo.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:me,code:me,wasClean:me});Object.defineProperties(Io.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:me,filename:me,lineno:me,colno:me,error:me});D.converters.MessagePort=D.interfaceConverter(sS);D.converters["sequence<MessagePort>"]=D.sequenceConverter(D.converters.MessagePort);var $c=[{key:"bubbles",converter:D.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:D.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:D.converters.boolean,defaultValue:()=>!1}];D.converters.MessageEventInit=D.dictionaryConverter([...$c,{key:"data",converter:D.converters.any,defaultValue:()=>null},{key:"origin",converter:D.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:D.converters.DOMString,defaultValue:()=>""},{key:"source",converter:D.nullableConverter(D.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:D.converters["sequence<MessagePort>"],defaultValue:()=>new Array(0)}]);D.converters.CloseEventInit=D.dictionaryConverter([...$c,{key:"wasClean",converter:D.converters.boolean,defaultValue:()=>!1},{key:"code",converter:D.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:D.converters.USVString,defaultValue:()=>""}]);D.converters.ErrorEventInit=D.dictionaryConverter([...$c,{key:"message",converter:D.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:D.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:D.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:D.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:D.converters.any}]);XC.exports={MessageEvent:dr,CloseEvent:Bo,ErrorEvent:Io,createFastMessageEvent:oS}});var mt=f((hx,jC)=>{"use strict";var iS="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",aS={enumerable:!0,writable:!1,configurable:!1},cS={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},gS={NOT_SENT:0,PROCESSING:1,SENT:2},uS={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},lS=2**16-1,ES={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},QS=Buffer.allocUnsafe(0),BS={string:1,typedArray:2,arrayBuffer:3,blob:4};jC.exports={uid:iS,sentCloseFrameState:gS,staticPropertyDescriptors:aS,states:cS,opcodes:uS,maxUnsigned16Bit:lS,parserStates:ES,emptyBuffer:QS,sendHints:BS}});var hn=f((dx,$C)=>{"use strict";$C.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var pn=f((fx,ah)=>{"use strict";var{kReadyState:dn,kController:IS,kResponse:CS,kBinaryType:hS,kWebSocketURL:dS}=hn(),{states:fn,opcodes:ZA}=mt(),{ErrorEvent:fS,createFastMessageEvent:pS}=fr(),{isUtf8:wS}=d("node:buffer"),{collectASequenceOfCodePointsFast:mS,removeHTTPWhitespace:eh}=de();function yS(e){return e[dn]===fn.CONNECTING}function DS(e){return e[dn]===fn.OPEN}function bS(e){return e[dn]===fn.CLOSING}function kS(e){return e[dn]===fn.CLOSED}function eg(e,A,t=(n,s)=>new Event(n,s),r={}){let n=t(e,r);A.dispatchEvent(n)}function FS(e,A,t){if(e[dn]!==fn.OPEN)return;let r;if(A===ZA.TEXT)try{r=ih(t)}catch{th(e,"Received invalid UTF-8 in text frame.");return}else A===ZA.BINARY&&(e[hS]==="blob"?r=new Blob([t]):r=RS(t));eg("message",e,pS,{origin:e[dS].origin,data:r})}function RS(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function SS(e){if(e.length===0)return!1;for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<33||t>126||t===34||t===40||t===41||t===44||t===47||t===58||t===59||t===60||t===61||t===62||t===63||t===64||t===91||t===92||t===93||t===123||t===125)return!1}return!0}function NS(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function th(e,A){let{[IS]:t,[CS]:r}=e;t.abort(),r?.socket&&!r.socket.destroyed&&r.socket.destroy(),A&&eg("error",e,(n,s)=>new fS(n,s),{error:new Error(A),message:A})}function rh(e){return e===ZA.CLOSE||e===ZA.PING||e===ZA.PONG}function nh(e){return e===ZA.CONTINUATION}function sh(e){return e===ZA.TEXT||e===ZA.BINARY}function US(e){return sh(e)||nh(e)||rh(e)}function MS(e){let A={position:0},t=new Map;for(;A.position<e.length;){let r=mS(";",e,A),[n,s=""]=r.split("=");t.set(eh(n,!0,!1),eh(s,!1,!0)),A.position++}return t}function LS(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let r=e.charCodeAt(t);if(r<48||r>57)return!1}let A=Number.parseInt(e,10);return A>=8&&A<=15}var oh=typeof process.versions.icu=="string",Ah=oh?new TextDecoder("utf-8",{fatal:!0}):void 0,ih=oh?Ah.decode.bind(Ah):function(e){if(wS(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};ah.exports={isConnecting:yS,isEstablished:DS,isClosing:bS,isClosed:kS,fireEvent:eg,isValidSubprotocol:SS,isValidStatusCode:NS,failWebsocketConnection:th,websocketMessageReceived:FS,utf8Decode:ih,isControlFrame:rh,isContinuationFrame:nh,isTextBinaryFrame:sh,isValidOpcode:US,parseExtensions:MS,isValidClientWindowBits:LS}});var ho=f((px,ch)=>{"use strict";var{maxUnsigned16Bit:TS}=mt(),Co=16386,Ag,wn=null,pr=Co;try{Ag=d("node:crypto")}catch{Ag={randomFillSync:function(A,t,r){for(let n=0;n<A.length;++n)A[n]=Math.random()*255|0;return A}}}function xS(){return pr===Co&&(pr=0,Ag.randomFillSync(wn??=Buffer.allocUnsafe(Co),0,Co)),[wn[pr++],wn[pr++],wn[pr++],wn[pr++]]}var tg=class{constructor(A){this.frameData=A}createFrame(A){let t=this.frameData,r=xS(),n=t?.byteLength??0,s=n,o=6;n>TS?(o+=8,s=127):n>125&&(o+=2,s=126);let i=Buffer.allocUnsafe(n+o);i[0]=i[1]=0,i[0]|=128,i[0]=(i[0]&240)+A;i[o-4]=r[0],i[o-3]=r[1],i[o-2]=r[2],i[o-1]=r[3],i[1]=s,s===126?i.writeUInt16BE(n,2):s===127&&(i[2]=i[3]=0,i.writeUIntBE(n,4,6)),i[1]|=128;for(let a=0;a<n;++a)i[o+a]=t[a]^r[a&3];return i}};ch.exports={WebsocketFrameSend:tg}});var ng=f((wx,Ih)=>{"use strict";var{uid:YS,states:mn,sentCloseFrameState:fo,emptyBuffer:GS,opcodes:JS}=mt(),{kReadyState:yn,kSentClose:po,kByteParser:uh,kReceivedClose:gh,kResponse:lh}=hn(),{fireEvent:vS,failWebsocketConnection:zA,isClosing:HS,isClosed:VS,isEstablished:qS,parseExtensions:OS}=pn(),{channels:wr}=Ut(),{CloseEvent:WS}=fr(),{makeRequest:PS}=Qr(),{fetching:_S}=Qn(),{Headers:ZS,getHeadersList:zS}=Ct(),{getDecodeSplit:KS}=be(),{WebsocketFrameSend:XS}=ho(),rg;try{rg=d("node:crypto")}catch{}function jS(e,A,t,r,n,s){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let i=PS({urlList:[o],client:t,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(s.headers){let u=zS(new ZS(s.headers));i.headersList=u}let a=rg.randomBytes(16).toString("base64");i.headersList.append("sec-websocket-key",a),i.headersList.append("sec-websocket-version","13");for(let u of A)i.headersList.append("sec-websocket-protocol",u);return i.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),_S({request:i,useParallelQueue:!0,dispatcher:s.dispatcher,processResponse(u){if(u.type==="error"||u.status!==101){zA(r,"Received network error or non-101 status code.");return}if(A.length!==0&&!u.headersList.get("Sec-WebSocket-Protocol")){zA(r,"Server did not respond with sent protocols.");return}if(u.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){zA(r,'Server did not set Upgrade header to "websocket".');return}if(u.headersList.get("Connection")?.toLowerCase()!=="upgrade"){zA(r,'Server did not set Connection header to "upgrade".');return}let g=u.headersList.get("Sec-WebSocket-Accept"),E=rg.createHash("sha1").update(a+YS).digest("base64");if(g!==E){zA(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let Q=u.headersList.get("Sec-WebSocket-Extensions"),I;if(Q!==null&&(I=OS(Q),!I.has("permessage-deflate"))){zA(r,"Sec-WebSocket-Extensions header does not match.");return}let C=u.headersList.get("Sec-WebSocket-Protocol");if(C!==null&&!KS("sec-websocket-protocol",i.headersList).includes(C)){zA(r,"Protocol was not set in the opening handshake.");return}u.socket.on("data",Eh),u.socket.on("close",Qh),u.socket.on("error",Bh),wr.open.hasSubscribers&&wr.open.publish({address:u.socket.address(),protocol:C,extensions:Q}),n(u,I)}})}function $S(e,A,t,r){if(!(HS(e)||VS(e)))if(!qS(e))zA(e,"Connection was closed before it was established."),e[yn]=mn.CLOSING;else if(e[po]===fo.NOT_SENT){e[po]=fo.PROCESSING;let n=new XS;A!==void 0&&t===void 0?(n.frameData=Buffer.allocUnsafe(2),n.frameData.writeUInt16BE(A,0)):A!==void 0&&t!==void 0?(n.frameData=Buffer.allocUnsafe(2+r),n.frameData.writeUInt16BE(A,0),n.frameData.write(t,2,"utf-8")):n.frameData=GS,e[lh].socket.write(n.createFrame(JS.CLOSE)),e[po]=fo.SENT,e[yn]=mn.CLOSING}else e[yn]=mn.CLOSING}function Eh(e){this.ws[uh].write(e)||this.pause()}function Qh(){let{ws:e}=this,{[lh]:A}=e;A.socket.off("data",Eh),A.socket.off("close",Qh),A.socket.off("error",Bh);let t=e[po]===fo.SENT&&e[gh],r=1005,n="",s=e[uh].closingInfo;s&&!s.error?(r=s.code??1005,n=s.reason):e[gh]||(r=1006),e[yn]=mn.CLOSED,vS("close",e,(o,i)=>new WS(o,i),{wasClean:t,code:r,reason:n}),wr.close.hasSubscribers&&wr.close.publish({websocket:e,code:r,reason:n})}function Bh(e){let{ws:A}=this;A[yn]=mn.CLOSING,wr.socketError.hasSubscribers&&wr.socketError.publish(e),this.destroy()}Ih.exports={establishWebSocketConnection:jS,closeWebSocketConnection:$S}});var hh=f((mx,Ch)=>{"use strict";var{createInflateRaw:eN,Z_DEFAULT_WINDOWBITS:AN}=d("node:zlib"),{isValidClientWindowBits:tN}=pn(),{MessageSizeExceededError:rN}=v(),nN=Buffer.from([0,0,255,255]),wo=Symbol("kBuffer"),Dn=Symbol("kLength"),sg=class{#e;#A={};#t=0;constructor(A,t){this.#A.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#A.serverMaxWindowBits=A.get("server_max_window_bits"),this.#t=t.maxPayloadSize}decompress(A,t,r){if(!this.#e){let n=AN;if(this.#A.serverMaxWindowBits){if(!tN(this.#A.serverMaxWindowBits)){r(new Error("Invalid server_max_window_bits"));return}n=Number.parseInt(this.#A.serverMaxWindowBits)}try{this.#e=eN({windowBits:n})}catch(s){r(s);return}this.#e[wo]=[],this.#e[Dn]=0,this.#e.on("data",s=>{if(this.#e[Dn]+=s.length,this.#t>0&&this.#e[Dn]>this.#t){r(new rN),this.#e.removeAllListeners(),this.#e=null;return}this.#e[wo].push(s)}),this.#e.on("error",s=>{this.#e=null,r(s)})}this.#e.write(A),t&&this.#e.write(nN),this.#e.flush(()=>{if(!this.#e)return;let n=Buffer.concat(this.#e[wo],this.#e[Dn]);this.#e[wo].length=0,this.#e[Dn]=0,r(null,n)})}};Ch.exports={PerMessageDeflate:sg}});var Fh=f((yx,kh)=>{"use strict";var{Writable:sN}=d("node:stream"),oN=d("node:assert"),{parserStates:ye,opcodes:mr,states:iN,emptyBuffer:dh,sentCloseFrameState:fh}=mt(),{kReadyState:aN,kSentClose:ph,kResponse:wh,kReceivedClose:mh}=hn(),{channels:mo}=Ut(),{isValidStatusCode:cN,isValidOpcode:gN,failWebsocketConnection:Le,websocketMessageReceived:yh,utf8Decode:uN,isControlFrame:og,isTextBinaryFrame:ig,isContinuationFrame:lN}=pn(),{WebsocketFrameSend:Dh}=ho(),{closeWebSocketConnection:bh}=ng(),{PerMessageDeflate:EN}=hh(),{MessageSizeExceededError:ag}=v();function bn(e,A,t){bh(e,A,t,Buffer.byteLength(t)),Le(e,t)}var cg=class extends sN{#e=[];#A=0;#t=0;#s=!1;#n=ye.INFO;#r={};#o=[];#i;#c;#a;constructor(A,t,r={}){super(),this.ws=A,this.#i=t??new Map,this.#c=r.maxFragments??0,this.#a=r.maxPayloadSize??0,this.#i.has("permessage-deflate")&&this.#i.set("permessage-deflate",new EN(t,r))}_write(A,t,r){this.#e.push(A),this.#t+=A.length,this.#s=!0,this.run(r)}#g(){return this.#a>0&&!og(this.#r.opcode)&&this.#r.payloadLength+this.#A>this.#a?(bn(this.ws,1009,"Payload size exceeds maximum allowed size"),!1):!0}run(A){for(;this.#s;)if(this.#n===ye.INFO){if(this.#t<2)return A();let t=this.consume(2),r=(t[0]&128)!==0,n=t[0]&15,s=(t[1]&128)===128,o=!r&&n!==mr.CONTINUATION,i=t[1]&127,a=t[0]&64,c=t[0]&32,l=t[0]&16;if(!gN(n))return Le(this.ws,"Invalid opcode received"),A();if(s)return Le(this.ws,"Frame cannot be masked"),A();if(a!==0&&!this.#i.has("permessage-deflate")){Le(this.ws,"Expected RSV1 to be clear.");return}if(c!==0||l!==0){Le(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(o&&!ig(n)){Le(this.ws,"Invalid frame type was fragmented.");return}if(ig(n)&&this.#o.length>0){Le(this.ws,"Expected continuation frame");return}if(this.#r.fragmented&&o){Le(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((i>125||o)&&og(n)){Le(this.ws,"Control frame either too large or fragmented");return}if(lN(n)&&this.#o.length===0&&!this.#r.compressed){Le(this.ws,"Unexpected continuation frame");return}if(i<=125){if(this.#r.payloadLength=i,this.#n=ye.READ_DATA,!this.#g())return}else i===126?this.#n=ye.PAYLOADLENGTH_16:i===127&&(this.#n=ye.PAYLOADLENGTH_64);ig(n)&&(this.#r.binaryType=n,this.#r.compressed=a!==0),this.#r.opcode=n,this.#r.masked=s,this.#r.fin=r,this.#r.fragmented=o}else if(this.#n===ye.PAYLOADLENGTH_16){if(this.#t<2)return A();let t=this.consume(2);if(this.#r.payloadLength=t.readUInt16BE(0),this.#n=ye.READ_DATA,!this.#g())return}else if(this.#n===ye.PAYLOADLENGTH_64){if(this.#t<8)return A();let t=this.consume(8),r=t.readUInt32BE(0),n=t.readUInt32BE(4);if(r!==0||n>2**31-1){Le(this.ws,"Received payload length > 2^31 bytes.");return}if(this.#r.payloadLength=n,this.#n=ye.READ_DATA,!this.#g())return}else if(this.#n===ye.READ_DATA){if(this.#t<this.#r.payloadLength)return A();let t=this.consume(this.#r.payloadLength);if(og(this.#r.opcode))this.#s=this.parseControlFrame(t),this.#n=ye.INFO;else if(this.#r.compressed){this.#i.get("permessage-deflate").decompress(t,this.#r.fin,(r,n)=>{if(r){let s=r instanceof ag?1009:1007;bn(this.ws,s,r.message);return}if(this.writeFragments(n)){if(this.#a>0&&this.#A>this.#a){bn(this.ws,1009,new ag().message);return}if(!this.#r.fin){this.#n=ye.INFO,this.#s=!0,this.run(A);return}yh(this.ws,this.#r.binaryType,this.consumeFragments()),this.#s=!0,this.#n=ye.INFO,this.run(A)}}),this.#s=!1;break}else{if(!this.writeFragments(t))return;if(this.#a>0&&this.#A>this.#a){bn(this.ws,1009,new ag().message);return}!this.#r.fragmented&&this.#r.fin&&yh(this.ws,this.#r.binaryType,this.consumeFragments()),this.#n=ye.INFO}}}consume(A){if(A>this.#t)throw new Error("Called consume() before buffers satiated.");if(A===0)return dh;if(this.#e[0].length===A)return this.#t-=this.#e[0].length,this.#e.shift();let t=Buffer.allocUnsafe(A),r=0;for(;r!==A;){let n=this.#e[0],{length:s}=n;if(s+r===A){t.set(this.#e.shift(),r);break}else if(s+r>A){t.set(n.subarray(0,A-r),r),this.#e[0]=n.subarray(A-r);break}else t.set(this.#e.shift(),r),r+=n.length}return this.#t-=A,t}writeFragments(A){return this.#c>0&&this.#o.length===this.#c?(bn(this.ws,1008,"Too many message fragments"),!1):(this.#A+=A.length,this.#o.push(A),!0)}consumeFragments(){let A=this.#o;if(A.length===1)return this.#A=0,A.shift();let t=Buffer.concat(A,this.#A);return this.#o=[],this.#A=0,t}parseCloseBody(A){oN(A.length!==1);let t;if(A.length>=2&&(t=A.readUInt16BE(0)),t!==void 0&&!cN(t))return{code:1002,reason:"Invalid status code",error:!0};let r=A.subarray(2);r[0]===239&&r[1]===187&&r[2]===191&&(r=r.subarray(3));try{r=uN(r)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:t,reason:r,error:!1}}parseControlFrame(A){let{opcode:t,payloadLength:r}=this.#r;if(t===mr.CLOSE){if(r===1)return Le(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#r.closeInfo=this.parseCloseBody(A),this.#r.closeInfo.error){let{code:n,reason:s}=this.#r.closeInfo;return bh(this.ws,n,s,s.length),Le(this.ws,s),!1}if(this.ws[ph]!==fh.SENT){let n=dh;this.#r.closeInfo.code&&(n=Buffer.allocUnsafe(2),n.writeUInt16BE(this.#r.closeInfo.code,0));let s=new Dh(n);this.ws[wh].socket.write(s.createFrame(mr.CLOSE),o=>{o||(this.ws[ph]=fh.SENT)})}return this.ws[aN]=iN.CLOSING,this.ws[mh]=!0,!1}else if(t===mr.PING){if(!this.ws[mh]){let n=new Dh(A);this.ws[wh].socket.write(n.createFrame(mr.PONG)),mo.ping.hasSubscribers&&mo.ping.publish({payload:A})}}else t===mr.PONG&&mo.pong.hasSubscribers&&mo.pong.publish({payload:A});return!0}get closingInfo(){return this.#r.closeInfo}};kh.exports={ByteParser:cg}});var Mh=f((Dx,Uh)=>{"use strict";var{WebsocketFrameSend:QN}=ho(),{opcodes:Rh,sendHints:yr}=mt(),BN=Ba(),Sh=Buffer[Symbol.species],gg=class{#e=new BN;#A=!1;#t;constructor(A){this.#t=A}add(A,t,r){if(r!==yr.blob){let s=Nh(A,r);if(!this.#A)this.#t.write(s,t);else{let o={promise:null,callback:t,frame:s};this.#e.push(o)}return}let n={promise:A.arrayBuffer().then(s=>{n.promise=null,n.frame=Nh(s,r)}),callback:t,frame:null};this.#e.push(n),this.#A||this.#s()}async#s(){this.#A=!0;let A=this.#e;for(;!A.isEmpty();){let t=A.shift();t.promise!==null&&await t.promise,this.#t.write(t.frame,t.callback),t.callback=t.frame=null}this.#A=!1}};function Nh(e,A){return new QN(IN(e,A)).createFrame(A===yr.string?Rh.TEXT:Rh.BINARY)}function IN(e,A){switch(A){case yr.string:return Buffer.from(e);case yr.arrayBuffer:case yr.blob:return new Sh(e);case yr.typedArray:return new Sh(e.buffer,e.byteOffset,e.byteLength)}}Uh.exports={SendQueue:gg}});var qh=f((bx,Vh)=>{"use strict";var{webidl:U}=ue(),{URLSerializer:CN}=de(),{environmentSettingsObject:Lh}=be(),{staticPropertyDescriptors:KA,states:kn,sentCloseFrameState:hN,sendHints:yo}=mt(),{kWebSocketURL:Th,kReadyState:ug,kController:xh,kBinaryType:Do,kResponse:Yh,kSentClose:dN,kByteParser:fN}=hn(),{isConnecting:pN,isEstablished:wN,isClosing:mN,isValidSubprotocol:yN,fireEvent:Gh}=pn(),{establishWebSocketConnection:DN,closeWebSocketConnection:Jh}=ng(),{ByteParser:bN}=Fh(),{kEnumerableProperty:Ve,isBlobLike:vh}=x(),{getGlobalDispatcher:kN}=Js(),{types:Hh}=d("node:util"),{ErrorEvent:FN,CloseEvent:RN}=fr(),{SendQueue:SN}=Mh(),Te=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#A=0;#t="";#s="";#n;constructor(A,t=[]){super(),U.util.markAsUncloneable(this);let r="WebSocket constructor";U.argumentLengthCheck(arguments,1,r);let n=U.converters["DOMString or sequence<DOMString> or WebSocketInit"](t,r,"options");A=U.converters.USVString(A,r,"url"),t=n.protocols;let s=Lh.settingsObject.baseUrl,o;try{o=new URL(A,s)}catch(a){throw new DOMException(a,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof t=="string"&&(t=[t]),t.length!==new Set(t.map(a=>a.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(t.length>0&&!t.every(a=>yN(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[Th]=new URL(o.href);let i=Lh.settingsObject;this[xh]=DN(o,t,i,this,(a,c)=>this.#r(a,c),n),this[ug]=e.CONNECTING,this[dN]=hN.NOT_SENT,this[Do]="blob"}close(A=void 0,t=void 0){U.brandCheck(this,e);let r="WebSocket.close";if(A!==void 0&&(A=U.converters["unsigned short"](A,r,"code",{clamp:!0})),t!==void 0&&(t=U.converters.USVString(t,r,"reason")),A!==void 0&&A!==1e3&&(A<3e3||A>4999))throw new DOMException("invalid code","InvalidAccessError");let n=0;if(t!==void 0&&(n=Buffer.byteLength(t),n>123))throw new DOMException(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");Jh(this,A,t,n)}send(A){U.brandCheck(this,e);let t="WebSocket.send";if(U.argumentLengthCheck(arguments,1,t),A=U.converters.WebSocketSendData(A,t,"data"),pN(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!wN(this)||mN(this)))if(typeof A=="string"){let r=Buffer.byteLength(A);this.#A+=r,this.#n.add(A,()=>{this.#A-=r},yo.string)}else Hh.isArrayBuffer(A)?(this.#A+=A.byteLength,this.#n.add(A,()=>{this.#A-=A.byteLength},yo.arrayBuffer)):ArrayBuffer.isView(A)?(this.#A+=A.byteLength,this.#n.add(A,()=>{this.#A-=A.byteLength},yo.typedArray)):vh(A)&&(this.#A+=A.size,this.#n.add(A,()=>{this.#A-=A.size},yo.blob))}get readyState(){return U.brandCheck(this,e),this[ug]}get bufferedAmount(){return U.brandCheck(this,e),this.#A}get url(){return U.brandCheck(this,e),CN(this[Th])}get extensions(){return U.brandCheck(this,e),this.#s}get protocol(){return U.brandCheck(this,e),this.#t}get onopen(){return U.brandCheck(this,e),this.#e.open}set onopen(A){U.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof A=="function"?(this.#e.open=A,this.addEventListener("open",A)):this.#e.open=null}get onerror(){return U.brandCheck(this,e),this.#e.error}set onerror(A){U.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof A=="function"?(this.#e.error=A,this.addEventListener("error",A)):this.#e.error=null}get onclose(){return U.brandCheck(this,e),this.#e.close}set onclose(A){U.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof A=="function"?(this.#e.close=A,this.addEventListener("close",A)):this.#e.close=null}get onmessage(){return U.brandCheck(this,e),this.#e.message}set onmessage(A){U.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof A=="function"?(this.#e.message=A,this.addEventListener("message",A)):this.#e.message=null}get binaryType(){return U.brandCheck(this,e),this[Do]}set binaryType(A){U.brandCheck(this,e),A!=="blob"&&A!=="arraybuffer"?this[Do]="blob":this[Do]=A}#r(A,t){this[Yh]=A;let r=this[xh]?.dispatcher?.webSocketOptions,n=r?.maxFragments,s=r?.maxPayloadSize,o=new bN(this,t,{maxFragments:n,maxPayloadSize:s});o.on("drain",NN),o.on("error",UN.bind(this)),A.socket.ws=this,this[fN]=o,this.#n=new SN(A.socket),this[ug]=kn.OPEN;let i=A.headersList.get("sec-websocket-extensions");i!==null&&(this.#s=i);let a=A.headersList.get("sec-websocket-protocol");a!==null&&(this.#t=a),Gh("open",this)}};Te.CONNECTING=Te.prototype.CONNECTING=kn.CONNECTING;Te.OPEN=Te.prototype.OPEN=kn.OPEN;Te.CLOSING=Te.prototype.CLOSING=kn.CLOSING;Te.CLOSED=Te.prototype.CLOSED=kn.CLOSED;Object.defineProperties(Te.prototype,{CONNECTING:KA,OPEN:KA,CLOSING:KA,CLOSED:KA,url:Ve,readyState:Ve,bufferedAmount:Ve,onopen:Ve,onerror:Ve,onclose:Ve,close:Ve,onmessage:Ve,binaryType:Ve,send:Ve,extensions:Ve,protocol:Ve,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(Te,{CONNECTING:KA,OPEN:KA,CLOSING:KA,CLOSED:KA});U.converters["sequence<DOMString>"]=U.sequenceConverter(U.converters.DOMString);U.converters["DOMString or sequence<DOMString>"]=function(e,A,t){return U.util.Type(e)==="Object"&&Symbol.iterator in e?U.converters["sequence<DOMString>"](e):U.converters.DOMString(e,A,t)};U.converters.WebSocketInit=U.dictionaryConverter([{key:"protocols",converter:U.converters["DOMString or sequence<DOMString>"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:U.converters.any,defaultValue:()=>kN()},{key:"headers",converter:U.nullableConverter(U.converters.HeadersInit)}]);U.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(e){return U.util.Type(e)==="Object"&&!(Symbol.iterator in e)?U.converters.WebSocketInit(e):{protocols:U.converters["DOMString or sequence<DOMString>"](e)}};U.converters.WebSocketSendData=function(e){if(U.util.Type(e)==="Object"){if(vh(e))return U.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Hh.isArrayBuffer(e))return U.converters.BufferSource(e)}return U.converters.USVString(e)};function NN(){this.ws[Yh].socket.resume()}function UN(e){let A,t;e instanceof RN?(A=e.reason,t=e.code):A=e.message,Gh("error",this,()=>new FN("error",{error:e,message:A})),Jh(this,t)}Vh.exports={WebSocket:Te}});var lg=f((kx,Oh)=>{"use strict";function MN(e){return e.indexOf("\0")===-1}function LN(e){if(e.length===0)return!1;for(let A=0;A<e.length;A++)if(e.charCodeAt(A)<48||e.charCodeAt(A)>57)return!1;return!0}function TN(e){return new Promise(A=>{setTimeout(A,e).unref()})}Oh.exports={isValidLastEventId:MN,isASCIINumber:LN,delay:TN}});var Zh=f((Fx,_h)=>{"use strict";var{Transform:xN}=d("node:stream"),{isASCIINumber:Wh,isValidLastEventId:Ph}=lg(),kA=[239,187,191],Eg=10,bo=13,YN=58,GN=32,Qg=class extends xN{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0,super(A),this.state=A.eventSourceSettings||{},A.push&&(this.push=A.push)}_transform(A,t,r){if(A.length===0){r();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,A]):this.buffer=A,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===kA[0]){r();return}this.checkBOM=!1,r();return;case 2:if(this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]){r();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]&&this.buffer[2]===kA[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,r();return}this.checkBOM=!1;break;default:this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]&&this.buffer[2]===kA[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos<this.buffer.length;){if(this.eventEndCheck){if(this.crlfCheck){if(this.buffer[this.pos]===Eg){this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.crlfCheck=!1;continue}this.crlfCheck=!1}if(this.buffer[this.pos]===Eg||this.buffer[this.pos]===bo){this.buffer[this.pos]===bo&&(this.crlfCheck=!0),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,(this.event.data!==void 0||this.event.event||this.event.id||this.event.retry)&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(this.buffer[this.pos]===Eg||this.buffer[this.pos]===bo){this.buffer[this.pos]===bo&&(this.crlfCheck=!0),this.parseLine(this.buffer.subarray(0,this.pos),this.event),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.eventEndCheck=!0;continue}this.pos++}r()}parseLine(A,t){if(A.length===0)return;let r=A.indexOf(YN);if(r===0)return;let n="",s="";if(r!==-1){n=A.subarray(0,r).toString("utf8");let o=r+1;A[o]===GN&&++o,s=A.subarray(o).toString("utf8")}else n=A.toString("utf8"),s="";switch(n){case"data":t[n]===void 0?t[n]=s:t[n]+=`
45
- ${s}`;break;case"retry":Wh(s)&&(t[n]=s);break;case"id":Ph(s)&&(t[n]=s);break;case"event":s.length>0&&(t[n]=s);break}}processEvent(A){A.retry&&Wh(A.retry)&&(this.state.reconnectionTime=parseInt(A.retry,10)),A.id&&Ph(A.id)&&(this.state.lastEventId=A.id),A.data!==void 0&&this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};_h.exports={EventSourceStream:Qg}});var td=f((Rx,Ad)=>{"use strict";var{pipeline:JN}=d("node:stream"),{fetching:vN}=Qn(),{makeRequest:HN}=Qr(),{webidl:FA}=ue(),{EventSourceStream:VN}=Zh(),{parseMIMEType:qN}=de(),{createFastMessageEvent:ON}=fr(),{isNetworkError:zh}=ln(),{delay:WN}=lg(),{kEnumerableProperty:yt}=x(),{environmentSettingsObject:Kh}=be(),Xh=!1,jh=3e3,Fn=0,$h=1,Rn=2,PN="anonymous",_N="use-credentials",Dr=class e extends EventTarget{#e={open:null,error:null,message:null};#A=null;#t=!1;#s=Fn;#n=null;#r=null;#o;#i;constructor(A,t={}){super(),FA.util.markAsUncloneable(this);let r="EventSource constructor";FA.argumentLengthCheck(arguments,1,r),Xh||(Xh=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),A=FA.converters.USVString(A,r,"url"),t=FA.converters.EventSourceInitDict(t,r,"eventSourceInitDict"),this.#o=t.dispatcher,this.#i={lastEventId:"",reconnectionTime:jh};let n=Kh,s;try{s=new URL(A,n.settingsObject.baseUrl),this.#i.origin=s.origin}catch(a){throw new DOMException(a,"SyntaxError")}this.#A=s.href;let o=PN;t.withCredentials&&(o=_N,this.#t=!0);let i={redirect:"follow",keepalive:!0,mode:"cors",credentials:o==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};i.client=Kh.settingsObject,i.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],i.cache="no-store",i.initiator="other",i.urlList=[new URL(this.#A)],this.#n=HN(i),this.#c()}get readyState(){return this.#s}get url(){return this.#A}get withCredentials(){return this.#t}#c(){if(this.#s===Rn)return;this.#s=Fn;let A={request:this.#n,dispatcher:this.#o},t=r=>{zh(r)&&(this.dispatchEvent(new Event("error")),this.close()),this.#a()};A.processResponseEndOfBody=t,A.processResponse=r=>{if(zh(r))if(r.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#a();return}let n=r.headersList.get("content-type",!0),s=n!==null?qN(n):"failure",o=s!=="failure"&&s.essence==="text/event-stream";if(r.status!==200||o===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#s=$h,this.dispatchEvent(new Event("open")),this.#i.origin=r.urlList[r.urlList.length-1].origin;let i=new VN({eventSourceSettings:this.#i,push:a=>{this.dispatchEvent(ON(a.type,a.options))}});JN(r.body.stream,i,a=>{a?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#r=vN(A)}async#a(){this.#s!==Rn&&(this.#s=Fn,this.dispatchEvent(new Event("error")),await WN(this.#i.reconnectionTime),this.#s===Fn&&(this.#i.lastEventId.length&&this.#n.headersList.set("last-event-id",this.#i.lastEventId,!0),this.#c()))}close(){FA.brandCheck(this,e),this.#s!==Rn&&(this.#s=Rn,this.#r.abort(),this.#n=null)}get onopen(){return this.#e.open}set onopen(A){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof A=="function"?(this.#e.open=A,this.addEventListener("open",A)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(A){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof A=="function"?(this.#e.message=A,this.addEventListener("message",A)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(A){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof A=="function"?(this.#e.error=A,this.addEventListener("error",A)):this.#e.error=null}},ed={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:Fn,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:$h,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:Rn,writable:!1}};Object.defineProperties(Dr,ed);Object.defineProperties(Dr.prototype,ed);Object.defineProperties(Dr.prototype,{close:yt,onerror:yt,onmessage:yt,onopen:yt,readyState:yt,url:yt,withCredentials:yt});FA.converters.EventSourceInitDict=FA.dictionaryConverter([{key:"withCredentials",converter:FA.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:FA.converters.any}]);Ad.exports={EventSource:Dr,defaultReconnectionTime:jh}});var od=f((Sx,N)=>{"use strict";var ZN=jt(),rd=Ur(),zN=$t(),KN=eQ(),XN=er(),jN=Ta(),$N=yQ(),eU=NQ(),nd=v(),Fo=x(),{InvalidArgumentError:ko}=nd,br=CB(),AU=Lr(),tU=Ic(),rU=$B(),nU=dc(),sU=rc(),oU=Rs(),{getGlobalDispatcher:sd,setGlobalDispatcher:iU}=Js(),aU=vs(),cU=hs(),gU=ds();Object.assign(rd.prototype,br);N.exports.Dispatcher=rd;N.exports.Client=ZN;N.exports.Pool=zN;N.exports.BalancedPool=KN;N.exports.Agent=XN;N.exports.ProxyAgent=jN;N.exports.EnvHttpProxyAgent=$N;N.exports.RetryAgent=eU;N.exports.RetryHandler=oU;N.exports.DecoratorHandler=aU;N.exports.RedirectHandler=cU;N.exports.createRedirectInterceptor=gU;N.exports.interceptors={redirect:oI(),retry:aI(),dump:gI(),dns:EI()};N.exports.buildConnector=AU;N.exports.errors=nd;N.exports.util={parseHeaders:Fo.parseHeaders,headerNameToString:Fo.headerNameToString};function Sn(e){return(A,t,r)=>{if(typeof t=="function"&&(r=t,t=null),!A||typeof A!="string"&&typeof A!="object"&&!(A instanceof URL))throw new ko("invalid url");if(t!=null&&typeof t!="object")throw new ko("invalid opts");if(t&&t.path!=null){if(typeof t.path!="string")throw new ko("invalid opts.path");let o=t.path;t.path.startsWith("/")||(o=`/${o}`),A=new URL(Fo.parseOrigin(A).origin+o)}else t||(t=typeof A=="object"?A:{}),A=Fo.parseURL(A);let{agent:n,dispatcher:s=sd()}=t;if(n)throw new ko("unsupported opts.agent. Did you mean opts.client?");return e.call(s,{...t,origin:A.origin,path:A.search?`${A.pathname}${A.search}`:A.pathname,method:t.method||(t.body?"PUT":"GET")},r)}}N.exports.setGlobalDispatcher=iU;N.exports.getGlobalDispatcher=sd;var uU=Qn().fetch;N.exports.fetch=async function(A,t=void 0){try{return await uU(A,t)}catch(r){throw r&&typeof r=="object"&&Error.captureStackTrace(r),r}};N.exports.Headers=Ct().Headers;N.exports.Response=ln().Response;N.exports.Request=Qr().Request;N.exports.FormData=Hr().FormData;N.exports.File=globalThis.File??d("node:buffer").File;N.exports.FileReader=RC().FileReader;var{setGlobalOrigin:lU,getGlobalOrigin:EU}=xi();N.exports.setGlobalOrigin=lU;N.exports.getGlobalOrigin=EU;var{CacheStorage:QU}=GC(),{kConstruct:BU}=io();N.exports.caches=new QU(BU);var{deleteCookie:IU,getCookies:CU,getSetCookies:hU,setCookie:dU}=zC();N.exports.deleteCookie=IU;N.exports.getCookies=CU;N.exports.getSetCookies=hU;N.exports.setCookie=dU;var{parseMIMEType:fU,serializeAMimeType:pU}=de();N.exports.parseMIMEType=fU;N.exports.serializeAMimeType=pU;var{CloseEvent:wU,ErrorEvent:mU,MessageEvent:yU}=fr();N.exports.WebSocket=qh().WebSocket;N.exports.CloseEvent=wU;N.exports.ErrorEvent=mU;N.exports.MessageEvent=yU;N.exports.request=Sn(br.request);N.exports.stream=Sn(br.stream);N.exports.pipeline=Sn(br.pipeline);N.exports.connect=Sn(br.connect);N.exports.upgrade=Sn(br.upgrade);N.exports.MockClient=tU;N.exports.MockPool=nU;N.exports.MockAgent=rU;N.exports.mockErrors=sU;var{EventSource:DU}=td();N.exports.EventSource=DU});import kr from"node:net";import bU from"node:dns";function Ro(e){let A=String(e).toLowerCase().split("%")[0];if((A.match(/::/g)||[]).length>1)return null;let t=l=>{if(!l)return[];let u=l.split(":"),g=u.at(-1);if(g?.includes(".")){let E=g.split(".").map(Number);if(E.length!==4||E.some(Q=>!Number.isInteger(Q)||Q<0||Q>255))return null;u.splice(u.length-1,1,(E[0]<<8|E[1]).toString(16),(E[2]<<8|E[3]).toString(16))}return u.some(E=>!/^[0-9a-f]{1,4}$/.test(E))?null:u.map(E=>Number.parseInt(E,16))},[r,n]=A.split("::"),s=t(r),o=t(n);if(!s||!o)return null;let i=A.includes("::"),a=8-s.length-o.length;if(!i&&a!==0||i&&a<1)return null;let c=[...s,...Array(Math.max(0,a)).fill(0),...o];return c.length!==8?null:Uint8Array.from(c.flatMap(l=>[l>>8,l&255]))}function Bg(e,A,t){let r=Math.floor(t/8),n=t%8;for(let o=0;o<r;o+=1)if(e[o]!==A[o])return!1;if(!n)return!0;let s=255<<8-n;return(e[r]&s)===(A[r]&s)}function Ig(e){if(kr.isIPv4(e)){let A=e.split(".").map(Number);return!(A[0]===0||A[0]===10||A[0]===127||A[0]>=224||A[0]===100&&A[1]>=64&&A[1]<=127||A[0]===169&&A[1]===254||A[0]===172&&A[1]>=16&&A[1]<=31||A[0]===192&&(A[1]===0||A[1]===2||A[1]===168)||A[0]===192&&A[1]===88&&A[2]===99||A[0]===198&&(A[1]===18||A[1]===19||A[1]===51)||A[0]===203&&A[1]===0&&A[2]===113)}if(kr.isIPv6(e)){let A=Ro(e);if(!A)return!1;let t=Ro("::ffff:0:0");return Bg(A,t,96)?Ig([...A.slice(12)].join(".")):Bg(A,Ro("2000::"),3)?![["2001::",23],["2001:db8::",32],["2001:10::",28],["2001:2::",48],["2002::",16],["3fff::",20]].some(([n,s])=>Bg(A,Ro(n),s)):!1}return!1}function FU(e){let A;try{A=new URL(String(e))}catch{return{ok:!1,error:`not a valid URL: ${String(e).slice(0,120)}`}}if(A.protocol!=="http:"&&A.protocol!=="https:")return{ok:!1,error:`refused protocol ${A.protocol} (only http/https)`};let t=A.hostname.toLowerCase().replace(/^\[|\]$/g,"").replace(/\.+$/,"");if(kU.has(t)||t.endsWith(".localhost")||t.endsWith(".internal"))return{ok:!1,error:`refused internal host ${t}`};let r=kr.isIP(t);return r!==0&&!Ig(t)?{ok:!1,error:`refused private address ${t}`}:{ok:!0,url:A,host:t,isLiteralIp:r!==0}}async function id(e,{lookupFn:A=bU.promises.lookup}={}){let t=FU(e);if(!t.ok)return t;if(t.isLiteralIp)return{ok:!0,url:t.url};let r;try{r=await A(t.host,{all:!0,verbatim:!0})}catch{return{ok:!1,error:`refused: ${t.host} did not resolve`}}return!Array.isArray(r)||r.length===0||r.some(n=>!Ig(n.address))?{ok:!1,error:`refused: ${t.host} resolves to a non-public address`}:{ok:!0,url:t.url,addresses:r}}async function ad(){let e,A;try{let i=await Promise.resolve().then(()=>df(od(),1));e=i.Agent,A=i.fetch}catch{return null}if(typeof e!="function"||typeof A!="function")return null;let t=i=>String(i).toLowerCase().replace(/^\[|\]$/g,"").replace(/\.+$/,""),r=new Map,n=i=>(Array.isArray(i)?i:[i]).map(a=>typeof a=="string"?{address:a}:a).filter(a=>a&&a.address).map(a=>({address:a.address,family:a.family||(kr.isIPv6(a.address)?6:4)})),s=i=>{let a=t(i);if(kr.isIP(a))return[{address:a,family:kr.isIPv6(a)?6:4}];let c=r.get(a);if(!c||!c.length)throw new Error(`refused: unpinned host ${i} during pinned fetch`);return c},o=new e({connect:{lookup(i,a,c){let l;try{l=s(i)}catch(u){return c(u)}return a?.all?c(null,l):c(null,l[0].address,l[0].family)}}});return{dispatcher:o,fetch:(i,a={})=>A(i,{...a,dispatcher:o}),pin(i,a,c){r.set(t(i),n(typeof a=="string"?[{address:a,family:c}]:a))},resolve:s,async close(){try{await o.destroy()}catch{}}}}var kU,cd=MA(()=>{kU=new Set(["localhost","metadata.google.internal","metadata.goog"])});import{createHash as RU}from"node:crypto";function MU(e){let A=String(e||"").toLowerCase();return Ed.includes(A)||/(^|-)(api[-_]?key|key|token|secret|auth|authorization|session|cookie|signature|access)(-|$)/.test(A)}function LU(e){let A={};for(let[t,r]of Object.entries(e||{}))MU(t)||(A[t]=r);return A}function TU(e,A){if(!e)throw new Error(`HTTP redirect from ${A} missing Location`);let t=new URL(String(e),String(A));if(t.protocol!=="http:"&&t.protocol!=="https:")throw new Error(`HTTP redirect from ${A} used unsupported protocol ${t.protocol}`);return t.toString()}function xU(e,A){return new URL(String(e)).origin===new URL(String(A)).origin}function YU(e,A,t){let r={};for(let[a,c]of Object.entries(t||{}))r[a.toLowerCase()]=c;let n=Object.keys(r).filter(a=>/(^|-)(api[-_]?key|key|token|secret|auth|authorization|session|cookie|signature|access)(-|$)/.test(a)),o=[...new Set([...Ed,...n])].sort().map(a=>`${a}=${r[a]??""}`).join(`
46
- `),i=RU("sha256").update(o).digest("hex").slice(0,32);return`${e} ${A} ${i}`}function GU(e,A){let t=Number(A);return Number.isFinite(t)&&t>0?Math.min(t*1e3,ud):Math.min(250*2**e,ud)+Math.floor(Math.random()*100)}async function vU(e,{fetchImpl:A,method:t,headers:r,body:n,timeoutMs:s,lookupFn:o,realFetch:i}){let a=new AbortController,c=setTimeout(()=>a.abort(),s),l=null,u=A;try{let g=String(e),E={...r||{}};for(let Q=0;Q<=ld;Q+=1){let I=await u(g,{method:t,headers:E,body:n,signal:a.signal,redirect:"manual"}),C=await I.text(),B=null;if(C)try{B=JSON.parse(C)}catch{B=null}if(UU.has(I.status)){if(t!=="GET"&&t!=="HEAD"){let m=new Error(`HTTP ${I.status} ${t} ${g} redirected non-idempotent request`);throw m.status=I.status,m.body=B??C.slice(0,300),m}if(Q===ld)throw new Error(`HTTP redirect loop for ${e}`);let h=TU(I.headers?.get?.("location"),g);if(!xU(h,g)){let m=await id(h,o?{lookupFn:o}:{});if(!m.ok){let T=new Error(`HTTP redirect from ${g} ${m.error}`);throw T.status=I.status,T}E=LU(E),i&&m.addresses?.length&&(l||(l=await ad()),l&&(l.pin(new URL(h).hostname,m.addresses[0].address,m.addresses[0].family),u=l.fetch))}g=h;continue}if(!I.ok){let h=new Error(`HTTP ${I.status} ${t} ${g}`);throw h.status=I.status,h.retryAfter=I.headers?.get?.("retry-after")??null,h.body=B??C.slice(0,300),h}return B??C}throw new Error(`HTTP redirect loop for ${e}`)}finally{clearTimeout(c),l&&await l.close()}}async function ne(e,A={}){let t=A.fetchImpl||globalThis.fetch;if(typeof t!="function")throw new Error("fetch unavailable \u2014 pass opts.fetchImpl");let r=A.timeoutMs??12e3,n=(A.method||"GET").toUpperCase(),s={Accept:"application/json",...A.headers||{}},o=A.body;o!=null&&typeof o!="string"&&(s["Content-Type"]=s["Content-Type"]||"application/json",o=JSON.stringify(o));let i=Number.isInteger(A.retries)?Math.max(A.retries,0):NU,a=A.lookupFn,c=!A.fetchImpl,l=async()=>{let I;for(let C=0;C<=i;C++)try{return await vU(e,{fetchImpl:t,method:n,headers:s,body:o,timeoutMs:r,lookupFn:a,realFetch:c})}catch(B){I=B;let h=B?.status,y=B?.name==="AbortError",m=new Set([408,425,429]),T=h!=null?m.has(h)||SU.has(h)&&gd.has(n):!y&&gd.has(n);if(C===i||!T)throw B;await JU(GU(C,B?.retryAfter))}throw I};if(!(A.dedupe!==!1&&n==="GET"&&o==null))return l();let g=YU(n,e,s),E=Cg.get(g);if(E)return E;let Q=l().finally(()=>Cg.delete(g));return Cg.set(g,Q),Q}var SU,gd,NU,ud,Ed,UU,ld,Cg,JU,uA=MA(()=>{cd();SU=new Set([408,425,429,500,502,503,504]),gd=new Set(["GET","HEAD","OPTIONS","PUT","DELETE"]),NU=2,ud=4e3,Ed=["authorization","x-api-key","x-tensor-api-key","0x-api-key","api-key","cookie","proxy-authorization"],UU=new Set([301,302,303,307,308]),ld=3;Cg=new Map;JU=e=>new Promise(A=>setTimeout(A,e))});import{readFileSync as HU}from"node:fs";import{homedir as VU}from"node:os";import{join as So}from"node:path";function qU(){if(process.env.ORACLE_TEST_ISOLATE_SECRETS==="1"){let t=(process.env.ORACLE_EXEC_ENV_FILE||"").trim();return t?[t]:[]}let e=(process.env.ORACLE_EXEC_ENV_FILE||process.env.MAD_EXEC_ENV_FILE||"").trim(),A=VU();if(process.env.ORACLE_PUBLIC_DESKTOP==="1"){let t=(process.env.ORACLE_CONFIG_DIR||So(A,".config","oracle")).trim();return[e,So(t,"exec.env")].filter(Boolean)}return[e,So(A,".config","oracle","exec.env"),So(A,".config","mad-desk","exec.env")].filter(Boolean)}function Qd(e,A,t){let r=e??process.env[A]??process.env[t];if(!String(r||"").trim())for(let n of qU())try{let s=HU(n,"utf8"),o=s.match(new RegExp(`^${A}=(.*)$`,"m"))||s.match(new RegExp(`^${t}=(.*)$`,"m"));if(o&&(r=o[1].trim(),r))break}catch{}if(!String(r||"").trim())throw new Error(`${A} required for attestation. Set it in the environment, or place ${A}=<value> in ~/.config/oracle/exec.env`);return r}var Bd=MA(()=>{});var Id=MA(()=>{});import{createHash as OU,createHmac as hd,timingSafeEqual as WU}from"node:crypto";function Uo(e){return Array.isArray(e)?`[${e.map(Uo).join(",")}]`:e&&typeof e=="object"?`{${Object.keys(e).sort().map(A=>`${JSON.stringify(A)}:${Uo(e[A])}`).join(",")}}`:JSON.stringify(e??null)}function dd(e,{required:A=!1}={}){try{return Qd(e,"ORACLE_ROUTE_ATTESTATION_SECRET","MAD_ROUTE_ATTESTATION_SECRET")}catch(t){if(A)throw t;return null}}function dg(e){let{signature:A,...t}=e;return t}function fd(e,{secret:A}={}){let t=dd(A);return t?{...e,signature:hd("sha256",t).update(Uo(dg(e))).digest("hex")}:e}function PU(e){let A=String(e||"").toLowerCase();if(!/^0x[0-9a-f]+$/.test(A)||A.length<10||A.length%2!==0)throw new Error("auto-slippage calldata must be even-length hex with a selector");return OU("sha256").update(Buffer.from(A.slice(2),"hex")).digest("hex")}function Dt(e,{chainId:A,venue:t,data:r,secret:n}={}){if(!e||e.mode!=="auto")throw new Error("bounded auto-slippage guard required");if(Number(e.chainId)!==Number(A))throw new Error("auto-slippage guard chain mismatch");if(String(e.venue).toLowerCase()!==String(t||"").toLowerCase())throw new Error("auto-slippage guard venue mismatch");let s=dd(n);if(s){let E=hd("sha256",s).update(Uo(dg(e))).digest("hex");if(!_U(e.signature,E))throw new Error("auto-slippage guard signature mismatch \u2014 refusing to bind a guard this Oracle did not issue")}let o=Number(e.selectedBps),i=Number(e.capBps);if(!Number.isInteger(o)||o<0||o>No||!Number.isInteger(i)||i<0||i>No||o>i)throw new Error("auto-slippage guard bounds are invalid");let a=BigInt(e.quoteAmountOut??0),c=BigInt(e.minAmountOut??0);if(a<=0n||c<=0n)throw new Error("auto-slippage guard amounts must be positive");let l=a*BigInt(1e4-o),u=l/10000n;if(l%10000n!==0n&&(u+=1n),c<u)throw new Error("auto-slippage guard is under-protected relative to its quote");let g=KU(r);if(g!=null&&g!==c)throw new Error(`auto-slippage: calldata encodes floor ${g}, not the guard floor ${c} \u2014 refusing to bind`);return fd({...dg(e),calldataHash:PU(r)},{secret:n})}function _U(e,A){let t=Buffer.from(String(e??""),"utf8"),r=Buffer.from(String(A??""),"utf8");return t.length!==r.length||t.length===0?!1:WU(t,r)}function hg(e,A=0){let t=Number(e);return Number.isFinite(t)?t:A}function ZU(e){let A=e==null?No:Number(e);if(!Number.isInteger(A)||A<0)throw new Error("auto-slippage cap must be a non-negative integer bps value");return Math.min(A,No)}function RA({liquidityUsd:e,priceChange5m:A=0,quoteAgeMs:t=0,crossChain:r=!1,requestedCapBps:n}={}){let s=hg(e,0),o=s>0?s>=25e4?5:s>=1e5?10:s>=5e4?20:s>=1e4?40:70:r?30:10,i=Math.min(60,Math.abs(hg(A,0))*2),a=Math.min(40,Math.floor(Math.max(0,hg(t,0))/5e3)*5),c=Math.max(25,Math.ceil(20+o+i+a)),l=ZU(n);return{mode:"auto",requiredBps:c,selectedBps:Math.min(c,l),capBps:l,executable:c<=l}}function zU({chainId:e,venue:A,quoteAmountOut:t,liquidityUsd:r,priceChange5m:n=0,quoteAgeMs:s=0,crossChain:o=!1,requestedCapBps:i,quotedAtMs:a=Date.now(),ttlMs:c=Cd,secret:l}={}){let u=BigInt(t??0);if(u<=0n)throw new Error("auto-slippage guard requires positive quoteAmountOut");let g=RA({liquidityUsd:r,priceChange5m:n,quoteAgeMs:s,crossChain:o,requestedCapBps:i});if(!g.executable)throw new Error(`auto-slippage requires ${g.requiredBps} bps above hard/requested cap ${g.capBps}; route blocked`);let E=Number(a);if(!Number.isFinite(E))throw new Error("auto-slippage: quotedAtMs must be a finite number");let Q=Math.min(3e4,Math.max(1e3,Number(c)||Cd)),I=u*BigInt(1e4-g.selectedBps),C=I/10000n;if(I%10000n!==0n&&(C+=1n),C>u&&(C=u),u>0n&&C<=0n)throw new Error(`auto-slippage: quote ${u} is too small to express a ${g.selectedBps} bps floor without rounding to zero`);let B=Number((u-C)*10000n/(u===0n?1n:u));if(B>g.capBps)throw new Error(`auto-slippage: realised floor implies ${B} bps, above cap ${g.capBps} \u2014 refusing to issue a guard weaker than advertised`);return fd({mode:"auto",chainId:Number(e),venue:String(A||"unknown"),quoteAmountOut:u.toString(),minAmountOut:C.toString(),requiredBps:g.requiredBps,selectedBps:g.selectedBps,capBps:g.capBps,quotedAtMs:E,expiresAtMs:E+Q},{secret:l})}function KU(e){let A=String(e||"");if(!/^0x[0-9a-fA-F]+$/.test(A)||A.length<10||A.length%2!==0)return null;let t=A.slice(0,10).toLowerCase(),r=[];for(let s=10;s+64<=A.length;s+=64)r.push(A.slice(s,s+64));let n=s=>r[s]==null?null:BigInt("0x"+r[s]);switch(t){case"0x414bf389":return n(6);case"0x04e45aaf":return n(5);case"0xc04b8d59":{let s=n(0);if(s==null)return null;let o=Number(s)/32;return!Number.isInteger(o)||o<0?null:n(o+4)}case"0xb858183f":{let s=n(0);if(s==null)return null;let o=Number(s)/32;return!Number.isInteger(o)||o<0?null:n(o+3)}case"0xa026383e":return n(6);case"0x38ed1739":case"0x5c11d795":return n(1);case"0x7ff36ab5":case"0xb6f9de95":return n(0);case"0x18cbafe5":case"0x791ac947":return n(1);default:return null}}function le(e,{chainId:A,venue:t,amountOut:r,liquidityUsd:n,priceChange5m:s,crossChain:o,requestedCapBps:i,quotedAtMs:a=Date.now(),ttlMs:c}={}){let l=zU({chainId:A,venue:t,quoteAmountOut:r,liquidityUsd:n,priceChange5m:s,crossChain:o,requestedCapBps:i,quotedAtMs:a,ttlMs:c});return{...e,autoSlippage:l,amountOutMinimum:l.minAmountOut}}var No,Cd,SA=MA(()=>{Bd();Id();No=100,Cd=2e4});function pd(e){let A=String(e||"").trim();return/^0x[0-9a-fA-F]{40}$/.test(A)?A:bt}var bt,Mo=MA(()=>{bt="0x000000000000000000000000000000000000dEaD"});import{createHash as XU,createHmac as jU,timingSafeEqual as zx}from"node:crypto";function fg(e){return e===null||typeof e!="object"?JSON.stringify(e):Array.isArray(e)?`[${e.map(fg).join(",")}]`:`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${fg(e[t])}`).join(",")}}`}function wd(e){let A=String(e?.ORACLE_STAMP_HMAC_SECRET||"").trim();return A.length>=16?A:""}function md(e=process.env){return wd(process.env)||wd(e)}function AM(e){let{prepareHash:A,prepareMac:t,note:r,...n}=e||{};return n}function tM(e){let A=AM(e);return XU("sha256").update(fg(A)).digest("hex")}function rM(e,A=md()){return A?jU("sha256",A).update(String(e)).digest("hex"):""}function NA(e,{provider:A,kind:t,env:r=process.env}={}){if(!e||typeof e!="object")throw new Error("stampPrepared: payload object required");let n=Object.prototype.hasOwnProperty.call(e,"oraclePrepared");if(n&&typeof e.oraclePrepared!="boolean")throw new Error("stampPrepared: oraclePrepared must be boolean");let s={...e,provider:e.provider||A,kind:e.kind||t,requiresUserSignature:e.requiresUserSignature!==!1,signingReady:!1,broadcastReady:!1,executionReady:!1,oraclePrepared:n?e.oraclePrepared:!0};if(!s.provider)throw new Error("stampPrepared: provider required");if(!s.kind)throw new Error("stampPrepared: kind required");let o=Date.now(),i=o+eM,c={...s,preparedAt:o,expiresAt:i,prepareVersion:$U},l=tM(c),u=md(r),g=u?rM(l,u):void 0,E={...c,prepareHash:l};return g&&(E.prepareMac=g),E}var $U,eM,Kx,UA=MA(()=>{$U=2,eM=300*1e3,Kx=(()=>{let e=Number(process.env.ORACLE_PREPARE_HARD_MAX_AGE_MS);return Number.isFinite(e)&&e>0?e:1800*1e3})()});var Dg={};Cf(Dg,{ACROSS_API:()=>tf,HOP_API:()=>rf,RELAY_API:()=>nf,acrossHealth:()=>fL,acrossSuggestedFees:()=>sf,hopHealth:()=>pL,hopQuote:()=>of,relayHealth:()=>wL,relayPrepare:()=>mL,relayQuote:()=>yg});async function fL(e={}){try{return{ok:!0,estimatedFillTimeSec:(await sf({token:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",destinationToken:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",originChainId:1,destinationChainId:42161,amount:"1000000000000000"},e)).estimatedFillTimeSec}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function sf(e={},A={}){let{token:t,destinationToken:r=t,originChainId:n,destinationChainId:s,amount:o}=e;if(!t||n==null||s==null||!o)throw new Error("acrossSuggestedFees requires token, originChainId, destinationChainId, amount");let i=new URLSearchParams({token:t,destinationToken:r,originChainId:String(n),destinationChainId:String(s),amount:String(o)}),a=(A.baseUrl||process.env.ACROSS_API_URL||tf).replace(/\/$/,"");return ne(`${a}/suggested-fees?${i}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3})}async function pL(e={}){try{let A=await of({amount:"1000000000000000",token:"ETH",fromChain:"ethereum",toChain:"arbitrum",slippage:.5},e);return{ok:!0,estimatedRecieved:A.estimatedRecieved||A.estimatedReceived}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function of(e={},A={}){let{amount:t,token:r="ETH",fromChain:n="ethereum",toChain:s="arbitrum"}=e;if(!t)throw new Error("hopQuote requires amount");let o=e.slippage==null?void 0:Math.round(Number(e.slippage)*100),i=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:n!==s,requestedCapBps:e.maxSlippageBps??e.slippageBps??o});if(!i.executable)throw new Error(`hop: route requires ${i.requiredBps} bps above cap ${i.capBps}`);let a=new URLSearchParams({amount:String(t),token:r,fromChain:n,toChain:s,slippage:String(i.selectedBps/100)}),c=(A.baseUrl||process.env.HOP_API_URL||rf).replace(/\/$/,""),l=await ne(`${c}/quote?${a}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),u=l?.estimatedRecieved||l?.estimatedReceived;return u?le(l,{chainId:Number(e.originChainId||e.chainId||dL[n]||0),venue:l?.tx?.to||"hop",amountOut:u,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:n!==s,requestedCapBps:e.maxSlippageBps??e.slippageBps??o}):{...l,autoSlippagePolicy:i}}async function wL(e={}){try{let A=await yg({user:bt,originChainId:1,destinationChainId:8453,originCurrency:"0x0000000000000000000000000000000000000000",destinationCurrency:"0x0000000000000000000000000000000000000000",amount:"1000000000000000",tradeType:"EXACT_INPUT"},e);return{ok:!0,hasSteps:Array.isArray(A.steps),stepCount:A.steps?.length||0}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function yg(e={},A={}){let{user:t=bt,originChainId:r,destinationChainId:n,originCurrency:s="0x0000000000000000000000000000000000000000",destinationCurrency:o="0x0000000000000000000000000000000000000000",amount:i,tradeType:a="EXACT_INPUT"}=e;if(r==null||n==null||!i)throw new Error("relayQuote requires originChainId, destinationChainId, amount");let c=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(n),requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!c.executable)throw new Error(`relay: route requires ${c.requiredBps} bps above cap ${c.capBps}`);let l=(A.baseUrl||process.env.RELAY_API_URL||nf).replace(/\/$/,""),u=await ne(`${l}/quote`,{method:"POST",body:{user:t,originChainId:Number(r),destinationChainId:Number(n),originCurrency:s,destinationCurrency:o,amount:String(i),tradeType:a,slippageTolerance:String(c.selectedBps)},fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),g=u?.details?.currencyOut?.amount;return!g||!/^\d+$/.test(String(g))?{...u,autoSlippagePolicy:c}:le(u,{chainId:Number(r),venue:u?.steps?.[0]?.items?.[0]?.data?.to||"relay",amountOut:g,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(n),requestedCapBps:e.maxSlippageBps??e.slippageBps})}async function mL(e={},A={}){let t=await yg(e,A),r=Number(e.originChainId),n=(t.steps||[]).flatMap(i=>(i.items||[]).filter(a=>a?.data?.to&&a?.data?.data).map(a=>({stepId:i.id,...a.data})));if(!n.length)throw new Error("relay: quote returned no executable transaction items");let s=String(t?.autoSlippage?.venue||"").toLowerCase();if(n.some(i=>String(i.to).toLowerCase()!==s))throw new Error("relay: route includes a separate approval/transaction that is not yet safely bound");let o=n.map(i=>({chainId:r,from:i.from||e.user,to:i.to,data:i.data,value:i.value??"0x0",...i.gasLimit!=null||i.gas!=null?{gasLimit:i.gasLimit??i.gas}:{},slippageGuard:Dt(t.autoSlippage,{chainId:r,venue:i.to,data:i.data})}));return NA({provider:"relay",calldataReady:!0,requiresUserSignature:!0,signingReady:!1,broadcastReady:!1,chainId:r,quote:t,autoSlippage:t.autoSlippage,transactions:o},{provider:"relay",kind:"relay-tx"})}var tf,rf,nf,dL,bg=MA(()=>{uA();SA();Mo();UA();tf="https://across.to/api",rf="https://api.hop.exchange/v1",nf="https://api.relay.link",dL={ethereum:1,optimism:10,bsc:56,polygon:137,arbitrum:42161,avalanche:43114,base:8453}});var SL=Object.freeze(["blockNumber","nativeBalance","tokenBalance","resolveToken","resolvePools","scanBlocks","scoreRisk","quote","sellSimulation","prepareUnsignedTx"]),NL=Object.freeze({LIVE:"LIVE",CACHED:"CACHED",STALE:"STALE",UNKNOWN:"UNKNOWN",UNAVAILABLE:"UNAVAILABLE"}),UL=Object.freeze({PASS:"PASS",CAUTION:"CAUTION",FAIL:"FAIL",UNKNOWN:"UNKNOWN"});var eA=Object.freeze({FULL:"FULL",NO_GAS:"NO_GAS",FAILED:"FAILED"}),Ng={1:"coingecko:ethereum",10:"coingecko:ethereum",56:"coingecko:binancecoin",137:"coingecko:matic-network",8453:"coingecko:ethereum",42161:"coingecko:ethereum",43114:"coingecko:avalanche-2",999:"coingecko:ethereum"},Rr=e=>{try{return e==null||e===""?null:BigInt(String(e).split(".")[0])}catch{return null}};function Sg(e){let{source:A,amountOut:t,minOut:r=null,gasUsd:n=null,feeUsd:s=null,oracleFeeBps:o=0,estimatedGas:i=null,liquidityUsd:a=null,error:c=null,executionReady:l=!1,meta:u={}}=e||{};if(c||t==null)return{source:A,quality:eA.FAILED,amountOut:null,error:c||"no amountOut returned"};let g=Rr(t);if(g==null||g<=0n)return{source:A,quality:eA.FAILED,amountOut:null,error:"non-positive amountOut"};let E=Number(o);return{source:A,quality:n==null?eA.NO_GAS:eA.FULL,amountOut:g.toString(),minOut:Rr(r)?.toString()??null,gasUsd:n,feeUsd:s,oracleFeeBps:Number.isFinite(E)&&E>0?Math.floor(E):0,estimatedGas:i==null?null:String(i),liquidityUsd:a==null?null:Number(a),executionReady:l,meta:u}}async function Ug(e,A,{divisor:t=1000n}={}){let r=Rr(A);if(r==null||r<=0n)return null;let n=r/t>0n?r/t:1n;if(n>=r)return null;let s,o;try{[s,o]=await Promise.all([e(n),e(r)])}catch{return null}let i=Rr(s),a=Rr(o);if(i==null||a==null||i<=0n)return null;let c=Number(i)/Number(n),l=Number(a)/Number(r);return!Number.isFinite(c)||!Number.isFinite(l)||c<=0?null:{impactPct:(1-l/c)*100,probeAmountIn:n.toString(),probeAmountOut:i.toString(),fullAmountOut:a.toString()}}function Mg(e,A,{maxImpactPct:t=25}={}){let r=[],n=[],s=(e.routes??[]).filter(i=>{let a=A?.[i.source];return a?a.impactPct>t?(r.push({source:i.source,impactPct:Number(a.impactPct.toFixed(2)),reason:`price impact ${a.impactPct.toFixed(1)}% exceeds ${t}% ceiling -- the venue cannot absorb this size near the quoted price`}),!1):!0:(n.push(i.source),!0)}),o=[...e.warnings??[]];return r.length&&o.push(`dropped ${r.length} route(s) on price impact: `+r.map(i=>`${i.source} (${i.impactPct}%)`).join(", ")),n.length&&o.push(`price impact NOT measured for: ${n.join(", ")}. These are unproven against thin liquidity, not proven safe.`),{...e,routes:s,best:s[0]??null,impactRejected:r,impactUnmeasured:n,warnings:o}}function Oo(e,{destPriceUsd:A=null,destDecimals:t=null,liquidityFirst:r=!0,liquidityBandBps:n=50,gasPriceWei:s=null,nativePriceUsd:o=null}={}){let i=e.filter(M=>M.quality!==eA.FAILED),a=e.filter(M=>M.quality===eA.FAILED),c=A!=null&&A>0&&t!=null&&t>=0,l=Number(s),u=Number(o),g=Number.isFinite(l)&&l>0&&Number.isFinite(u)&&u>0,E=i.map(M=>{let V=BigInt(M.amountOut),De=0n,Be=!1,se=!1,xe=BigInt(M.oracleFeeBps??0),QA=xe>0n?V*xe/10000n:0n;if(c){let Un=M.gasUsd,Vo=Number(M.meta?.gasUnits??M.estimatedGas);if(Un==null&&g&&Number.isFinite(Vo)&&Vo>0){let jA=Vo*l/1e18*u;Number.isFinite(jA)&&jA>=0&&(Un=jA,se=!0)}let Rg=(Un??0)+(M.feeUsd??0);if(Rg>0){let jA=Rg/A*10**t;Number.isFinite(jA)&&jA>=0&&(De=BigInt(Math.floor(jA)),Be=!0)}else Un===0&&(Be=!0)}let Rt=De+QA,St=V>Rt?V-Rt:0n;return{...M,grossOut:V.toString(),netOut:St.toString(),costInDest:De.toString(),oracleFeeInDest:QA.toString(),costAccounted:Be,gasEstimated:se}}),Q=Number(n)>0?Number(n):0,I=E.reduce((M,V)=>BigInt(V.netOut)>M?BigInt(V.netOut):M,0n),C=M=>I>0n?Number((I-BigInt(M))*10000n/I):0,B=[],h=E.slice().sort((M,V)=>BigInt(V.netOut)>BigInt(M.netOut)?1:-1)[0]??null;E.sort((M,V)=>{let De=C(M.netOut)<=Q?0:1,Be=C(V.netOut)<=Q?0:1;if(r&&Q>0&&De!==Be)return De-Be;if(r&&Q>0){let se=M.liquidityUsd??-1,xe=V.liquidityUsd??-1;if(se!==xe)return xe-se}return BigInt(V.netOut)>BigInt(M.netOut)?1:-1}),r&&Q>0&&h&&E[0]&&E[0].source!==h.source&&B.push(`liquidity-first: chose ${E[0].source} (liquidity $${E[0].liquidityUsd??"unknown"}) over best-price ${h.source} within ${Q} bps`);let y=E.filter(M=>!M.costAccounted).map(M=>M.source);c?y.length&&B.push(`gas not reported by: ${y.join(", ")}. These are ranked on gross output and may be overstated relative to gas-measured routes.`):B.push("destination price/decimals unavailable: ranked on GROSS output. Gas is not included, so a cheap-looking route may cost more to execute.");let m=E[0];if(c&&m&&m.costAccounted===!1){let M=E.find(V=>V.costAccounted&&C(V.netOut)<=Q);M&&B.push(`winner ${m.source} has UNMEASURED gas; gas-measured ${M.source} is within ${Q} bps and may net more once ${m.source}'s real gas is paid \u2014 prefer it if unsure.`)}let T=E.filter(M=>M.gasEstimated).map(M=>M.source);T.length&&B.push(`gas ESTIMATED (from gas units x current gas price, not measured) for: ${T.join(", ")}. Net includes this estimate so the ranking is gas-inclusive, but the on-chain gas may differ.`);let _=null,Z=null;if(E.length>=2&&E[0].costAccounted&&E[1].costAccounted){let M=BigInt(E[0].netOut),V=BigInt(E[1].netOut);V>0n&&(_=Number((M-V)*10000n/V),Z=`${E[0].source} vs ${E[1].source}`)}return{best:E[0]??null,routes:E,failed:a,improvementBps:_,spreadBasis:Z,rankedOn:c?"net-of-cost":"gross",warnings:B}}async function Mn(e,{timeoutMs:A=12e3}={}){let t=(n,s)=>Promise.race([n,new Promise((o,i)=>setTimeout(()=>i(new Error(`${s}: timeout`)),A))]);return(await Promise.allSettled(e.map(n=>t(Promise.resolve().then(n.run),n.source)))).map((n,s)=>{let o=e[s].source;return n.status==="rejected"?Sg({source:o,error:String(n.reason?.message||n.reason)}):Sg({source:o,...n.value})})}uA();SA();Mo();UA();import{existsSync as lM,readFileSync as EM,lstatSync as QM}from"node:fs";import{homedir as Dd}from"node:os";import{join as pg}from"node:path";import{Contract as nM,JsonRpcProvider as sM}from"ethers";var oM="0x62FCFAf7573AD8B41a0FBF347AfEb85e06599A75",iM=999,aM="https://rpc.hyperliquid.xyz/evm",cM=["function balanceOf(address owner) view returns (uint256)"],gM=/^0x[a-fA-F0-9]{40}$/;function uM(e){return gM.test(String(e||""))}async function yd(e,{contract:A=oM,rpc:t=aM,chainId:r=iM,balanceOf:n}={}){if(!uM(e))throw new Error("invalid-address");if(n)return BigInt(await n(e));let s=new sM(t,r,{staticNetwork:!0}),o=new nM(A,cM,s);return BigInt(await o.balanceOf(e))}var BM=100,IM=5,bd=Object.freeze({swap:5,bridge:5,perps:0,nft:0});function CM(e){let A=String(e||"swap").toLowerCase();return Object.prototype.hasOwnProperty.call(bd,A)?bd[A]:IM}var hM="ORACLE_INTEGRATOR_FEE_BPS",dM="ORACLE_INTEGRATOR_FEE_RECIPIENT",fM="ORACLE_INTEGRATOR_ID",kd="ORACLE_INTEGRATOR_FEE_RECIPIENT_PIN",pM="oracle";function wM(e=process.env){if(process.env.ORACLE_TEST_ISOLATE_SECRETS==="1"){if(e[kd])return String(e[kd]);let A=e.ORACLE_CONFIG_DIR||pg(Dd(),".config","oracle");return pg(A,"fee-recipient")}return pg(Dd(),".config","oracle","fee-recipient")}function mM(e=process.env){try{let A=wM(e);if(!lM(A)||QM(A).isSymbolicLink())return"";let t=EM(A,"utf8").trim().toLowerCase();return/^0x[a-f0-9]{40}$/.test(t)?t:""}catch{return""}}function yM(e,{fallback:A=0}={}){if(e==null)return A;if(String(e).trim()==="")return 0;let t=Number(e);return!Number.isFinite(t)||t<=0?0:Math.min(Math.floor(t),BM)}function DM({env:e=process.env,action:A="swap",admin:t=!1}={}){let r=String(e[dM]||"").trim(),n=String(e[fM]||pM).trim();if(t===!0)return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"admin-oracle"};let s=CM(A),o=yM(e[hM],{fallback:r?s:0}),i=Math.min(o,s);if(!i)return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"not-configured"};if(!/^0x[a-fA-F0-9]{40}$/.test(r))return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"no-recipient"};let a=mM(e);return!a||a!==r.toLowerCase()?{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"recipient-not-pinned"}:{bps:i,recipient:r,integrator:n,action:A,applies:!0,reason:"configured"}}async function Lo({wallet:e,env:A=process.env,action:t="swap",holderCheck:r={},admin:n=!1}={}){let s=DM({env:A,action:t,admin:n});if(n===!0)return{...s,holderVerificationStatus:"admin-oracle"};let o=String(e||"").trim().toLowerCase();if(!/^0x[a-f0-9]{40}$/.test(o))return{...s,holderVerificationStatus:"wallet-required"};try{return BigInt(await yd(o,r))>0n?{...s,bps:0,applies:!1,reason:"locals-only-holder",holderVerificationStatus:"holder"}:{...s,holderVerificationStatus:"non-holder"}}catch{return{...s,holderVerificationStatus:"unavailable"}}}function Fd(e){return e?.applies?`Oracle routing fee ${e.bps} bps (${(e.bps/100).toFixed(2)}%) to ${e.recipient}.`:e?.reason==="admin-oracle"?"No Oracle fee (admin Oracle).":e?.reason==="locals-only-holder"?"No Oracle fee (Locals Only holder).":"No Oracle fee."}function Rd(e){return e?.applies?{integrator:e.integrator,fee:String(e.bps/1e4)}:{}}function Sd(e){return e?.applies?{partner:e.integrator,partnerFeeBps:String(e.bps),partnerAddress:e.recipient}:{}}var bM="https://li.quest/v1";function kM(e={}){return(e.baseUrl||process.env.LIFI_API_URL||bM).replace(/\/$/,"")}var FM="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";async function wg(e={},A={}){let{fromChain:t,toChain:r=t,fromToken:n=FM,toToken:s,fromAmount:o,fromAddress:i=bt}=e;if(t==null||!s||!o)throw new Error("lifiQuote requires fromChain, toToken, fromAmount");let a=new URLSearchParams({fromChain:String(t),toChain:String(r),fromToken:n,toToken:s,fromAmount:String(o),fromAddress:i}),c=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(t),requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!c.executable)throw new Error(`lifi: route requires ${c.requiredBps} bps above cap ${c.capBps}`);a.set("slippage",String(c.selectedBps/1e4));let l=await Lo({wallet:e.fromAddress,env:A.env,action:e.feeAction||"swap",holderCheck:A.holderCheck});for(let[C,B]of Object.entries(Rd(l)))a.set(C,B);let u=await ne(`${kM(A)}/quote?${a}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),g=u?.estimate?.toAmount||u?.toAmount;if(!g)return{...u,autoSlippagePolicy:c,oracleFee:l};let E=u?.transactionRequest?.to||u?.estimate?.approvalAddress||"lifi",Q=le(u,{chainId:Number(t),venue:E,amountOut:g,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(t),requestedCapBps:e.maxSlippageBps??e.slippageBps}),I=u?.estimate?.toAmountMin||u?.toAmountMin;if(I!=null&&BigInt(I)<BigInt(Q.amountOutMinimum))throw new Error("lifi: provider transaction is under-protected versus bounded auto-slippage floor");return{...Q,oracleFee:l}}uA();SA();UA();var RM="https://api.paraswap.io",SM=(e={})=>(e.baseUrl||process.env.PARASWAP_API_URL||RM).replace(/\/$/,"");function Nd(e,A){let t=String(e||"");if(!/^0x[0-9a-fA-F]{40}$/.test(t))throw new Error(`${A} must be a 20-byte token address`);return t.toLowerCase()}async function Ud(e={},A={}){let t=Number(e.chainId||e.network||1);if(e.amount==null)throw new Error("amount required");let r=new URLSearchParams({srcToken:Nd(e.srcToken,"srcToken"),destToken:Nd(e.destToken,"destToken"),amount:String(e.amount),srcDecimals:String(Number(e.srcDecimals)),destDecimals:String(Number(e.destDecimals)),side:String(e.side||"SELL").toUpperCase(),network:String(t),version:String(e.version||"6.2")});e.includeDEXS&&r.set("includeDEXS",String(e.includeDEXS)),e.excludeDEXS&&r.set("excludeDEXS",String(e.excludeDEXS));let n=await Lo({wallet:e.userAddress||e.fromAddress,env:A.env,action:e.feeAction||"swap",holderCheck:A.holderCheck});for(let[i,a]of Object.entries(Sd(n)))r.set(i,a);let s=await ne(`${SM(A)}/prices?${r}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),o=s?.priceRoute?.destAmount;return o?{...le(s,{chainId:t,venue:s?.priceRoute?.contractAddress||"paraswap-quote",amountOut:o,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,quoteAgeMs:0,requestedCapBps:e.maxSlippageBps??e.slippageBps}),executionReady:!1,executionBlocker:"call prepare to bind the price route to a validated transaction",oracleFee:n}:{...s,executionReady:!1,oracleFee:n}}uA();SA();var Md="ORACLE_ALLOW_CUSTOM_PROVIDER_URL";function To({provider:e,defaultUrl:A,hosts:t=[],url:r,strict:n=!1}){let o=(String(r??"").trim()||String(A)).replace(/\/$/,"");if(o===String(A).replace(/\/$/,""))return{baseUrl:o,trusted:!0,host:Ld(A)};let i;try{i=new URL(o)}catch{throw new Error(`${e}: baseUrl must be an absolute http(s) URL`)}if(i.protocol!=="http:"&&i.protocol!=="https:")throw new Error(`${e}: baseUrl must be an absolute http(s) URL`);let a=i.host;if(!a)throw new Error(`${e}: baseUrl must be an absolute http(s) URL`);if(new Set([Ld(A),...t]).has(a)){let l=/^(127\.0\.0\.1|localhost|\[::1\])(:\d+)?$/i.test(a);return i.protocol==="http:"&&!l?{baseUrl:o,trusted:!1,host:a,reason:"plaintext http downgrade"}:{baseUrl:o,trusted:!0,host:a}}if(String(process.env[Md]||"")==="1")return{baseUrl:o,trusted:!1,host:a};if(n)throw new Error(`${e}: refusing to call non-allowlisted host ${a} (set ${Md}=1 to permit it)`);return{baseUrl:o,trusted:!1,host:a}}function Ld(e){let A=new URL(String(e));if(A.protocol!=="http:"&&A.protocol!=="https:")throw new Error("unsupported protocol");return A.host}function xo(e,A,t){let r={...e};if(!t)return r;for(let[n,s]of Object.entries(A||{}))s&&(r[n]=s);return r}UA();var NM="https://api.0x.org";function Td(e={}){return To({provider:"zerox",defaultUrl:NM,hosts:["api.0x.org"],url:e.baseUrl||process.env.ZEROX_API_URL})}function UM(e={}){return Td(e).baseUrl}function xd(e={}){return e.apiKey||process.env.ZEROX_API_KEY||process.env.OX_API_KEY||process.env["0X_API_KEY"]||""}function MM(e={}){return xo({"0x-version":"v2",accept:"application/json"},{"0x-api-key":xd(e)},Td(e).trusted)}async function Yd(e={},A={}){if(!xd(A))throw new Error("ZEROX_API_KEY required for 0x");let{chainId:t=8453,sellToken:r,buyToken:n,sellAmount:s,taker:o}=e;if(!r||!n||!s)throw new Error("zeroxQuote requires sellToken, buyToken, sellAmount");let i=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!i.executable)throw new Error(`0x: route requires ${i.requiredBps} bps above cap ${i.capBps}`);let a=new URLSearchParams({chainId:String(t),sellToken:r,buyToken:n,sellAmount:String(s),slippageBps:String(i.selectedBps)});o&&a.set("taker",o);let c=await ne(`${UM(A)}/swap/allowance-holder/quote?${a}`,{headers:MM(A),fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),l=c?.buyAmount||c?.grossBuyAmount;return l?le(c,{chainId:t,venue:c?.transaction?.to||c?.to||"0x",amountOut:l,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):{...c,autoSlippagePolicy:i}}uA();SA();UA();var LM="https://api.1inch.dev/swap/v6.0";function Gd(e={}){return To({provider:"oneinch",defaultUrl:LM,hosts:["api.1inch.dev"],url:e.baseUrl||process.env.ONEINCH_API_URL})}function TM(e={}){return Gd(e).baseUrl}function Jd(e={}){return e.apiKey||process.env.ONEINCH_API_KEY||process.env.ONE_INCH_API_KEY||""}function xM(e={}){let A=Jd(e);return xo({accept:"application/json"},{Authorization:A?`Bearer ${A}`:""},Gd(e).trusted)}async function vd(e={},A={}){if(!Jd(A))throw new Error("ONEINCH_API_KEY required for 1inch");let t=Number(e.chainId??1),{src:r,dst:n,amount:s}=e;if(!r||!n||!s)throw new Error("oneinchQuote requires src, dst, amount");let o=new URLSearchParams({src:r,dst:n,amount:String(s)}),i=await ne(`${TM(A)}/${t}/quote?${o}`,{headers:xM(A),fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3});return i?.dstAmount?le(i,{chainId:t,venue:"1inch-quote",amountOut:i.dstAmount,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):i}uA();SA();import{TypedDataEncoder as U2,getAddress as M2,isAddress as L2}from"ethers";var F2=Object.freeze({READ:"read",PREPARE:"prepare",EXECUTE:"execute",AUTONOMOUS:"autonomous"});Mo();UA();var YM={1:"https://api.cow.fi/mainnet/api/v1",100:"https://api.cow.fi/xdai/api/v1",42161:"https://api.cow.fi/arbitrum_one/api/v1",8453:"https://api.cow.fi/base/api/v1"},H2=Object.freeze({1:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",100:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",42161:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",8453:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41"}),V2=Object.freeze({1:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",100:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",42161:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",8453:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110"}),Hd={1:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",8453:"0x4200000000000000000000000000000000000006",42161:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"},GM={1:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",8453:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",42161:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},q2=Object.freeze({Order:[{name:"sellToken",type:"address"},{name:"buyToken",type:"address"},{name:"receiver",type:"address"},{name:"sellAmount",type:"uint256"},{name:"buyAmount",type:"uint256"},{name:"validTo",type:"uint32"},{name:"appData",type:"bytes32"},{name:"feeAmount",type:"uint256"},{name:"kind",type:"string"},{name:"partiallyFillable",type:"bool"},{name:"sellTokenBalance",type:"string"},{name:"buyTokenBalance",type:"string"}]}),O2=Object.freeze({OrderCancellations:[{name:"orderUids",type:"bytes[]"}]});function JM(e,A={}){if(A.baseUrl)return A.baseUrl.replace(/\/$/,"");let t=YM[Number(e)];if(!t)throw new Error(`cowswap: unsupported chainId ${e}`);return t}async function Vd(e={},A={}){let t=Number(e.chainId??1),r=pd(e.from||e.owner),n=e.sellToken||Hd[t],s=e.buyToken||GM[t],o=String(e.sellAmountBeforeFee||e.sellAmount||"0");if(!n||!s||o==="0")throw new Error("cowQuote requires sellToken, buyToken, sellAmountBeforeFee");if(/eeeeeeee|native|^eth$/i.test(n)&&(n=Hd[t],!n))throw new Error("no WETH mapping for chain");let i={sellToken:n,buyToken:s,from:r,receiver:e.receiver||r,sellAmountBeforeFee:o,kind:e.kind||"sell",signingScheme:e.signingScheme||"eip1271"},a=await ne(`${JM(t,A)}/quote`,{method:"POST",body:i,fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),c=a?.quote?.buyAmount||a?.buyAmount;return c?le(a,{chainId:t,venue:"cowswap-order",amountOut:c,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):a}import{Interface as zd,getAddress as Go,isAddress as $M}from"ethers";uA();var qd={robinhood:{chainId:4663,name:"Robinhood Chain",rpcEnv:["RH_CHAIN_RPC"],evm:!0},ethereum:{chainId:1,name:"Ethereum",rpcEnv:["ETH_RPC_URL","ETHEREUM_RPC_URL","MAINNET_RPC_URL"],evm:!0},polygon:{chainId:137,name:"Polygon",rpcEnv:["POLYGON_RPC_URL","POLYGON_RPC"],evm:!0},arbitrum:{chainId:42161,name:"Arbitrum One",rpcEnv:["ARBITRUM_RPC_URL","ARB_RPC_URL"],evm:!0},base:{chainId:8453,name:"Base",rpcEnv:["BASE_RPC_URL"],evm:!0},hyperevm:{chainId:999,name:"HyperEVM",rpcEnv:["HYPEREVM_RPC_URL","HYPER_EVM_RPC"],evm:!0},bsc:{chainId:56,name:"BNB Smart Chain",rpcEnv:["BSC_RPC_URL","BNB_RPC_URL"],evm:!0},avalanche:{chainId:43114,name:"Avalanche C-Chain",rpcEnv:["AVALANCHE_RPC_URL","AVAX_RPC_URL"],evm:!0},optimism:{chainId:10,name:"OP Mainnet",rpcEnv:["OPTIMISM_RPC_URL","OP_RPC_URL"],evm:!0},abstract:{chainId:2741,name:"Abstract",rpcEnv:["ABSTRACT_RPC_URL","ABS_RPC_URL"],evm:!0},stable:{chainId:988,name:"Stable Mainnet",rpcEnv:["STABLE_RPC_URL","STABLE_RPC"],evm:!0}},vM=new Map(Object.values(qd).map(e=>[e.chainId,e]));function Od(e){return vM.get(Number(e))||null}function Wd(e,A=process.env){let t=Od(e);if(!t)return null;for(let r of t.rpcEnv){let n=(A[r]||"").trim();if(n)return n}return null}import{Interface as HM,getAddress as X2}from"ethers";var j2=new HM(["function allowance(address owner,address spender) view returns (uint256)","function balanceOf(address account) view returns (uint256)"]);var VM={1:"https://ethereum.publicnode.com",137:"https://polygon-bor-rpc.publicnode.com",42161:"https://arbitrum-one-rpc.publicnode.com",8453:"https://base-rpc.publicnode.com",10:"https://optimism-rpc.publicnode.com",988:"https://rpc.stable.xyz",56:"https://bsc-rpc.publicnode.com",43114:"https://avalanche-c-chain-rpc.publicnode.com",999:"https://rpc.hyperliquid.xyz/evm",2741:"https://api.mainnet.abs.xyz",4663:"https://rpc.mainnet.chain.robinhood.com"};function qM(e,{rpcUrl:A,env:t=process.env}={}){if(A)return A;let r=Wd(e,t);return r||VM[Number(e)]||null}var OM=/^(?:eth_(?:call|blocknumber|chainid|get[a-z0-9]+|feehistory|gasprice|maxpriorityfeepergas|syncing|protocolversion|estimategas|createaccesslist)|net_(?:version|listening|peercount)|web3_(?:clientversion|sha3))$/;function WM(e){let A=String(e||""),t=A.toLowerCase();if(A!==A.trim()||!/^[a-zA-Z0-9_]+$/.test(A)||!OM.test(t))throw new Error(`evm-rpc: ${A} refused \u2014 @oracle-agent/oracle is prepare-only (read RPC only; no broadcast/sign)`);return t}async function Nn(e,A,t=[],r={}){let n=String(A||"");WM(n);let s=qM(e,r);if(!s)throw new Error(`No RPC URL for chainId ${e} (set env from chain registry rpcEnv or pass rpcUrl)`);let i=await ne(s,{method:"POST",body:{jsonrpc:"2.0",id:1,method:A,params:t},fetchImpl:r.fetchImpl,timeoutMs:r.timeoutMs??12e3});if(i?.error){let a=new Error(i.error.message||JSON.stringify(i.error));throw a.code=i.error.code,a}return i.result}async function Pd(e,A={}){let t=await Nn(e,"eth_gasPrice",[],A);if(t==null)return null;try{return BigInt(t)}catch{return null}}uA();var PM="https://api.dexscreener.com",_M=Object.freeze({1:"ethereum",10:"optimism",56:"bsc",137:"polygon",8453:"base",42161:"arbitrum",43114:"avalanche",999:"hyperevm",4663:"robinhood"}),$e=e=>String(e??"").toLowerCase(),ZM=e=>Array.isArray(e)?e:e==null?[]:[e];function zM(e,A,t){let r=$e(A),n=$e(t),s=$e(e?.baseToken?.address),o=$e(e?.quoteToken?.address);return s===r&&o===n||s===n&&o===r}function KM(e){let A=Number(e?.liquidity?.usd);return Number.isFinite(A)&&A>=0?A:null}function XM(e={}){return(e.baseUrl||process.env.DEXSCREENER_API_URL||PM).replace(/\/$/,"")}async function jM(e,A={}){if(!e)throw new Error("tokenAddress required");return ne(`${XM(A)}/latest/dex/tokens/${e}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??12e3})}async function Yo({chainId:e,tokenA:A,tokenB:t,dexIds:r=[]}={},n={}){if(e==null||!A||!t)throw new Error("chainId, tokenA, and tokenB required");let s=$e(_M[Number(e)]||e),o=new Set(ZM(r).filter(Boolean).map($e)),i=[...new Set([A,t].map(g=>String(g)).filter(Boolean))],a=await Promise.allSettled(i.map(g=>jM(g,{...n,baseUrl:n.dexscreenerBaseUrl,timeoutMs:n.dexscreenerTimeoutMs??Math.min(Number(n.timeoutMs??4e3),4e3)}))),c=new Set,l=[];for(let g of a)if(g.status==="fulfilled")for(let E of g.value?.pairs||g.value?.data?.pairs||[]){let Q=`${$e(E?.chainId)}:${$e(E?.dexId)}:${$e(E?.pairAddress)}`;c.has(Q)||(c.add(Q),l.push(E))}return l.filter(g=>$e(g?.chainId)===s).filter(g=>zM(g,A,t)).filter(g=>!o.size||o.has($e(g?.dexId))).map(g=>({pairAddress:g.pairAddress??null,dexId:g.dexId??null,chainId:g.chainId??null,liquidityUsd:KM(g),pairCreatedAt:g.pairCreatedAt??null})).filter(g=>g.liquidityUsd!=null).sort((g,E)=>E.liquidityUsd-g.liquidityUsd)[0]??null}SA();UA();var kt={1:{name:"ethereum",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",usdc:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},8453:{name:"base",quoter:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",router:"0x2626664c2603336E57B271c5C0b26F421741e481",weth:"0x4200000000000000000000000000000000000006",usdc:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},42161:{name:"arbitrum",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",usdc:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},4663:{name:"robinhood",quoter:"0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7",router:"0xcaf681a66d020601342297493863e78c959e5cb2",weth:"0x0bd7d308f8e1639fab988df18a8011f41eacad73",usdc:"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"},999:{name:"hyperevm",weth:"0x5555555555555555555555555555555555555555",usdc:"0xB8CE59FC3717ada4C02eaDF9682A9e934F625ebb"},10:{name:"optimism",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x4200000000000000000000000000000000000006",usdc:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"},56:{name:"bsc",quoter:"0x78D78E420Da98ad378D7799bE8f4AF69033EB077",router:"0xB971eF87ede563556b2ED4b1C0b0019111Dd85d2",weth:"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",usdc:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"},137:{name:"polygon",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",usdc:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"},43114:{name:"avalanche",quoter:"0xbe0F5544EC67e9B3b2D979aaA43f18Fd87E6257F",router:"0xbb00FF08d01D300023C629E8fFfFcb65A5a578cE",weth:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",usdc:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"}},eL=[100,500,3e3,1e4],_d=new zd(["function quoteExactInputSingle((address tokenIn, address tokenOut, uint256 amountIn, uint24 fee, uint160 sqrtPriceLimitX96) params) returns (uint256 amountOut, uint160 sqrtPriceX96After, uint32 initializedTicksCrossed, uint256 gasEstimate)","function quoteExactInput(bytes path, uint256 amountIn) returns (uint256 amountOut, uint160[] sqrtPriceX96AfterList, uint32[] initializedTicksCrossedList, uint256 gasEstimate)"]),iY=new zd(["function exactInputSingle((address tokenIn,address tokenOut,uint24 fee,address recipient,uint256 amountIn,uint256 amountOutMinimum,uint160 sqrtPriceLimitX96) params) payable returns (uint256 amountOut)","function multicall(uint256 deadline,bytes[] data) payable returns (bytes[] results)"]),AL="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",tL="0x0000000000000000000000000000000000000000",mg=[100,500,2500,1e4],rL={56:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},8453:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},42161:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},999:{hyperswap:{name:"hyperswap",quoter:"0x03A918028f22D9E1473B7959C927AD7425A45C7C",router:"0x4E2960a8cd19B467b82d26D83fAcb0fAE26b094D"}}};function nL(e,A){let t=Number(e),r=kt[t];if(!r)throw new Error(`uniswap-v3: unsupported chainId ${e} (supported: ${Object.keys(kt).join(", ")})`);let n=rL[t]||{};if(!A){if(!r.quoter||!r.router){let a=Object.keys(n).join(", ")||"none registered";throw new Error(`uniswap-v3: chain ${t} (${r.name}) has no canonical Uniswap v3 deployment -- name a venue explicitly (known: ${a})`)}return{chainId:t,venue:r.name,...r}}let s=String(A).toLowerCase();if(s===r.name&&r.quoter&&r.router)return{chainId:t,venue:r.name,...r};let o=n,i=o[s];if(!i){let a=[...r.quoter&&r.router?[r.name]:[],...Object.keys(o)].join(", ");throw new Error(`uniswap-v3: unknown venue "${A}" on chain ${t} (known: ${a})`)}return{chainId:t,venue:s,...r,quoter:i.quoter,router:i.router,feeTiers:i.feeTiers||null}}function Zd(e,A){let t=kt[Number(A)];if(!e||e===AL||e===tL||/^eth$/i.test(String(e)))return Go(t.weth);let r=String(e);if(/^weth$/i.test(r))return Go(t.weth);if(/^usdc$/i.test(r))return Go(t.usdc);if(!$M(r))throw new Error(`invalid token address: ${e}`);return Go(r)}function sL(e){let A=String(e||"uniswap").toLowerCase();return A==="uniswap"?["uniswap-v3","uniswap"]:A==="pancakeswap"?["pancakeswap-v3","pancakeswap"]:A==="hyperswap"?["hyperswap-v3","hyperswap"]:[A,`${A}-v3`]}async function Kd(e={},A={}){let{chainId:t,quoter:r,router:n,feeTiers:s}=nL(e.chainId??8453,e.venue),o=Zd(e.tokenIn||"WETH",t),i=Zd(e.tokenOut||kt[t].usdc,t),a=BigInt(e.amountIn??0);if(a<=0n)throw new Error("amountIn required (raw base units)");let c=s&&s.length?s:eL,l=e.fee!=null?[Number(e.fee)]:e.tryFees===!1?[c[Math.min(2,c.length-1)]]:[...c],u=[],g=null;for(let I of l){let C=_d.encodeFunctionData("quoteExactInputSingle",[{tokenIn:o,tokenOut:i,amountIn:a,fee:I,sqrtPriceLimitX96:0n}]);try{let B=await Nn(t,"eth_call",[{to:r,data:C},"latest"],A);if(!B||B==="0x"){u.push({fee:I,ok:!1,error:"empty result"});continue}let h=_d.decodeFunctionResult("quoteExactInputSingle",B),y={fee:I,ok:!0,amountOut:h[0].toString(),sqrtPriceX96After:h[1].toString(),initializedTicksCrossed:Number(h[2]),gasEstimate:h[3].toString()};u.push(y),(!g||BigInt(y.amountOut)>BigInt(g.amountOut))&&(g=y)}catch(B){u.push({fee:I,ok:!1,error:String(B.message||B).slice(0,160)})}}if(!g){let I=u.map(C=>`${C.fee}:${C.error||"fail"}`).join("; ");throw new Error(`uniswap-v3 quote failed chain=${t}: ${I}`)}let E=e.liquidityUsd==null?await Yo({chainId:t,tokenA:o,tokenB:i,dexIds:sL(e.venue)},A).catch(()=>null):null,Q=e.liquidityUsd??E?.liquidityUsd??null;return le({venue:"uniswap-v3",chainId:t,chain:kt[t].name,quoter:r,tokenIn:o,tokenOut:i,amountIn:a.toString(),fee:g.fee,amountOut:g.amountOut,gasEstimate:g.gasEstimate,liquidityUsd:Q,liquiditySource:E,sqrtPriceX96After:g.sqrtPriceX96After,initializedTicksCrossed:g.initializedTicksCrossed,triedFees:u,best:!0},{chainId:t,venue:n,amountOut:g.amountOut,liquidityUsd:Q,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps})}import{AbiCoder as oL,Interface as $d,getAddress as lA,isAddress as Jo,keccak256 as iL}from"ethers";SA();UA();var aL=oL.defaultAbiCoder(),Fr="0x0000000000000000000000000000000000000000",Ft={1:{name:"ethereum",poolManager:"0x000000000004444c5dc75cB358380D2e3dE08A90",quoter:"0x52f0e24d1c21c8a0cb1e5a5dd6198556bd9e1203",stateView:"0x7ffe42c4a5deea5b0fec41c94c136cf115597227",universalRouter:"0x66a9893cc07d91d95644aedd05d03f95e1dba8af",weth:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",usdc:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},10:{name:"optimism",poolManager:"0x9a13f98cb987694c9f086b1f5eb990eea8264ec3",quoter:"0x1f3131a13296fb91c90870043742c3cdbff1a8d7",stateView:"0xc18a3169788f4f75a170290584eca6395c75ecdb",universalRouter:"0x851116d9223fabed8e56c0e6b8ad0c31d98b3507",weth:"0x4200000000000000000000000000000000000006",usdc:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"},56:{name:"bsc",poolManager:"0x28e2ea090877bf75740558f6bfb36a5ffee9e9df",quoter:"0x9f75dd27d6664c475b90e105573e550ff69437b0",stateView:"0xd13dd3d6e93f276fafc9db9e6bb47c1180aee0c4",universalRouter:"0x1906c1d672b88cd1b9ac7593301ca990f94eae07",weth:"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",usdc:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"},137:{name:"polygon",poolManager:"0x67366782805870060151383f4bbff9dab53e5cd6",quoter:"0xb3d5c3dfc3a7aebff71895a7191796bffc2c81b9",stateView:"0x5ea1bd7974c8a611cbab0bdcafcb1d9cc9b3ba5a",universalRouter:"0x1095692a6237d83c6a72f3f5efedb9a670c49223",weth:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",usdc:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"},8453:{name:"base",poolManager:"0x498581fF718922c3f8e6A244956aF099B2652b2b",quoter:"0x0d5e0f971ed27fbff6c2837bf31316121532048d",stateView:"0xa3c0c9b65bad0b08107aa264b0f3db444b867a71",universalRouter:"0x6ff5693b99212da76ad316178a184ab56d299b43",weth:"0x4200000000000000000000000000000000000006",usdc:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},42161:{name:"arbitrum",poolManager:"0x360e68faccca8ca495c1b759fd9eee466db9fb32",quoter:"0x3972c00f7ed4885e145823eb7c655375d275a1c5",stateView:"0x76fd297e2d437cd7f76d50f01afe6160f86e9990",universalRouter:"0xa51afafe0263b40edaef0df8781ea9aa03e381a3",weth:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",usdc:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},43114:{name:"avalanche",poolManager:"0x06380c0e0912312b5150364b9dc4542ba0dbbc85",quoter:"0xbe40675bb704506a3c2ccfb762dcfd1e979845c2",stateView:"0xc3c9e198c735a4b97e3e683f391ccbdd60b69286",universalRouter:"0x94b75331ae8d42c1b61065089b7d48fe14aa73b7",weth:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",usdc:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"},4663:{name:"robinhood",poolManager:"0x8366a39cc670b4001a1121b8f6a443a643e40951",quoter:"0x8dc178efb8111bb0973dd9d722ebeff267c98f94",stateView:"0xf3334192d15450cdd385c8b70e03f9a6bd9e673b",universalRouter:"0x8876789976dEcBfCbBbe364623C63652db8C0904",weth:"0x0bd7d308f8e1639fab988df18a8011f41eacad73",usdc:"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},cL=[{fee:100,tickSpacing:1},{fee:500,tickSpacing:10},{fee:3e3,tickSpacing:60},{fee:1e4,tickSpacing:200},{fee:25e3,tickSpacing:8}],Xd=new $d(["function quoteExactInputSingle(((address currency0,address currency1,uint24 fee,int24 tickSpacing,address hooks) poolKey,bool zeroForOne,uint128 exactAmount,bytes hookData) params) returns (uint256 amountOut, uint256 gasEstimate)"]),QY=new $d(["function execute(bytes commands,bytes[] inputs,uint256 deadline) payable"]);var gL="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";function uL(e){let A=Number(e),t=Ft[A];if(!t)throw new Error(`uniswap-v4: unsupported chainId ${e} (supported: ${Object.keys(Ft).join(", ")})`);return{chainId:A,...t}}function jd(e,A){let t=Ft[Number(A)];if(!e||e===gL||e===Fr||/^eth$/i.test(String(e)))return lA(t.weth);let r=String(e);if(/^weth$/i.test(r))return lA(t.weth);if(/^usdc$/i.test(r)||/^usdg$/i.test(r))return lA(t.usdc);if(!Jo(r))throw new Error(`invalid token address: ${e}`);return lA(r)}function lL({currency0:e,currency1:A,fee:t,tickSpacing:r,hooks:n=Fr}){let s=lA(e),o=lA(A);if(s.toLowerCase()===o.toLowerCase())throw new Error("poolKey currencies must differ");let[i,a]=s.toLowerCase()<o.toLowerCase()?[s,o]:[o,s],c=n&&Jo(n)?lA(n):Fr;return iL(aL.encode(["address","address","uint24","int24","address"],[i,a,Number(t),Number(r),c]))}function EL({tokenIn:e,tokenOut:A,fee:t,tickSpacing:r,hooks:n=Fr}){let s=lA(e),o=lA(A),[i,a]=s.toLowerCase()<o.toLowerCase()?[s,o]:[o,s],c=s.toLowerCase()===i.toLowerCase();return{poolKey:{currency0:i,currency1:a,fee:Number(t),tickSpacing:Number(r),hooks:n&&Jo(n)?lA(n):Fr},zeroForOne:c}}var QL=["uniswap-v4","uniswapv4"];async function ef(e={},A={}){let{chainId:t,quoter:r,poolManager:n,universalRouter:s}=uL(e.chainId??8453),o=jd(e.tokenIn||"WETH",t),i=jd(e.tokenOut||Ft[t].usdc,t),a=BigInt(e.amountIn??0);if(a<=0n)throw new Error("amountIn required (raw base units)");if(a>0xffffffffffffffffffffffffffffffffn)throw new Error("amountIn exceeds uint128");let c=e.fee!=null&&e.tickSpacing!=null?[{fee:Number(e.fee),tickSpacing:Number(e.tickSpacing)}]:e.tryTiers===!1?[{fee:500,tickSpacing:10}]:[...cL],l=e.hooks||Fr,u=[],g=null;for(let I of c){let{poolKey:C,zeroForOne:B}=EL({tokenIn:o,tokenOut:i,fee:I.fee,tickSpacing:I.tickSpacing,hooks:l}),h=Xd.encodeFunctionData("quoteExactInputSingle",[{poolKey:C,zeroForOne:B,exactAmount:a,hookData:"0x"}]);try{let y=await Nn(t,"eth_call",[{to:r,data:h},"latest"],A);if(!y||y==="0x"){u.push({...I,ok:!1,error:"empty result"});continue}let m=Xd.decodeFunctionResult("quoteExactInputSingle",y),T={fee:I.fee,tickSpacing:I.tickSpacing,ok:!0,amountOut:m[0].toString(),gasEstimate:m[1].toString(),poolKey:C,zeroForOne:B,poolId:lL({...C})};u.push(T),(!g||BigInt(T.amountOut)>BigInt(g.amountOut))&&(g=T)}catch(y){u.push({...I,ok:!1,error:String(y.message||y).slice(0,160)})}}if(!g){let I=u.map(C=>`${C.fee}/${C.tickSpacing}:${C.error||"fail"}`).join("; ");throw new Error(`uniswap-v4 quote failed chain=${t}: ${I}`)}let E=e.liquidityUsd==null?await Yo({chainId:t,tokenA:o,tokenB:i,dexIds:QL},A).catch(()=>null):null,Q=e.liquidityUsd??E?.liquidityUsd??null;return le({venue:"uniswap-v4",chainId:t,chain:Ft[t].name,poolManager:n,quoter:r,universalRouter:s||null,tokenIn:o,tokenOut:i,amountIn:a.toString(),fee:g.fee,tickSpacing:g.tickSpacing,hooks:g.poolKey.hooks,poolId:g.poolId,zeroForOne:g.zeroForOne,amountOut:g.amountOut,gasEstimate:g.gasEstimate,liquidityUsd:Q,liquiditySource:E,triedTiers:u,best:!0,executionReady:!1,prepareReady:typeof e.recipient=="string"&&Jo(e.recipient)&&e.slippageBps!=null},{chainId:t,venue:s||r,amountOut:g.amountOut,liquidityUsd:Q,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps})}uA();var BL="https://coins.llama.fi",IL="https://api.llama.fi";function CL(e={}){return(e.baseUrl||process.env.DEFILLAMA_COINS_URL||BL).replace(/\/$/,"")}function hL(e={}){return(e.baseUrl||process.env.DEFILLAMA_API_URL||IL).replace(/\/$/,"")}async function vo(e,A={}){if(!Array.isArray(e)||!e.length)throw new Error("llamaPrices requires coins[]");let t=e.map(encodeURIComponent).join(",");return ne(`${CL(A)}/prices/current/${t}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs})}async function Af(e={}){return ne(`${hL(e)}/protocols`,{fetchImpl:e.fetchImpl,timeoutMs:e.timeoutMs??2e4})}var EA=e=>{let A=Number(e);return Number.isFinite(A)?A:null};function Ho(e){if(!Array.isArray(e))return null;let A=0,t=!1;for(let r of e){let n=EA(r?.amountUSD);n!=null&&(A+=n,t=!0)}return t?A:null}async function cf(e,A={}){let t=Ng[Number(e)];if(!t)return null;try{let r=await vo([t],A);return EA(r?.coins?.[t]?.price)}catch{return null}}var XA=e=>String(e??"").toLowerCase().replace(/[^a-z0-9]/g,""),af=Object.freeze({across:["across"],relay:["relaychain","relay"],lifi:["jumper-(li.fi-powered)","lifi"],stargate:["stargate-v2","stargate-v1","stargate"],hop:["hop-protocol","hop"],debridge:["debridge"],synapse:["synapse"],connext:["connext"],cbridge:["celer-bridge","celer-cbridge","cbridge"],celer:["celer-bridge","celer-cbridge","cbridge"],squid:["squid"],symbiosis:["symbiosis"],wormhole:["wormhole"],mayan:["mayan"],allbridge:["allbridge"],thorchain:["thorchain"]});async function yL(e={}){try{let A=await Af({...e,baseUrl:e.defillamaApiBaseUrl,timeoutMs:e.defillamaTimeoutMs??Math.min(Number(e.timeoutMs??5e3),5e3)});return Array.isArray(A)?A:[]}catch{return[]}}function DL(e,A={}){let t=XA(A.tool||A.provider||A.bridge||A.protocol),r=[];return e==="lifi"&&t&&t!=="lifi"&&r.push(...af[t]||[t]),r.push(...af[XA(e)]||[e]),r}function bL(e,A,t={}){let r=Array.isArray(e)?e:[],n=DL(A,t).map(XA).filter(Boolean);for(let s of n){let o=r.find(a=>XA(a?.slug)===s||XA(a?.name)===s),i=EA(o?.tvl);if(i!=null)return{liquidityUsd:i,protocol:o?.name??o?.slug??s}}for(let s of n){let o=r.find(a=>{let c=XA(a?.category);return!c.includes("bridge")&&!c.includes("crosschain")?!1:XA(a?.slug).includes(s)||XA(a?.name).includes(s)}),i=EA(o?.tvl);if(i!=null)return{liquidityUsd:i,protocol:o?.name??o?.slug??s}}return null}function kg({chainId:e,tokenIn:A,tokenOut:t,amountIn:r,taker:n,slippageBps:s,decimalsIn:o,decimalsOut:i,nativePriceUsd:a=null,destDecimalsPromise:c=null,opts:l={}}){let u=[];return u.push({source:"lifi",run:async()=>{let g=await wg({fromChain:e,toChain:e,fromToken:A,toToken:t,fromAmount:r},l),E=g?.estimate??g?.[0]?.estimate;return{amountOut:E?.toAmount,minOut:E?.toAmountMin,gasUsd:Ho(E?.gasCosts),feeUsd:Ho(E?.feeCosts),oracleFeeBps:g?.oracleFee?.applies?g.oracleFee.bps:0,meta:{tool:g?.tool??g?.toolDetails?.name,oracleFee:g?.oracleFee??null}}}}),o!=null&&u.push({source:"paraswap",run:async()=>{let g=i??(await Promise.resolve(c))?.decimals;if(g==null)throw new Error("paraswap needs destination decimals; none supplied or resolvable");let E=await Ud({chainId:e,srcToken:A,destToken:t,amount:r,srcDecimals:o,destDecimals:g},l),Q=E?.priceRoute;return{amountOut:Q?.destAmount,gasUsd:EA(Q?.gasCostUSD),oracleFeeBps:E?.oracleFee?.applies?E.oracleFee.bps:0,meta:{bestRoute:Q?.bestRoute?.[0]?.swaps?.[0]?.swapExchanges?.[0]?.exchange,oracleFee:E?.oracleFee??null}}}}),process.env.ZEROX_API_KEY&&u.push({source:"0x",run:async()=>{let g=await Yd({chainId:e,sellToken:A,buyToken:t,sellAmount:r,taker:n},l),E=null,Q=g?.totalNetworkFee,I=await Promise.resolve(a);return Q!=null&&I&&(E=Number(Q)/1e18*I),{amountOut:g?.buyAmount,minOut:g?.minBuyAmount,gasUsd:E,meta:{source:g?.route?.fills?.[0]?.source}}}}),process.env.ONEINCH_API_KEY&&u.push({source:"1inch",run:async()=>{let g=await vd({chainId:e,src:A,dst:t,amount:r},l),E=null;return g?.gas!=null&&a&&(E=null),{amountOut:g?.dstAmount,gasUsd:E,meta:{gasUnits:g?.gas}}}}),u.push({source:"cow",run:async()=>{let g=await Vd({chainId:e,sellToken:A,buyToken:t,sellAmountBeforeFee:String(r),from:n},l),E=g?.quote??g,Q=E?.feeAmount;return{amountOut:E?.buyAmount,gasUsd:0,meta:{intent:!0,feeAmountInSellToken:Q,settlement:"solver-executed"}}}}),kt[Number(e)]&&u.push({source:"uniswap-v3",run:async()=>{let g=await Kd({chainId:e,tokenIn:A,tokenOut:t,amountIn:r},l);return{amountOut:g?.amountOut,minOut:g?.minOut??g?.amountOutMinimum??null,gasUsd:null,liquidityUsd:g?.liquidityUsd??null,meta:{onchain:!0,fee:g?.fee,gasUnits:g?.gasEstimate,quoter:g?.quoter}}}}),Ft[Number(e)]&&u.push({source:"uniswap-v4",run:async()=>{let g=await ef({chainId:e,tokenIn:A,tokenOut:t,amountIn:r,recipient:n,slippageBps:s},l);return{amountOut:g?.amountOut,minOut:g?.minOut??g?.amountOutMinimum??null,gasUsd:null,liquidityUsd:g?.liquidityUsd??null,meta:{onchain:!0,venue:"uniswap-v4",fee:g?.fee,tickSpacing:g?.tickSpacing,poolId:g?.poolId,hooks:g?.hooks,gasUnits:g?.gasEstimate,quoter:g?.quoter,poolManager:g?.poolManager,prepareReady:g?.prepareReady===!0,executionReady:!1}}}}),u}function gf({fromChainId:e,toChainId:A,tokenIn:t,tokenOut:r,amountIn:n,taker:s,opts:o={}}){let i=[],a=null,c=async(l,u={})=>(a||=yL(o),bL(await a,l,u));return i.push({source:"lifi",run:async()=>{let l=await wg({fromChain:e,toChain:A,fromToken:t,toToken:r,fromAmount:n},o),u=l?.estimate??l?.[0]?.estimate,g={tool:l?.tool??l?.toolDetails?.name,durationSeconds:EA(u?.executionDuration)},E=await c("lifi",g);return{amountOut:u?.toAmount,minOut:u?.toAmountMin,gasUsd:Ho(u?.gasCosts),feeUsd:Ho(u?.feeCosts),oracleFeeBps:l?.oracleFee?.applies?l.oracleFee.bps:0,liquidityUsd:E?.liquidityUsd??null,meta:{...g,liquidityProtocol:E?.protocol,oracleFee:l?.oracleFee??null}}}}),i.push({source:"relay",run:async()=>{let{relayQuote:l}=await Promise.resolve().then(()=>(bg(),Dg)),g=(await l({user:s,originChainId:e,destinationChainId:A,originCurrency:t,destinationCurrency:r,amount:String(n)},o))?.details,E={durationSeconds:EA(g?.timeEstimate),rate:g?.rate},Q=await c("relay",E);return{amountOut:g?.currencyOut?.amount,minOut:g?.currencyOut?.minimumAmount,gasUsd:EA(g?.totalImpact?.usd)!=null?Math.abs(EA(g.totalImpact.usd)):null,liquidityUsd:Q?.liquidityUsd??null,meta:{...E,liquidityProtocol:Q?.protocol}}}}),i.push({source:"across",run:async()=>{let{acrossSuggestedFees:l}=await Promise.resolve().then(()=>(bg(),Dg)),u=await l({token:t,destinationToken:r,originChainId:e,destinationChainId:A,amount:String(n)},o),g=u?.totalRelayFee?.total,E=null;if(g!=null)try{let I=BigInt(String(n))-BigInt(String(g));I>0n&&(E=I.toString())}catch{}let Q=await c("across");return{amountOut:E,gasUsd:null,liquidityUsd:Q?.liquidityUsd??null,meta:{derivedFromFees:!0,durationSeconds:EA(u?.estimatedFillTimeSec),limits:u?.limits?{min:u.limits.minDeposit,max:u.limits.maxDeposit}:void 0,liquidityProtocol:Q?.protocol}}}}),i}var kL={1:"ethereum",10:"optimism",56:"bsc",137:"polygon",8453:"base",42161:"arbitrum",43114:"avax"};async function uf(e,A,t){let r=kL[Number(e)];if(!r)return{priceUsd:null,decimals:null};let n=`${r}:${A}`;try{let o=(await vo([n],t))?.coins?.[n],i=Number(o?.price),a=Number(o?.decimals);return{priceUsd:Number.isFinite(i)?i:null,decimals:Number.isFinite(a)?a:null}}catch{return{priceUsd:null,decimals:null}}}async function GY(e,A={}){let{chainId:t,tokenIn:r,tokenOut:n,amountIn:s}=e;if(t==null||!r||!n||s==null)throw new Error("bestSwapRoute requires chainId, tokenIn, tokenOut, amountIn");let o=cf(t,A),i=uf(t,n,A),a=Pd(t,A).catch(()=>null),c=kg({...e,nativePriceUsd:o,decimalsOut:e.decimalsOut,destDecimalsPromise:i,opts:A}),[l,u,g]=await Promise.all([Mn(c,{timeoutMs:A.timeoutMs??12e3}),i,a]);o.catch(()=>{});let E=await o.then(C=>C,()=>null),Q=Oo(l,{destPriceUsd:u.priceUsd,destDecimals:e.decimalsOut??u.decimals,liquidityBandBps:A.liquidityBandBps??50,gasPriceWei:g,nativePriceUsd:E}),I=A.maxImpactPct===void 0?25:A.maxImpactPct;if(I!=null&&Q.best){let C=Q.best.source,h=await Ug(async y=>{let m=kg({...e,amountIn:y.toString(),nativePriceUsd:o,decimalsOut:e.decimalsOut,destDecimalsPromise:i,opts:A}).filter(_=>_.source===C);return m.length?(await Mn(m,{timeoutMs:A.timeoutMs??12e3}))?.[0]?.amountOut??null:null},s);if(h){let y=Mg(Q,{[C]:h},{maxImpactPct:I});return{kind:"swap",chainId:t,tokenIn:r,tokenOut:n,amountIn:String(s),...y,sourcesTried:c.length,sourcesAnswered:l.filter(m=>m.quality!==eA.FAILED).length,note:Fg(y,c.length),priceImpact:{[C]:Number(h.impactPct.toFixed(2))}}}}return{kind:"swap",chainId:t,tokenIn:r,tokenOut:n,amountIn:String(s),...Q,sourcesTried:c.length,sourcesAnswered:l.filter(C=>C.quality!==eA.FAILED).length,note:Fg(Q,c.length)}}async function JY(e,A={}){let{fromChainId:t,toChainId:r,tokenIn:n,tokenOut:s,amountIn:o}=e;if(t==null||r==null||!n||!s||o==null)throw new Error("bestBridgeRoute requires fromChainId, toChainId, tokenIn, tokenOut, amountIn");if(Number(t)===Number(r))throw new Error("bestBridgeRoute is for cross-chain; use bestSwapRoute for same-chain");let i=uf(r,s,A),a=gf({...e,opts:A}),[c,l]=await Promise.all([Mn(a,{timeoutMs:A.timeoutMs??15e3}),i]),u=Oo(c,{destPriceUsd:l.priceUsd,destDecimals:e.decimalsOut??l.decimals,liquidityBandBps:A.liquidityBandBps??50}),g=u.routes.map(E=>({source:E.source,seconds:E.meta?.durationSeconds??null})).filter(E=>E.seconds!=null);return{kind:"bridge",fromChainId:t,toChainId:r,tokenIn:n,tokenOut:s,amountIn:String(o),...u,durations:g,sourcesTried:a.length,sourcesAnswered:c.filter(E=>E.quality!==eA.FAILED).length,note:Fg(u,a.length)}}function FL(e){let A=e?.meta?.oracleFee;return A?.applies?` \xB7 ${Fd(A)}`:""}function Fg(e,A){if(!e.best)return"no source returned a usable route";let t=e.routes.length,r=FL(e.best);if(t===1)return`only 1 of ${A} sources answered, so this is the ONLY route, not a proven best one. Treat it as unbenchmarked.`+r;if(e.improvementBps!=null){let n=e.improvementBps,s=n/100;if(n<.01)return`best of ${t} routes, ranked on ${e.rankedOn}: effectively tied with the runner-up (${e.spreadBasis}), inside quote noise. Re-quote before you size up.`+r;let o=s>=.01?`${s.toFixed(2)}%`:`${n.toFixed(2)}bps`;return`best of ${t} routes, ranked on ${e.rankedOn}: ${o} better than the runner-up (${e.spreadBasis})`+r}return`best of ${t} routes, ranked on ${e.rankedOn}. No spread quoted: the top routes report cost differently, so the margin is not comparable.`+r}export{eA as QUALITY,JY as bestBridgeRoute,GY as bestSwapRoute,Fg as formatComparisonNote};
44
+ `.trim())}};jB.exports=wc});var Js=f((_T,rI)=>{"use strict";var eI=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dk}=v(),fk=er();tI()===void 0&&AI(new fk);function AI(e){if(!e||typeof e.dispatch!="function")throw new dk("Argument agent must implement Agent");Object.defineProperty(globalThis,eI,{value:e,writable:!0,enumerable:!1,configurable:!1})}function tI(){return globalThis[eI]}rI.exports={setGlobalDispatcher:AI,getGlobalDispatcher:tI}});var vs=f((zT,nI)=>{"use strict";nI.exports=class{#e;constructor(A){if(typeof A!="object"||A===null)throw new TypeError("handler must be an object");this.#e=A}onConnect(...A){return this.#e.onConnect?.(...A)}onError(...A){return this.#e.onError?.(...A)}onUpgrade(...A){return this.#e.onUpgrade?.(...A)}onResponseStarted(...A){return this.#e.onResponseStarted?.(...A)}onHeaders(...A){return this.#e.onHeaders?.(...A)}onData(...A){return this.#e.onData?.(...A)}onComplete(...A){return this.#e.onComplete?.(...A)}onBodySent(...A){return this.#e.onBodySent?.(...A)}}});var oI=f((KT,sI)=>{"use strict";var pk=hs();sI.exports=e=>{let A=e?.maxRedirections;return t=>function(n,s){let{maxRedirections:o=A,...i}=n;if(!o)return t(n,s);let a=new pk(t,o,n,s);return t(i,a)}}});var aI=f((XT,iI)=>{"use strict";var wk=Rs();iI.exports=e=>A=>function(r,n){return A(r,new wk({...r,retryOptions:{...e,...r.retryOptions}},{handler:n,dispatch:A}))}});var gI=f((jT,cI)=>{"use strict";var mk=x(),{InvalidArgumentError:yk,RequestAbortedError:Dk}=v(),bk=vs(),mc=class extends bk{#e=1024*1024;#A=null;#t=!1;#s=!1;#n=0;#r=null;#o=null;constructor({maxSize:A},t){if(super(t),A!=null&&(!Number.isFinite(A)||A<1))throw new yk("maxSize must be a number greater than 0");this.#e=A??this.#e,this.#o=t}onConnect(A){this.#A=A,this.#o.onConnect(this.#i.bind(this))}#i(A){this.#s=!0,this.#r=A}onHeaders(A,t,r,n){let o=mk.parseHeaders(t)["content-length"];if(o!=null&&o>this.#e)throw new Dk(`Response size (${o}) larger than maxSize (${this.#e})`);return this.#s?!0:this.#o.onHeaders(A,t,r,n)}onError(A){this.#t||(A=this.#r??A,this.#o.onError(A))}onData(A){return this.#n=this.#n+A.length,this.#n>=this.#e&&(this.#t=!0,this.#s?this.#o.onError(this.#r):this.#o.onComplete([])),!0}onComplete(A){if(!this.#t){if(this.#s){this.#o.onError(this.reason);return}this.#o.onComplete(A)}}};function kk({maxSize:e}={maxSize:1024*1024}){return A=>function(r,n){let{dumpMaxSize:s=e}=r,o=new mc({maxSize:s},n);return A(r,o)}}cI.exports=kk});var EI=f(($T,lI)=>{"use strict";var{isIP:Fk}=d("node:net"),{lookup:Rk}=d("node:dns"),Sk=vs(),{InvalidArgumentError:ur,InformationalError:Nk}=v(),uI=Math.pow(2,31)-1,yc=class{#e=0;#A=0;#t=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#e=A.maxTTL,this.#A=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#s,this.pick=A.pick??this.#n}get full(){return this.#t.size===this.#A}runLookup(A,t,r){let n=this.#t.get(A.hostname);if(n==null&&this.full){r(null,A.origin);return}let s={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...t.dns,maxTTL:this.#e,maxItems:this.#A};if(n==null)this.lookup(A,s,(o,i)=>{if(o||i==null||i.length===0){r(o??new Nk("No DNS entries found"));return}this.setRecords(A,i);let a=this.#t.get(A.hostname),c=this.pick(A,a,s.affinity),l;typeof c.port=="number"?l=`:${c.port}`:A.port!==""?l=`:${A.port}`:l="",r(null,`${A.protocol}//${c.family===6?`[${c.address}]`:c.address}${l}`)});else{let o=this.pick(A,n,s.affinity);if(o==null){this.#t.delete(A.hostname),this.runLookup(A,t,r);return}let i;typeof o.port=="number"?i=`:${o.port}`:A.port!==""?i=`:${A.port}`:i="",r(null,`${A.protocol}//${o.family===6?`[${o.address}]`:o.address}${i}`)}}#s(A,t,r){Rk(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(n,s)=>{if(n)return r(n);let o=new Map;for(let i of s)o.set(`${i.address}:${i.family}`,i);r(null,o.values())})}#n(A,t,r){let n=null,{records:s,offset:o}=t,i;if(this.dualStack?(r==null&&(o==null||o===uI?(t.offset=0,r=4):(t.offset++,r=(t.offset&1)===1?6:4)),s[r]!=null&&s[r].ips.length>0?i=s[r]:i=s[r===4?6:4]):i=s[r],i==null||i.ips.length===0)return n;i.offset==null||i.offset===uI?i.offset=0:i.offset++;let a=i.offset%i.ips.length;return n=i.ips[a]??null,n==null?n:Date.now()-n.timestamp>n.ttl?(i.ips.splice(a,1),this.pick(A,t,r)):n}setRecords(A,t){let r=Date.now(),n={records:{4:null,6:null}};for(let s of t){s.timestamp=r,typeof s.ttl=="number"?s.ttl=Math.min(s.ttl,this.#e):s.ttl=this.#e;let o=n.records[s.family]??{ips:[]};o.ips.push(s),n.records[s.family]=o}this.#t.set(A.hostname,n)}getHandler(A,t){return new Dc(this,A,t)}},Dc=class extends Sk{#e=null;#A=null;#t=null;#s=null;#n=null;constructor(A,{origin:t,handler:r,dispatch:n},s){super(r),this.#n=t,this.#s=r,this.#A={...s},this.#e=A,this.#t=n}onError(A){switch(A.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#e.dualStack){this.#e.runLookup(this.#n,this.#A,(t,r)=>{if(t)return this.#s.onError(t);let n={...this.#A,origin:r};this.#t(n,this)});return}this.#s.onError(A);return}case"ENOTFOUND":this.#e.deleteRecord(this.#n);default:this.#s.onError(A);break}}};lI.exports=e=>{if(e?.maxTTL!=null&&(typeof e?.maxTTL!="number"||e?.maxTTL<0))throw new ur("Invalid maxTTL. Must be a positive number");if(e?.maxItems!=null&&(typeof e?.maxItems!="number"||e?.maxItems<1))throw new ur("Invalid maxItems. Must be a positive number and greater than zero");if(e?.affinity!=null&&e?.affinity!==4&&e?.affinity!==6)throw new ur("Invalid affinity. Must be either 4 or 6");if(e?.dualStack!=null&&typeof e?.dualStack!="boolean")throw new ur("Invalid dualStack. Must be a boolean");if(e?.lookup!=null&&typeof e?.lookup!="function")throw new ur("Invalid lookup. Must be a function");if(e?.pick!=null&&typeof e?.pick!="function")throw new ur("Invalid pick. Must be a function");let A=e?.dualStack??!0,t;A?t=e?.affinity??null:t=e?.affinity??4;let r={maxTTL:e?.maxTTL??1e4,lookup:e?.lookup??null,pick:e?.pick??null,dualStack:A,affinity:t,maxItems:e?.maxItems??1/0},n=new yc(r);return s=>function(i,a){let c=i.origin.constructor===URL?i.origin:new URL(i.origin);return Fk(c.hostname)!==0?s(i,a):(n.runLookup(c,i,(l,u)=>{if(l)return a.onError(l);let g=null;g={...i,servername:c.hostname,origin:u,headers:{host:c.hostname,...i.headers}},s(g,n.getHandler({origin:c,dispatch:s,handler:a},i))}),!0)}}});var Ct=f((ex,fI)=>{"use strict";var{kConstruct:Uk}=j(),{kEnumerableProperty:lr}=x(),{iteratorMixin:Mk,isValidHeaderName:gn,isValidHeaderValue:BI}=be(),{webidl:J}=ue(),bc=d("node:assert"),Hs=d("node:util"),ie=Symbol("headers map"),Se=Symbol("headers map sorted");function QI(e){return e===10||e===13||e===9||e===32}function II(e){let A=0,t=e.length;for(;t>A&&QI(e.charCodeAt(t-1));)--t;for(;t>A&&QI(e.charCodeAt(A));)++A;return A===0&&t===e.length?e:e.substring(A,t)}function CI(e,A){if(Array.isArray(A))for(let t=0;t<A.length;++t){let r=A[t];if(r.length!==2)throw J.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${r.length}.`});kc(e,r[0],r[1])}else if(typeof A=="object"&&A!==null){let t=Object.keys(A);for(let r=0;r<t.length;++r)kc(e,t[r],A[t[r]])}else throw J.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})}function kc(e,A,t){if(t=II(t),gn(A)){if(!BI(t))throw J.errors.invalidArgument({prefix:"Headers.append",value:t,type:"header value"})}else throw J.errors.invalidArgument({prefix:"Headers.append",value:A,type:"header name"});if(dI(e)==="immutable")throw new TypeError("immutable");return Fc(e).append(A,t,!1)}function hI(e,A){return e[0]<A[0]?-1:1}var Vs=class e{cookies=null;constructor(A){A instanceof e?(this[ie]=new Map(A[ie]),this[Se]=A[Se],this.cookies=A.cookies===null?null:[...A.cookies]):(this[ie]=new Map(A),this[Se]=null)}contains(A,t){return this[ie].has(t?A:A.toLowerCase())}clear(){this[ie].clear(),this[Se]=null,this.cookies=null}append(A,t,r){this[Se]=null;let n=r?A:A.toLowerCase(),s=this[ie].get(n);if(s){let o=n==="cookie"?"; ":", ";this[ie].set(n,{name:s.name,value:`${s.value}${o}${t}`})}else this[ie].set(n,{name:A,value:t});n==="set-cookie"&&(this.cookies??=[]).push(t)}set(A,t,r){this[Se]=null;let n=r?A:A.toLowerCase();n==="set-cookie"&&(this.cookies=[t]),this[ie].set(n,{name:A,value:t})}delete(A,t){this[Se]=null,t||(A=A.toLowerCase()),A==="set-cookie"&&(this.cookies=null),this[ie].delete(A)}get(A,t){return this[ie].get(t?A:A.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:A,1:{value:t}}of this[ie])yield[A,t]}get entries(){let A={};if(this[ie].size!==0)for(let{name:t,value:r}of this[ie].values())A[t]=r;return A}rawValues(){return this[ie].values()}get entriesList(){let A=[];if(this[ie].size!==0)for(let{0:t,1:{name:r,value:n}}of this[ie])if(t==="set-cookie")for(let s of this.cookies)A.push([r,s]);else A.push([r,n]);return A}toSortedArray(){let A=this[ie].size,t=new Array(A);if(A<=32){if(A===0)return t;let r=this[ie][Symbol.iterator](),n=r.next().value;t[0]=[n[0],n[1].value],bc(n[1].value!==null);for(let s=1,o=0,i=0,a=0,c=0,l,u;s<A;++s){for(u=r.next().value,l=t[s]=[u[0],u[1].value],bc(l[1]!==null),a=0,i=s;a<i;)c=a+(i-a>>1),t[c][0]<=l[0]?a=c+1:i=c;if(s!==c){for(o=s;o>a;)t[o]=t[--o];t[a]=l}}if(!r.next().done)throw new TypeError("Unreachable");return t}else{let r=0;for(let{0:n,1:{value:s}}of this[ie])t[r++]=[n,s],bc(s!==null);return t.sort(hI)}}},Ke=class e{#e;#A;constructor(A=void 0){J.util.markAsUncloneable(this),A!==Uk&&(this.#A=new Vs,this.#e="none",A!==void 0&&(A=J.converters.HeadersInit(A,"Headers contructor","init"),CI(this,A)))}append(A,t){J.brandCheck(this,e),J.argumentLengthCheck(arguments,2,"Headers.append");let r="Headers.append";return A=J.converters.ByteString(A,r,"name"),t=J.converters.ByteString(t,r,"value"),kc(this,A,t)}delete(A){if(J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.delete"),A=J.converters.ByteString(A,"Headers.delete","name"),!gn(A))throw J.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#A.contains(A,!1)&&this.#A.delete(A,!1)}get(A){J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.get");let t="Headers.get";if(A=J.converters.ByteString(A,t,"name"),!gn(A))throw J.errors.invalidArgument({prefix:t,value:A,type:"header name"});return this.#A.get(A,!1)}has(A){J.brandCheck(this,e),J.argumentLengthCheck(arguments,1,"Headers.has");let t="Headers.has";if(A=J.converters.ByteString(A,t,"name"),!gn(A))throw J.errors.invalidArgument({prefix:t,value:A,type:"header name"});return this.#A.contains(A,!1)}set(A,t){J.brandCheck(this,e),J.argumentLengthCheck(arguments,2,"Headers.set");let r="Headers.set";if(A=J.converters.ByteString(A,r,"name"),t=J.converters.ByteString(t,r,"value"),t=II(t),gn(A)){if(!BI(t))throw J.errors.invalidArgument({prefix:r,value:t,type:"header value"})}else throw J.errors.invalidArgument({prefix:r,value:A,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#A.set(A,t,!1)}getSetCookie(){J.brandCheck(this,e);let A=this.#A.cookies;return A?[...A]:[]}get[Se](){if(this.#A[Se])return this.#A[Se];let A=[],t=this.#A.toSortedArray(),r=this.#A.cookies;if(r===null||r.length===1)return this.#A[Se]=t;for(let n=0;n<t.length;++n){let{0:s,1:o}=t[n];if(s==="set-cookie")for(let i=0;i<r.length;++i)A.push([s,r[i]]);else A.push([s,o])}return this.#A[Se]=A}[Hs.inspect.custom](A,t){return t.depth??=A,`Headers ${Hs.formatWithOptions(t,this.#A.entries)}`}static getHeadersGuard(A){return A.#e}static setHeadersGuard(A,t){A.#e=t}static getHeadersList(A){return A.#A}static setHeadersList(A,t){A.#A=t}},{getHeadersGuard:dI,setHeadersGuard:Lk,getHeadersList:Fc,setHeadersList:Tk}=Ke;Reflect.deleteProperty(Ke,"getHeadersGuard");Reflect.deleteProperty(Ke,"setHeadersGuard");Reflect.deleteProperty(Ke,"getHeadersList");Reflect.deleteProperty(Ke,"setHeadersList");Mk("Headers",Ke,Se,0,1);Object.defineProperties(Ke.prototype,{append:lr,delete:lr,get:lr,has:lr,set:lr,getSetCookie:lr,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Hs.inspect.custom]:{enumerable:!1}});J.converters.HeadersInit=function(e,A,t){if(J.util.Type(e)==="Object"){let r=Reflect.get(e,Symbol.iterator);if(!Hs.types.isProxy(e)&&r===Ke.prototype.entries)try{return Fc(e).entriesList}catch{}return typeof r=="function"?J.converters["sequence<sequence<ByteString>>"](e,A,t,r.bind(e)):J.converters["record<ByteString, ByteString>"](e,A,t)}throw J.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})};fI.exports={fill:CI,compareHeaderName:hI,Headers:Ke,HeadersList:Vs,getHeadersGuard:dI,setHeadersGuard:Lk,setHeadersList:Tk,getHeadersList:Fc}});var ln=f((Ax,UI)=>{"use strict";var{Headers:bI,HeadersList:pI,fill:xk,getHeadersGuard:Yk,setHeadersGuard:kI,setHeadersList:FI}=Ct(),{extractBody:wI,cloneBody:Gk,mixinBody:Jk,hasFinalizationRegistry:RI,streamRegistry:SI,bodyUnusable:vk}=Wt(),Rc=x(),mI=d("node:util"),{kEnumerableProperty:Ne}=Rc,{isValidReasonPhrase:Hk,isCancelled:Vk,isAborted:qk,isBlobLike:Ok,serializeJavascriptValueToJSONString:Wk,isErrorLike:Pk,isomorphicEncode:_k,environmentSettingsObject:Zk}=be(),{redirectStatusSet:zk,nullBodyStatus:Kk}=Tr(),{kState:ee,kHeaders:DA}=LA(),{webidl:L}=ue(),{FormData:Xk}=Hr(),{URLSerializer:yI}=de(),{kConstruct:Os}=j(),Sc=d("node:assert"),{types:jk}=d("node:util"),$k=new TextEncoder("utf-8"),ht=class e{static error(){return un(Ws(),"immutable")}static json(A,t={}){L.argumentLengthCheck(arguments,1,"Response.json"),t!==null&&(t=L.converters.ResponseInit(t));let r=$k.encode(Wk(A)),n=wI(r),s=un(Er({}),"response");return DI(s,t,{body:n[0],type:"application/json"}),s}static redirect(A,t=302){L.argumentLengthCheck(arguments,1,"Response.redirect"),A=L.converters.USVString(A),t=L.converters["unsigned short"](t);let r;try{r=new URL(A,Zk.settingsObject.baseUrl)}catch(o){throw new TypeError(`Failed to parse URL from ${A}`,{cause:o})}if(!zk.has(t))throw new RangeError(`Invalid status code ${t}`);let n=un(Er({}),"immutable");n[ee].status=t;let s=_k(yI(r));return n[ee].headersList.append("location",s,!0),n}constructor(A=null,t={}){if(L.util.markAsUncloneable(this),A===Os)return;A!==null&&(A=L.converters.BodyInit(A)),t=L.converters.ResponseInit(t),this[ee]=Er({}),this[DA]=new bI(Os),kI(this[DA],"response"),FI(this[DA],this[ee].headersList);let r=null;if(A!=null){let[n,s]=wI(A);r={body:n,type:s}}DI(this,t,r)}get type(){return L.brandCheck(this,e),this[ee].type}get url(){L.brandCheck(this,e);let A=this[ee].urlList,t=A[A.length-1]??null;return t===null?"":yI(t,!0)}get redirected(){return L.brandCheck(this,e),this[ee].urlList.length>1}get status(){return L.brandCheck(this,e),this[ee].status}get ok(){return L.brandCheck(this,e),this[ee].status>=200&&this[ee].status<=299}get statusText(){return L.brandCheck(this,e),this[ee].statusText}get headers(){return L.brandCheck(this,e),this[DA]}get body(){return L.brandCheck(this,e),this[ee].body?this[ee].body.stream:null}get bodyUsed(){return L.brandCheck(this,e),!!this[ee].body&&Rc.isDisturbed(this[ee].body.stream)}clone(){if(L.brandCheck(this,e),vk(this))throw L.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=Nc(this[ee]);return RI&&this[ee].body?.stream&&SI.register(this,new WeakRef(this[ee].body.stream)),un(A,Yk(this[DA]))}[mI.inspect.custom](A,t){t.depth===null&&(t.depth=2),t.colors??=!0;let r={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${mI.formatWithOptions(t,r)}`}};Jk(ht);Object.defineProperties(ht.prototype,{type:Ne,url:Ne,status:Ne,ok:Ne,redirected:Ne,statusText:Ne,headers:Ne,clone:Ne,body:Ne,bodyUsed:Ne,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ht,{json:Ne,redirect:Ne,error:Ne});function Nc(e){if(e.internalResponse)return NI(Nc(e.internalResponse),e.type);let A=Er({...e,body:null});return e.body!=null&&(A.body=Gk(A,e.body)),A}function Er(e){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...e,headersList:e?.headersList?new pI(e?.headersList):new pI,urlList:e?.urlList?[...e.urlList]:[]}}function Ws(e){let A=Pk(e);return Er({type:"error",status:0,error:A?e:new Error(e&&String(e)),aborted:e&&e.name==="AbortError"})}function eF(e){return e.type==="error"&&e.status===0}function qs(e,A){return A={internalResponse:e,...A},new Proxy(e,{get(t,r){return r in A?A[r]:t[r]},set(t,r,n){return Sc(!(r in A)),t[r]=n,!0}})}function NI(e,A){if(A==="basic")return qs(e,{type:"basic",headersList:e.headersList});if(A==="cors")return qs(e,{type:"cors",headersList:e.headersList});if(A==="opaque")return qs(e,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(A==="opaqueredirect")return qs(e,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Sc(!1)}function AF(e,A=null){return Sc(Vk(e)),qk(e)?Ws(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:A})):Ws(Object.assign(new DOMException("Request was cancelled."),{cause:A}))}function DI(e,A,t){if(A.status!==null&&(A.status<200||A.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in A&&A.statusText!=null&&!Hk(String(A.statusText)))throw new TypeError("Invalid statusText");if("status"in A&&A.status!=null&&(e[ee].status=A.status),"statusText"in A&&A.statusText!=null&&(e[ee].statusText=A.statusText),"headers"in A&&A.headers!=null&&xk(e[DA],A.headers),t){if(Kk.includes(e.status))throw L.errors.exception({header:"Response constructor",message:`Invalid response status code ${e.status}`});e[ee].body=t.body,t.type!=null&&!e[ee].headersList.contains("content-type",!0)&&e[ee].headersList.append("content-type",t.type,!0)}}function un(e,A){let t=new ht(Os);return t[ee]=e,t[DA]=new bI(Os),FI(t[DA],e.headersList),kI(t[DA],A),RI&&e.body?.stream&&SI.register(t,new WeakRef(e.body.stream)),t}L.converters.ReadableStream=L.interfaceConverter(ReadableStream);L.converters.FormData=L.interfaceConverter(Xk);L.converters.URLSearchParams=L.interfaceConverter(URLSearchParams);L.converters.XMLHttpRequestBodyInit=function(e,A,t){return typeof e=="string"?L.converters.USVString(e,A,t):Ok(e)?L.converters.Blob(e,A,t,{strict:!1}):ArrayBuffer.isView(e)||jk.isArrayBuffer(e)?L.converters.BufferSource(e,A,t):Rc.isFormDataLike(e)?L.converters.FormData(e,A,t,{strict:!1}):e instanceof URLSearchParams?L.converters.URLSearchParams(e,A,t):L.converters.DOMString(e,A,t)};L.converters.BodyInit=function(e,A,t){return e instanceof ReadableStream?L.converters.ReadableStream(e,A,t):e?.[Symbol.asyncIterator]?e:L.converters.XMLHttpRequestBodyInit(e,A,t)};L.converters.ResponseInit=L.dictionaryConverter([{key:"status",converter:L.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:L.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:L.converters.HeadersInit}]);UI.exports={isNetworkError:eF,makeNetworkError:Ws,makeResponse:Er,makeAppropriateNetworkError:AF,filterResponse:NI,Response:ht,cloneResponse:Nc,fromInnerResponse:un}});var xI=f((tx,TI)=>{"use strict";var{kConnected:MI,kSize:LI}=j(),Uc=class{constructor(A){this.value=A}deref(){return this.value[MI]===0&&this.value[LI]===0?void 0:this.value}},Mc=class{constructor(A){this.finalizer=A}register(A,t){A.on&&A.on("disconnect",()=>{A[MI]===0&&A[LI]===0&&this.finalizer(t)})}unregister(A){}};TI.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Uc,FinalizationRegistry:Mc}):{WeakRef,FinalizationRegistry}}});var Qr=f((rx,XI)=>{"use strict";var{extractBody:tF,mixinBody:rF,cloneBody:nF,bodyUnusable:YI}=Wt(),{Headers:PI,fill:sF,HeadersList:zs,setHeadersGuard:Tc,getHeadersGuard:oF,setHeadersList:_I,getHeadersList:GI}=Ct(),{FinalizationRegistry:iF}=xI()(),_s=x(),JI=d("node:util"),{isValidHTTPToken:aF,sameOrigin:vI,environmentSettingsObject:Ps}=be(),{forbiddenMethodsSet:cF,corsSafeListedMethodsSet:gF,referrerPolicy:uF,requestRedirect:lF,requestMode:EF,requestCredentials:QF,requestCache:BF,requestDuplex:IF}=Tr(),{kEnumerableProperty:ae,normalizedMethodRecordsBase:CF,normalizedMethodRecords:hF}=_s,{kHeaders:Ue,kSignal:Zs,kState:X,kDispatcher:Lc}=LA(),{webidl:S}=ue(),{URLSerializer:dF}=de(),{kConstruct:Ks}=j(),fF=d("node:assert"),{getMaxListeners:HI,setMaxListeners:VI,getEventListeners:pF,defaultMaxListeners:qI}=d("node:events"),wF=Symbol("abortController"),ZI=new iF(({signal:e,abort:A})=>{e.removeEventListener("abort",A)}),Xs=new WeakMap;function OI(e){return A;function A(){let t=e.deref();if(t!==void 0){ZI.unregister(A),this.removeEventListener("abort",A),t.abort(this.reason);let r=Xs.get(t.signal);if(r!==void 0){if(r.size!==0){for(let n of r){let s=n.deref();s!==void 0&&s.abort(this.reason)}r.clear()}Xs.delete(t.signal)}}}}var WI=!1,WA=class e{constructor(A,t={}){if(S.util.markAsUncloneable(this),A===Ks)return;let r="Request constructor";S.argumentLengthCheck(arguments,1,r),A=S.converters.RequestInfo(A,r,"input"),t=S.converters.RequestInit(t,r,"init");let n=null,s=null,o=Ps.settingsObject.baseUrl,i=null;if(typeof A=="string"){this[Lc]=t.dispatcher;let B;try{B=new URL(A,o)}catch(h){throw new TypeError("Failed to parse URL from "+A,{cause:h})}if(B.username||B.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+A);n=js({urlList:[B]}),s="cors"}else this[Lc]=t.dispatcher||A[Lc],fF(A instanceof e),n=A[X],i=A[Zs];let a=Ps.settingsObject.origin,c="client";if(n.window?.constructor?.name==="EnvironmentSettingsObject"&&vI(n.window,a)&&(c=n.window),t.window!=null)throw new TypeError(`'window' option '${c}' must be null`);"window"in t&&(c="no-window"),n=js({method:n.method,headersList:n.headersList,unsafeRequest:n.unsafeRequest,client:Ps.settingsObject,window:c,priority:n.priority,origin:n.origin,referrer:n.referrer,referrerPolicy:n.referrerPolicy,mode:n.mode,credentials:n.credentials,cache:n.cache,redirect:n.redirect,integrity:n.integrity,keepalive:n.keepalive,reloadNavigation:n.reloadNavigation,historyNavigation:n.historyNavigation,urlList:[...n.urlList]});let l=Object.keys(t).length!==0;if(l&&(n.mode==="navigate"&&(n.mode="same-origin"),n.reloadNavigation=!1,n.historyNavigation=!1,n.origin="client",n.referrer="client",n.referrerPolicy="",n.url=n.urlList[n.urlList.length-1],n.urlList=[n.url]),t.referrer!==void 0){let B=t.referrer;if(B==="")n.referrer="no-referrer";else{let h;try{h=new URL(B,o)}catch(y){throw new TypeError(`Referrer "${B}" is not a valid URL.`,{cause:y})}h.protocol==="about:"&&h.hostname==="client"||a&&!vI(h,Ps.settingsObject.baseUrl)?n.referrer="client":n.referrer=h}}t.referrerPolicy!==void 0&&(n.referrerPolicy=t.referrerPolicy);let u;if(t.mode!==void 0?u=t.mode:u=s,u==="navigate")throw S.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(u!=null&&(n.mode=u),t.credentials!==void 0&&(n.credentials=t.credentials),t.cache!==void 0&&(n.cache=t.cache),n.cache==="only-if-cached"&&n.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(t.redirect!==void 0&&(n.redirect=t.redirect),t.integrity!=null&&(n.integrity=String(t.integrity)),t.keepalive!==void 0&&(n.keepalive=!!t.keepalive),t.method!==void 0){let B=t.method,h=hF[B];if(h!==void 0)n.method=h;else{if(!aF(B))throw new TypeError(`'${B}' is not a valid HTTP method.`);let y=B.toUpperCase();if(cF.has(y))throw new TypeError(`'${B}' HTTP method is unsupported.`);B=CF[y]??B,n.method=B}!WI&&n.method==="patch"&&(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),WI=!0)}t.signal!==void 0&&(i=t.signal),this[X]=n;let g=new AbortController;if(this[Zs]=g.signal,i!=null){if(!i||typeof i.aborted!="boolean"||typeof i.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(i.aborted)g.abort(i.reason);else{this[wF]=g;let B=new WeakRef(g),h=OI(B);try{(typeof HI=="function"&&HI(i)===qI||pF(i,"abort").length>=qI)&&VI(1500,i)}catch{}_s.addAbortListener(i,h),ZI.register(g,{signal:i,abort:h},h)}}if(this[Ue]=new PI(Ks),_I(this[Ue],n.headersList),Tc(this[Ue],"request"),u==="no-cors"){if(!gF.has(n.method))throw new TypeError(`'${n.method} is unsupported in no-cors mode.`);Tc(this[Ue],"request-no-cors")}if(l){let B=GI(this[Ue]),h=t.headers!==void 0?t.headers:new zs(B);if(B.clear(),h instanceof zs){for(let{name:y,value:m}of h.rawValues())B.append(y,m,!1);B.cookies=h.cookies}else sF(this[Ue],h)}let E=A instanceof e?A[X].body:null;if((t.body!=null||E!=null)&&(n.method==="GET"||n.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let Q=null;if(t.body!=null){let[B,h]=tF(t.body,n.keepalive);Q=B,h&&!GI(this[Ue]).contains("content-type",!0)&&this[Ue].append("content-type",h)}let I=Q??E;if(I!=null&&I.source==null){if(Q!=null&&t.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(n.mode!=="same-origin"&&n.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');n.useCORSPreflightFlag=!0}let C=I;if(Q==null&&E!=null){if(YI(A))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let B=new TransformStream;E.stream.pipeThrough(B),C={source:E.source,length:E.length,stream:B.readable}}this[X].body=C}get method(){return S.brandCheck(this,e),this[X].method}get url(){return S.brandCheck(this,e),dF(this[X].url)}get headers(){return S.brandCheck(this,e),this[Ue]}get destination(){return S.brandCheck(this,e),this[X].destination}get referrer(){return S.brandCheck(this,e),this[X].referrer==="no-referrer"?"":this[X].referrer==="client"?"about:client":this[X].referrer.toString()}get referrerPolicy(){return S.brandCheck(this,e),this[X].referrerPolicy}get mode(){return S.brandCheck(this,e),this[X].mode}get credentials(){return this[X].credentials}get cache(){return S.brandCheck(this,e),this[X].cache}get redirect(){return S.brandCheck(this,e),this[X].redirect}get integrity(){return S.brandCheck(this,e),this[X].integrity}get keepalive(){return S.brandCheck(this,e),this[X].keepalive}get isReloadNavigation(){return S.brandCheck(this,e),this[X].reloadNavigation}get isHistoryNavigation(){return S.brandCheck(this,e),this[X].historyNavigation}get signal(){return S.brandCheck(this,e),this[Zs]}get body(){return S.brandCheck(this,e),this[X].body?this[X].body.stream:null}get bodyUsed(){return S.brandCheck(this,e),!!this[X].body&&_s.isDisturbed(this[X].body.stream)}get duplex(){return S.brandCheck(this,e),"half"}clone(){if(S.brandCheck(this,e),YI(this))throw new TypeError("unusable");let A=zI(this[X]),t=new AbortController;if(this.signal.aborted)t.abort(this.signal.reason);else{let r=Xs.get(this.signal);r===void 0&&(r=new Set,Xs.set(this.signal,r));let n=new WeakRef(t);r.add(n),_s.addAbortListener(t.signal,OI(n))}return KI(A,t.signal,oF(this[Ue]))}[JI.inspect.custom](A,t){t.depth===null&&(t.depth=2),t.colors??=!0;let r={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${JI.formatWithOptions(t,r)}`}};rF(WA);function js(e){return{method:e.method??"GET",localURLsOnly:e.localURLsOnly??!1,unsafeRequest:e.unsafeRequest??!1,body:e.body??null,client:e.client??null,reservedClient:e.reservedClient??null,replacesClientId:e.replacesClientId??"",window:e.window??"client",keepalive:e.keepalive??!1,serviceWorkers:e.serviceWorkers??"all",initiator:e.initiator??"",destination:e.destination??"",priority:e.priority??null,origin:e.origin??"client",policyContainer:e.policyContainer??"client",referrer:e.referrer??"client",referrerPolicy:e.referrerPolicy??"",mode:e.mode??"no-cors",useCORSPreflightFlag:e.useCORSPreflightFlag??!1,credentials:e.credentials??"same-origin",useCredentials:e.useCredentials??!1,cache:e.cache??"default",redirect:e.redirect??"follow",integrity:e.integrity??"",cryptoGraphicsNonceMetadata:e.cryptoGraphicsNonceMetadata??"",parserMetadata:e.parserMetadata??"",reloadNavigation:e.reloadNavigation??!1,historyNavigation:e.historyNavigation??!1,userActivation:e.userActivation??!1,taintedOrigin:e.taintedOrigin??!1,redirectCount:e.redirectCount??0,responseTainting:e.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:e.preventNoCacheCacheControlHeaderModification??!1,done:e.done??!1,timingAllowFailed:e.timingAllowFailed??!1,urlList:e.urlList,url:e.urlList[0],headersList:e.headersList?new zs(e.headersList):new zs}}function zI(e){let A=js({...e,body:null});return e.body!=null&&(A.body=nF(A,e.body)),A}function KI(e,A,t){let r=new WA(Ks);return r[X]=e,r[Zs]=A,r[Ue]=new PI(Ks),_I(r[Ue],e.headersList),Tc(r[Ue],t),r}Object.defineProperties(WA.prototype,{method:ae,url:ae,headers:ae,redirect:ae,clone:ae,signal:ae,duplex:ae,destination:ae,body:ae,bodyUsed:ae,isHistoryNavigation:ae,isReloadNavigation:ae,keepalive:ae,integrity:ae,cache:ae,credentials:ae,attribute:ae,referrerPolicy:ae,referrer:ae,mode:ae,[Symbol.toStringTag]:{value:"Request",configurable:!0}});S.converters.Request=S.interfaceConverter(WA);S.converters.RequestInfo=function(e,A,t){return typeof e=="string"?S.converters.USVString(e,A,t):e instanceof WA?S.converters.Request(e,A,t):S.converters.USVString(e,A,t)};S.converters.AbortSignal=S.interfaceConverter(AbortSignal);S.converters.RequestInit=S.dictionaryConverter([{key:"method",converter:S.converters.ByteString},{key:"headers",converter:S.converters.HeadersInit},{key:"body",converter:S.nullableConverter(S.converters.BodyInit)},{key:"referrer",converter:S.converters.USVString},{key:"referrerPolicy",converter:S.converters.DOMString,allowedValues:uF},{key:"mode",converter:S.converters.DOMString,allowedValues:EF},{key:"credentials",converter:S.converters.DOMString,allowedValues:QF},{key:"cache",converter:S.converters.DOMString,allowedValues:BF},{key:"redirect",converter:S.converters.DOMString,allowedValues:lF},{key:"integrity",converter:S.converters.DOMString},{key:"keepalive",converter:S.converters.boolean},{key:"signal",converter:S.nullableConverter(e=>S.converters.AbortSignal(e,"RequestInit","signal",{strict:!1}))},{key:"window",converter:S.converters.any},{key:"duplex",converter:S.converters.DOMString,allowedValues:IF},{key:"dispatcher",converter:S.converters.any}]);XI.exports={Request:WA,makeRequest:js,fromInnerRequest:KI,cloneRequest:zI}});var Qn=f((nx,lC)=>{"use strict";var{makeNetworkError:O,makeAppropriateNetworkError:$s,filterResponse:xc,makeResponse:eo,fromInnerResponse:mF}=ln(),{HeadersList:jI}=Ct(),{Request:yF,cloneRequest:DF}=Qr(),PA=d("node:zlib"),{bytesMatch:bF,makePolicyContainer:kF,clonePolicyContainer:FF,requestBadPort:RF,TAOCheck:SF,appendRequestOriginHeader:NF,responseLocationURL:UF,requestCurrentURL:gA,setRequestReferrerPolicyOnRedirect:MF,tryUpgradeRequestToAPotentiallyTrustworthyURL:LF,createOpaqueTimingInfo:Hc,appendFetchMetadata:TF,corsCheck:xF,crossOriginResourcePolicyCheck:YF,determineRequestsReferrer:GF,coarsenedSharedCurrentTime:En,createDeferredPromise:JF,isBlobLike:vF,sameOrigin:vc,isCancelled:dt,isAborted:$I,isErrorLike:HF,fullyReadBody:VF,readableStreamClose:qF,isomorphicEncode:Ao,urlIsLocal:OF,urlIsHttpHttpsScheme:Vc,urlHasHttpsScheme:WF,clampAndCoarsenConnectionTimingInfo:PF,simpleRangeHeaderValue:_F,buildContentRange:ZF,createInflate:zF,extractMimeType:KF}=be(),{kState:rC,kDispatcher:XF}=LA(),ft=d("node:assert"),{safelyExtractBody:qc,extractBody:eC}=Wt(),{redirectStatusSet:nC,nullBodyStatus:sC,safeMethodsSet:jF,requestBodyHeader:$F,subresourceSet:eR}=Tr(),AR=d("node:events"),{Readable:tR,pipeline:rR,finished:nR}=d("node:stream"),{addAbortListener:sR,isErrored:oR,isReadable:to,bufferToLowerCasedHeaderName:AC}=x(),{dataURLProcessor:iR,serializeAMimeType:aR,minimizeSupportedMimeType:cR}=de(),{getGlobalDispatcher:gR}=Js(),{webidl:uR}=ue(),{STATUS_CODES:lR}=d("node:http"),ER=["GET","HEAD"],QR=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Yc,ro=class extends AR{constructor(A){super(),this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A))}abort(A){this.state==="ongoing"&&(this.state="aborted",A||(A=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A))}};function BR(e){oC(e,"fetch")}function IR(e,A=void 0){uR.argumentLengthCheck(arguments,1,"globalThis.fetch");let t=JF(),r;try{r=new yF(e,A)}catch(l){return t.reject(l),t.promise}let n=r[rC];if(r.signal.aborted)return Gc(t,n,null,r.signal.reason),t.promise;n.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(n.serviceWorkers="none");let o=null,i=!1,a=null;return sR(r.signal,()=>{i=!0,ft(a!=null),a.abort(r.signal.reason);let l=o?.deref();Gc(t,n,l,r.signal.reason)}),a=aC({request:n,processResponseEndOfBody:BR,processResponse:l=>{if(!i){if(l.aborted){Gc(t,n,o,a.serializedAbortReason);return}if(l.type==="error"){t.reject(new TypeError("fetch failed",{cause:l.error}));return}o=new WeakRef(mF(l,"immutable")),t.resolve(o.deref()),t=null}},dispatcher:r[XF]}),t.promise}function oC(e,A="other"){if(e.type==="error"&&e.aborted||!e.urlList?.length)return;let t=e.urlList[0],r=e.timingInfo,n=e.cacheState;Vc(t)&&r!==null&&(e.timingAllowPassed||(r=Hc({startTime:r.startTime}),n=""),r.endTime=En(),e.timingInfo=r,iC(r,t.href,A,globalThis,n))}var iC=performance.markResourceTiming;function Gc(e,A,t,r){if(e&&e.reject(r),A.body!=null&&to(A.body?.stream)&&A.body.stream.cancel(r).catch(s=>{if(s.code!=="ERR_INVALID_STATE")throw s}),t==null)return;let n=t[rC];n.body!=null&&to(n.body?.stream)&&n.body.stream.cancel(r).catch(s=>{if(s.code!=="ERR_INVALID_STATE")throw s})}function aC({request:e,processRequestBodyChunkLength:A,processRequestEndOfBody:t,processResponse:r,processResponseEndOfBody:n,processResponseConsumeBody:s,useParallelQueue:o=!1,dispatcher:i=gR()}){ft(i);let a=null,c=!1;e.client!=null&&(a=e.client.globalObject,c=e.client.crossOriginIsolatedCapability);let l=En(c),u=Hc({startTime:l}),g={controller:new ro(i),request:e,timingInfo:u,processRequestBodyChunkLength:A,processRequestEndOfBody:t,processResponse:r,processResponseConsumeBody:s,processResponseEndOfBody:n,taskDestination:a,crossOriginIsolatedCapability:c};return ft(!e.body||e.body.stream),e.window==="client"&&(e.window=e.client?.globalObject?.constructor?.name==="Window"?e.client:"no-window"),e.origin==="client"&&(e.origin=e.client.origin),e.policyContainer==="client"&&(e.client!=null?e.policyContainer=FF(e.client.policyContainer):e.policyContainer=kF()),e.headersList.contains("accept",!0)||e.headersList.append("accept","*/*",!0),e.headersList.contains("accept-language",!0)||e.headersList.append("accept-language","*",!0),e.priority,eR.has(e.destination),cC(g).catch(E=>{g.controller.terminate(E)}),g.controller}async function cC(e,A=!1){let t=e.request,r=null;if(t.localURLsOnly&&!OF(gA(t))&&(r=O("local URLs only")),LF(t),RF(t)==="blocked"&&(r=O("bad port")),t.referrerPolicy===""&&(t.referrerPolicy=t.policyContainer.referrerPolicy),t.referrer!=="no-referrer"&&(t.referrer=GF(t)),r===null&&(r=await(async()=>{let s=gA(t);return vc(s,t.url)&&t.responseTainting==="basic"||s.protocol==="data:"||t.mode==="navigate"||t.mode==="websocket"?(t.responseTainting="basic",await tC(e)):t.mode==="same-origin"?O('request mode cannot be "same-origin"'):t.mode==="no-cors"?t.redirect!=="follow"?O('redirect mode cannot be "follow" for "no-cors" request'):(t.responseTainting="opaque",await tC(e)):Vc(gA(t))?(t.responseTainting="cors",await gC(e)):O("URL scheme must be a HTTP(S) scheme")})()),A)return r;r.status!==0&&!r.internalResponse&&(t.responseTainting,t.responseTainting==="basic"?r=xc(r,"basic"):t.responseTainting==="cors"?r=xc(r,"cors"):t.responseTainting==="opaque"?r=xc(r,"opaque"):ft(!1));let n=r.status===0?r:r.internalResponse;if(n.urlList.length===0&&n.urlList.push(...t.urlList),t.timingAllowFailed||(r.timingAllowPassed=!0),r.type==="opaque"&&n.status===206&&n.rangeRequested&&!t.headers.contains("range",!0)&&(r=n=O()),r.status!==0&&(t.method==="HEAD"||t.method==="CONNECT"||sC.includes(n.status))&&(n.body=null,e.controller.dump=!0),t.integrity){let s=i=>Jc(e,O(i));if(t.responseTainting==="opaque"||r.body==null){s(r.error);return}let o=i=>{if(!bF(i,t.integrity)){s("integrity mismatch");return}r.body=qc(i)[0],Jc(e,r)};await VF(r.body,o,s)}else Jc(e,r)}function tC(e){if(dt(e)&&e.request.redirectCount===0)return Promise.resolve($s(e));let{request:A}=e,{protocol:t}=gA(A);switch(t){case"about:":return Promise.resolve(O("about scheme is not supported"));case"blob:":{Yc||(Yc=d("node:buffer").resolveObjectURL);let r=gA(A);if(r.search.length!==0)return Promise.resolve(O("NetworkError when attempting to fetch resource."));let n=Yc(r.toString());if(A.method!=="GET"||!vF(n))return Promise.resolve(O("invalid method"));let s=eo(),o=n.size,i=Ao(`${o}`),a=n.type;if(A.headersList.contains("range",!0)){s.rangeRequested=!0;let c=A.headersList.get("range",!0),l=_F(c,!0);if(l==="failure")return Promise.resolve(O("failed to fetch the data URL"));let{rangeStartValue:u,rangeEndValue:g}=l;if(u===null)u=o-g,g=u+g-1;else{if(u>=o)return Promise.resolve(O("Range start is greater than the blob's size."));(g===null||g>=o)&&(g=o-1)}let E=n.slice(u,g,a),Q=eC(E);s.body=Q[0];let I=Ao(`${E.size}`),C=ZF(u,g,o);s.status=206,s.statusText="Partial Content",s.headersList.set("content-length",I,!0),s.headersList.set("content-type",a,!0),s.headersList.set("content-range",C,!0)}else{let c=eC(n);s.statusText="OK",s.body=c[0],s.headersList.set("content-length",i,!0),s.headersList.set("content-type",a,!0)}return Promise.resolve(s)}case"data:":{let r=gA(A),n=iR(r);if(n==="failure")return Promise.resolve(O("failed to fetch the data URL"));let s=aR(n.mimeType);return Promise.resolve(eo({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:s}]],body:qc(n.body)[0]}))}case"file:":return Promise.resolve(O("not implemented... yet..."));case"http:":case"https:":return gC(e).catch(r=>O(r));default:return Promise.resolve(O("unknown scheme"))}}function CR(e,A){e.request.done=!0,e.processResponseDone!=null&&queueMicrotask(()=>e.processResponseDone(A))}function Jc(e,A){let t=e.timingInfo,r=()=>{let s=Date.now();e.request.destination==="document"&&(e.controller.fullTimingInfo=t),e.controller.reportTimingSteps=()=>{if(e.request.url.protocol!=="https:")return;t.endTime=s;let i=A.cacheState,a=A.bodyInfo;A.timingAllowPassed||(t=Hc(t),i="");let c=0;if(e.request.mode!=="navigator"||!A.hasCrossOriginRedirects){c=A.status;let l=KF(A.headersList);l!=="failure"&&(a.contentType=cR(l))}e.request.initiatorType!=null&&iC(t,e.request.url.href,e.request.initiatorType,globalThis,i,a,c)};let o=()=>{e.request.done=!0,e.processResponseEndOfBody!=null&&queueMicrotask(()=>e.processResponseEndOfBody(A)),e.request.initiatorType!=null&&e.controller.reportTimingSteps()};queueMicrotask(()=>o())};e.processResponse!=null&&queueMicrotask(()=>{e.processResponse(A),e.processResponse=null});let n=A.type==="error"?A:A.internalResponse??A;n.body==null?r():nR(n.body.stream,()=>{r()})}async function gC(e){let A=e.request,t=null,r=null,n=e.timingInfo;if(A.serviceWorkers,t===null){if(A.redirect==="follow"&&(A.serviceWorkers="none"),r=t=await uC(e),A.responseTainting==="cors"&&xF(A,t)==="failure")return O("cors failure");SF(A,t)==="failure"&&(A.timingAllowFailed=!0)}return(A.responseTainting==="opaque"||t.type==="opaque")&&YF(A.origin,A.client,A.destination,r)==="blocked"?O("blocked"):(nC.has(r.status)&&(A.redirect!=="manual"&&e.controller.connection.destroy(void 0,!1),A.redirect==="error"?t=O("unexpected redirect"):A.redirect==="manual"?t=r:A.redirect==="follow"?t=await hR(e,t):ft(!1)),t.timingInfo=n,t)}function hR(e,A){let t=e.request,r=A.internalResponse?A.internalResponse:A,n;try{if(n=UF(r,gA(t).hash),n==null)return A}catch(o){return Promise.resolve(O(o))}if(!Vc(n))return Promise.resolve(O("URL scheme must be a HTTP(S) scheme"));if(t.redirectCount===20)return Promise.resolve(O("redirect count exceeded"));if(t.redirectCount+=1,t.mode==="cors"&&(n.username||n.password)&&!vc(t,n))return Promise.resolve(O('cross origin not allowed for request mode "cors"'));if(t.responseTainting==="cors"&&(n.username||n.password))return Promise.resolve(O('URL cannot contain credentials for request mode "cors"'));if(r.status!==303&&t.body!=null&&t.body.source==null)return Promise.resolve(O());if([301,302].includes(r.status)&&t.method==="POST"||r.status===303&&!ER.includes(t.method)){t.method="GET",t.body=null;for(let o of $F)t.headersList.delete(o)}vc(gA(t),n)||(t.headersList.delete("authorization",!0),t.headersList.delete("proxy-authorization",!0),t.headersList.delete("cookie",!0),t.headersList.delete("host",!0)),t.body!=null&&(ft(t.body.source!=null),t.body=qc(t.body.source)[0]);let s=e.timingInfo;return s.redirectEndTime=s.postRedirectStartTime=En(e.crossOriginIsolatedCapability),s.redirectStartTime===0&&(s.redirectStartTime=s.startTime),t.urlList.push(n),MF(t,r),cC(e,!0)}async function uC(e,A=!1,t=!1){let r=e.request,n=null,s=null,o=null,i=null,a=!1;r.window==="no-window"&&r.redirect==="error"?(n=e,s=r):(s=DF(r),n={...e},n.request=s);let c=r.credentials==="include"||r.credentials==="same-origin"&&r.responseTainting==="basic",l=s.body?s.body.length:null,u=null;if(s.body==null&&["POST","PUT"].includes(s.method)&&(u="0"),l!=null&&(u=Ao(`${l}`)),u!=null&&s.headersList.append("content-length",u,!0),l!=null&&s.keepalive,s.referrer instanceof URL&&s.headersList.append("referer",Ao(s.referrer.href),!0),NF(s),TF(s),s.headersList.contains("user-agent",!0)||s.headersList.append("user-agent",QR),s.cache==="default"&&(s.headersList.contains("if-modified-since",!0)||s.headersList.contains("if-none-match",!0)||s.headersList.contains("if-unmodified-since",!0)||s.headersList.contains("if-match",!0)||s.headersList.contains("if-range",!0))&&(s.cache="no-store"),s.cache==="no-cache"&&!s.preventNoCacheCacheControlHeaderModification&&!s.headersList.contains("cache-control",!0)&&s.headersList.append("cache-control","max-age=0",!0),(s.cache==="no-store"||s.cache==="reload")&&(s.headersList.contains("pragma",!0)||s.headersList.append("pragma","no-cache",!0),s.headersList.contains("cache-control",!0)||s.headersList.append("cache-control","no-cache",!0)),s.headersList.contains("range",!0)&&s.headersList.append("accept-encoding","identity",!0),s.headersList.contains("accept-encoding",!0)||(WF(gA(s))?s.headersList.append("accept-encoding","br, gzip, deflate",!0):s.headersList.append("accept-encoding","gzip, deflate",!0)),s.headersList.delete("host",!0),i==null&&(s.cache="no-store"),s.cache!=="no-store"&&s.cache,o==null){if(s.cache==="only-if-cached")return O("only if cached");let g=await dR(n,c,t);!jF.has(s.method)&&g.status>=200&&g.status<=399,a&&g.status,o==null&&(o=g)}if(o.urlList=[...s.urlList],s.headersList.contains("range",!0)&&(o.rangeRequested=!0),o.requestIncludesCredentials=c,o.status===407)return r.window==="no-window"?O():dt(e)?$s(e):O("proxy authentication required");if(o.status===421&&!t&&(r.body==null||r.body.source!=null)){if(dt(e))return $s(e);e.controller.connection.destroy(),o=await uC(e,A,!0)}return o}async function dR(e,A=!1,t=!1){ft(!e.controller.connection||e.controller.connection.destroyed),e.controller.connection={abort:null,destroyed:!1,destroy(Q,I=!0){this.destroyed||(this.destroyed=!0,I&&this.abort?.(Q??new DOMException("The operation was aborted.","AbortError")))}};let r=e.request,n=null,s=e.timingInfo;null==null&&(r.cache="no-store");let i=t?"yes":"no";r.mode;let a=null;if(r.body==null&&e.processRequestEndOfBody)queueMicrotask(()=>e.processRequestEndOfBody());else if(r.body!=null){let Q=async function*(B){dt(e)||(yield B,e.processRequestBodyChunkLength?.(B.byteLength))},I=()=>{dt(e)||e.processRequestEndOfBody&&e.processRequestEndOfBody()},C=B=>{dt(e)||(B.name==="AbortError"?e.controller.abort():e.controller.terminate(B))};a=(async function*(){try{for await(let B of r.body.stream)yield*Q(B);I()}catch(B){C(B)}})()}try{let{body:Q,status:I,statusText:C,headersList:B,socket:h}=await E({body:a});if(h)n=eo({status:I,statusText:C,headersList:B,socket:h});else{let y=Q[Symbol.asyncIterator]();e.controller.next=()=>y.next(),n=eo({status:I,statusText:C,headersList:B})}}catch(Q){return Q.name==="AbortError"?(e.controller.connection.destroy(),$s(e,Q)):O(Q)}let c=async()=>{await e.controller.resume()},l=Q=>{dt(e)||e.controller.abort(Q)},u=new ReadableStream({async start(Q){e.controller.controller=Q},async pull(Q){await c(Q)},async cancel(Q){await l(Q)},type:"bytes"});n.body={stream:u,source:null,length:null},e.controller.onAborted=g,e.controller.on("terminated",g),e.controller.resume=async()=>{for(;;){let Q,I;try{let{done:B,value:h}=await e.controller.next();if($I(e))break;Q=B?void 0:h}catch(B){e.controller.ended&&!s.encodedBodySize?Q=void 0:(Q=B,I=!0)}if(Q===void 0){qF(e.controller.controller),CR(e,n);return}if(s.decodedBodySize+=Q?.byteLength??0,I){e.controller.terminate(Q);return}let C=new Uint8Array(Q);if(C.byteLength&&e.controller.controller.enqueue(C),oR(u)){e.controller.terminate();return}if(e.controller.controller.desiredSize<=0)return}};function g(Q){$I(e)?(n.aborted=!0,to(u)&&e.controller.controller.error(e.controller.serializedAbortReason)):to(u)&&e.controller.controller.error(new TypeError("terminated",{cause:HF(Q)?Q:void 0})),e.controller.connection.destroy()}return n;function E({body:Q}){let I=gA(r),C=e.controller.dispatcher;return new Promise((B,h)=>C.dispatch({path:I.pathname+I.search,origin:I.origin,method:r.method,body:C.isMockActive?r.body&&(r.body.source||r.body.stream):Q,headers:r.headersList.entries,maxRedirections:0,upgrade:r.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(y){let{connection:m}=e.controller;s.finalConnectionTimingInfo=PF(void 0,s.postRedirectStartTime,e.crossOriginIsolatedCapability),m.destroyed?y(new DOMException("The operation was aborted.","AbortError")):(e.controller.on("terminated",y),this.abort=m.abort=y),s.finalNetworkRequestStartTime=En(e.crossOriginIsolatedCapability)},onResponseStarted(){s.finalNetworkResponseStartTime=En(e.crossOriginIsolatedCapability)},onHeaders(y,m,T,_){if(y<200)return;let Z="",M=new jI;for(let se=0;se<m.length;se+=2)M.append(AC(m[se]),m[se+1].toString("latin1"),!0);Z=M.get("location",!0),this.body=new tR({read:T});let V=[],De=Z&&r.redirect==="follow"&&nC.has(y);if(r.method!=="HEAD"&&r.method!=="CONNECT"&&!sC.includes(y)&&!De){let se=M.get("content-encoding",!0),xe=se?se.toLowerCase().split(","):[],QA=5;if(xe.length>QA)return h(new Error(`too many content-encodings in response: ${xe.length}, maximum allowed is ${QA}`)),!0;for(let Rt=xe.length-1;Rt>=0;--Rt){let St=xe[Rt].trim();if(St==="x-gzip"||St==="gzip")V.push(PA.createGunzip({flush:PA.constants.Z_SYNC_FLUSH,finishFlush:PA.constants.Z_SYNC_FLUSH}));else if(St==="deflate")V.push(zF({flush:PA.constants.Z_SYNC_FLUSH,finishFlush:PA.constants.Z_SYNC_FLUSH}));else if(St==="br")V.push(PA.createBrotliDecompress({flush:PA.constants.BROTLI_OPERATION_FLUSH,finishFlush:PA.constants.BROTLI_OPERATION_FLUSH}));else{V.length=0;break}}}let Be=this.onError.bind(this);return B({status:y,statusText:_,headersList:M,body:V.length?rR(this.body,...V,se=>{se&&this.onError(se)}).on("error",Be):this.body.on("error",Be)}),!0},onData(y){if(e.controller.dump)return;let m=y;return s.encodedBodySize+=m.byteLength,this.body.push(m)},onComplete(){this.abort&&e.controller.off("terminated",this.abort),e.controller.onAborted&&e.controller.off("terminated",e.controller.onAborted),e.controller.ended=!0,this.body.push(null)},onError(y){this.abort&&e.controller.off("terminated",this.abort),this.body?.destroy(y),e.controller.terminate(y),h(y)},onUpgrade(y,m,T){if(y!==101)return;let _=new jI;for(let Z=0;Z<m.length;Z+=2)_.append(AC(m[Z]),m[Z+1].toString("latin1"),!0);return B({status:y,statusText:lR[y],headersList:_,socket:T}),!0}}))}}lC.exports={fetch:IR,Fetch:ro,fetching:aC,finalizeAndReportTiming:oC}});var Oc=f((sx,EC)=>{"use strict";EC.exports={kState:Symbol("FileReader state"),kResult:Symbol("FileReader result"),kError:Symbol("FileReader error"),kLastProgressEventFired:Symbol("FileReader last progress event fired timestamp"),kEvents:Symbol("FileReader events"),kAborted:Symbol("FileReader aborted")}});var BC=f((ox,QC)=>{"use strict";var{webidl:Me}=ue(),no=Symbol("ProgressEvent state"),Wc=class e extends Event{constructor(A,t={}){A=Me.converters.DOMString(A,"ProgressEvent constructor","type"),t=Me.converters.ProgressEventInit(t??{}),super(A,t),this[no]={lengthComputable:t.lengthComputable,loaded:t.loaded,total:t.total}}get lengthComputable(){return Me.brandCheck(this,e),this[no].lengthComputable}get loaded(){return Me.brandCheck(this,e),this[no].loaded}get total(){return Me.brandCheck(this,e),this[no].total}};Me.converters.ProgressEventInit=Me.dictionaryConverter([{key:"lengthComputable",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:Me.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:Me.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:Me.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:Me.converters.boolean,defaultValue:()=>!1}]);QC.exports={ProgressEvent:Wc}});var CC=f((ix,IC)=>{"use strict";function fR(e){if(!e)return"failure";switch(e.trim().toLowerCase()){case"unicode-1-1-utf-8":case"unicode11utf8":case"unicode20utf8":case"utf-8":case"utf8":case"x-unicode20utf8":return"UTF-8";case"866":case"cp866":case"csibm866":case"ibm866":return"IBM866";case"csisolatin2":case"iso-8859-2":case"iso-ir-101":case"iso8859-2":case"iso88592":case"iso_8859-2":case"iso_8859-2:1987":case"l2":case"latin2":return"ISO-8859-2";case"csisolatin3":case"iso-8859-3":case"iso-ir-109":case"iso8859-3":case"iso88593":case"iso_8859-3":case"iso_8859-3:1988":case"l3":case"latin3":return"ISO-8859-3";case"csisolatin4":case"iso-8859-4":case"iso-ir-110":case"iso8859-4":case"iso88594":case"iso_8859-4":case"iso_8859-4:1988":case"l4":case"latin4":return"ISO-8859-4";case"csisolatincyrillic":case"cyrillic":case"iso-8859-5":case"iso-ir-144":case"iso8859-5":case"iso88595":case"iso_8859-5":case"iso_8859-5:1988":return"ISO-8859-5";case"arabic":case"asmo-708":case"csiso88596e":case"csiso88596i":case"csisolatinarabic":case"ecma-114":case"iso-8859-6":case"iso-8859-6-e":case"iso-8859-6-i":case"iso-ir-127":case"iso8859-6":case"iso88596":case"iso_8859-6":case"iso_8859-6:1987":return"ISO-8859-6";case"csisolatingreek":case"ecma-118":case"elot_928":case"greek":case"greek8":case"iso-8859-7":case"iso-ir-126":case"iso8859-7":case"iso88597":case"iso_8859-7":case"iso_8859-7:1987":case"sun_eu_greek":return"ISO-8859-7";case"csiso88598e":case"csisolatinhebrew":case"hebrew":case"iso-8859-8":case"iso-8859-8-e":case"iso-ir-138":case"iso8859-8":case"iso88598":case"iso_8859-8":case"iso_8859-8:1988":case"visual":return"ISO-8859-8";case"csiso88598i":case"iso-8859-8-i":case"logical":return"ISO-8859-8-I";case"csisolatin6":case"iso-8859-10":case"iso-ir-157":case"iso8859-10":case"iso885910":case"l6":case"latin6":return"ISO-8859-10";case"iso-8859-13":case"iso8859-13":case"iso885913":return"ISO-8859-13";case"iso-8859-14":case"iso8859-14":case"iso885914":return"ISO-8859-14";case"csisolatin9":case"iso-8859-15":case"iso8859-15":case"iso885915":case"iso_8859-15":case"l9":return"ISO-8859-15";case"iso-8859-16":return"ISO-8859-16";case"cskoi8r":case"koi":case"koi8":case"koi8-r":case"koi8_r":return"KOI8-R";case"koi8-ru":case"koi8-u":return"KOI8-U";case"csmacintosh":case"mac":case"macintosh":case"x-mac-roman":return"macintosh";case"iso-8859-11":case"iso8859-11":case"iso885911":case"tis-620":case"windows-874":return"windows-874";case"cp1250":case"windows-1250":case"x-cp1250":return"windows-1250";case"cp1251":case"windows-1251":case"x-cp1251":return"windows-1251";case"ansi_x3.4-1968":case"ascii":case"cp1252":case"cp819":case"csisolatin1":case"ibm819":case"iso-8859-1":case"iso-ir-100":case"iso8859-1":case"iso88591":case"iso_8859-1":case"iso_8859-1:1987":case"l1":case"latin1":case"us-ascii":case"windows-1252":case"x-cp1252":return"windows-1252";case"cp1253":case"windows-1253":case"x-cp1253":return"windows-1253";case"cp1254":case"csisolatin5":case"iso-8859-9":case"iso-ir-148":case"iso8859-9":case"iso88599":case"iso_8859-9":case"iso_8859-9:1989":case"l5":case"latin5":case"windows-1254":case"x-cp1254":return"windows-1254";case"cp1255":case"windows-1255":case"x-cp1255":return"windows-1255";case"cp1256":case"windows-1256":case"x-cp1256":return"windows-1256";case"cp1257":case"windows-1257":case"x-cp1257":return"windows-1257";case"cp1258":case"windows-1258":case"x-cp1258":return"windows-1258";case"x-mac-cyrillic":case"x-mac-ukrainian":return"x-mac-cyrillic";case"chinese":case"csgb2312":case"csiso58gb231280":case"gb2312":case"gb_2312":case"gb_2312-80":case"gbk":case"iso-ir-58":case"x-gbk":return"GBK";case"gb18030":return"gb18030";case"big5":case"big5-hkscs":case"cn-big5":case"csbig5":case"x-x-big5":return"Big5";case"cseucpkdfmtjapanese":case"euc-jp":case"x-euc-jp":return"EUC-JP";case"csiso2022jp":case"iso-2022-jp":return"ISO-2022-JP";case"csshiftjis":case"ms932":case"ms_kanji":case"shift-jis":case"shift_jis":case"sjis":case"windows-31j":case"x-sjis":return"Shift_JIS";case"cseuckr":case"csksc56011987":case"euc-kr":case"iso-ir-149":case"korean":case"ks_c_5601-1987":case"ks_c_5601-1989":case"ksc5601":case"ksc_5601":case"windows-949":return"EUC-KR";case"csiso2022kr":case"hz-gb-2312":case"iso-2022-cn":case"iso-2022-cn-ext":case"iso-2022-kr":case"replacement":return"replacement";case"unicodefffe":case"utf-16be":return"UTF-16BE";case"csunicode":case"iso-10646-ucs-2":case"ucs-2":case"unicode":case"unicodefeff":case"utf-16":case"utf-16le":return"UTF-16LE";case"x-user-defined":return"x-user-defined";default:return"failure"}}IC.exports={getEncoding:fR}});var DC=f((ax,yC)=>{"use strict";var{kState:Br,kError:Pc,kResult:hC,kAborted:Bn,kLastProgressEventFired:_c}=Oc(),{ProgressEvent:pR}=BC(),{getEncoding:dC}=CC(),{serializeAMimeType:wR,parseMIMEType:fC}=de(),{types:mR}=d("node:util"),{StringDecoder:pC}=d("string_decoder"),{btoa:wC}=d("node:buffer"),yR={enumerable:!0,writable:!1,configurable:!1};function DR(e,A,t,r){if(e[Br]==="loading")throw new DOMException("Invalid state","InvalidStateError");e[Br]="loading",e[hC]=null,e[Pc]=null;let s=A.stream().getReader(),o=[],i=s.read(),a=!0;(async()=>{for(;!e[Bn];)try{let{done:c,value:l}=await i;if(a&&!e[Bn]&&queueMicrotask(()=>{_A("loadstart",e)}),a=!1,!c&&mR.isUint8Array(l))o.push(l),(e[_c]===void 0||Date.now()-e[_c]>=50)&&!e[Bn]&&(e[_c]=Date.now(),queueMicrotask(()=>{_A("progress",e)})),i=s.read();else if(c){queueMicrotask(()=>{e[Br]="done";try{let u=bR(o,t,A.type,r);if(e[Bn])return;e[hC]=u,_A("load",e)}catch(u){e[Pc]=u,_A("error",e)}e[Br]!=="loading"&&_A("loadend",e)});break}}catch(c){if(e[Bn])return;queueMicrotask(()=>{e[Br]="done",e[Pc]=c,_A("error",e),e[Br]!=="loading"&&_A("loadend",e)});break}})()}function _A(e,A){let t=new pR(e,{bubbles:!1,cancelable:!1});A.dispatchEvent(t)}function bR(e,A,t,r){switch(A){case"DataURL":{let n="data:",s=fC(t||"application/octet-stream");s!=="failure"&&(n+=wR(s)),n+=";base64,";let o=new pC("latin1");for(let i of e)n+=wC(o.write(i));return n+=wC(o.end()),n}case"Text":{let n="failure";if(r&&(n=dC(r)),n==="failure"&&t){let s=fC(t);s!=="failure"&&(n=dC(s.parameters.get("charset")))}return n==="failure"&&(n="UTF-8"),kR(e,n)}case"ArrayBuffer":return mC(e).buffer;case"BinaryString":{let n="",s=new pC("latin1");for(let o of e)n+=s.write(o);return n+=s.end(),n}}}function kR(e,A){let t=mC(e),r=FR(t),n=0;r!==null&&(A=r,n=r==="UTF-8"?3:2);let s=t.slice(n);return new TextDecoder(A).decode(s)}function FR(e){let[A,t,r]=e;return A===239&&t===187&&r===191?"UTF-8":A===254&&t===255?"UTF-16BE":A===255&&t===254?"UTF-16LE":null}function mC(e){let A=e.reduce((r,n)=>r+n.byteLength,0),t=0;return e.reduce((r,n)=>(r.set(n,t),t+=n.byteLength,r),new Uint8Array(A))}yC.exports={staticPropertyDescriptors:yR,readOperation:DR,fireAProgressEvent:_A}});var RC=f((cx,FC)=>{"use strict";var{staticPropertyDescriptors:Ir,readOperation:so,fireAProgressEvent:bC}=DC(),{kState:pt,kError:kC,kResult:oo,kEvents:H,kAborted:RR}=Oc(),{webidl:P}=ue(),{kEnumerableProperty:we}=x(),Xe=class e extends EventTarget{constructor(){super(),this[pt]="empty",this[oo]=null,this[kC]=null,this[H]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"ArrayBuffer")}readAsBinaryString(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"BinaryString")}readAsText(A,t=void 0){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsText"),A=P.converters.Blob(A,{strict:!1}),t!==void 0&&(t=P.converters.DOMString(t,"FileReader.readAsText","encoding")),so(this,A,"Text",t)}readAsDataURL(A){P.brandCheck(this,e),P.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),A=P.converters.Blob(A,{strict:!1}),so(this,A,"DataURL")}abort(){if(this[pt]==="empty"||this[pt]==="done"){this[oo]=null;return}this[pt]==="loading"&&(this[pt]="done",this[oo]=null),this[RR]=!0,bC("abort",this),this[pt]!=="loading"&&bC("loadend",this)}get readyState(){switch(P.brandCheck(this,e),this[pt]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return P.brandCheck(this,e),this[oo]}get error(){return P.brandCheck(this,e),this[kC]}get onloadend(){return P.brandCheck(this,e),this[H].loadend}set onloadend(A){P.brandCheck(this,e),this[H].loadend&&this.removeEventListener("loadend",this[H].loadend),typeof A=="function"?(this[H].loadend=A,this.addEventListener("loadend",A)):this[H].loadend=null}get onerror(){return P.brandCheck(this,e),this[H].error}set onerror(A){P.brandCheck(this,e),this[H].error&&this.removeEventListener("error",this[H].error),typeof A=="function"?(this[H].error=A,this.addEventListener("error",A)):this[H].error=null}get onloadstart(){return P.brandCheck(this,e),this[H].loadstart}set onloadstart(A){P.brandCheck(this,e),this[H].loadstart&&this.removeEventListener("loadstart",this[H].loadstart),typeof A=="function"?(this[H].loadstart=A,this.addEventListener("loadstart",A)):this[H].loadstart=null}get onprogress(){return P.brandCheck(this,e),this[H].progress}set onprogress(A){P.brandCheck(this,e),this[H].progress&&this.removeEventListener("progress",this[H].progress),typeof A=="function"?(this[H].progress=A,this.addEventListener("progress",A)):this[H].progress=null}get onload(){return P.brandCheck(this,e),this[H].load}set onload(A){P.brandCheck(this,e),this[H].load&&this.removeEventListener("load",this[H].load),typeof A=="function"?(this[H].load=A,this.addEventListener("load",A)):this[H].load=null}get onabort(){return P.brandCheck(this,e),this[H].abort}set onabort(A){P.brandCheck(this,e),this[H].abort&&this.removeEventListener("abort",this[H].abort),typeof A=="function"?(this[H].abort=A,this.addEventListener("abort",A)):this[H].abort=null}};Xe.EMPTY=Xe.prototype.EMPTY=0;Xe.LOADING=Xe.prototype.LOADING=1;Xe.DONE=Xe.prototype.DONE=2;Object.defineProperties(Xe.prototype,{EMPTY:Ir,LOADING:Ir,DONE:Ir,readAsArrayBuffer:we,readAsBinaryString:we,readAsText:we,readAsDataURL:we,abort:we,readyState:we,result:we,error:we,onloadstart:we,onprogress:we,onload:we,onabort:we,onerror:we,onloadend:we,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(Xe,{EMPTY:Ir,LOADING:Ir,DONE:Ir});FC.exports={FileReader:Xe}});var io=f((gx,SC)=>{"use strict";SC.exports={kConstruct:j().kConstruct}});var MC=f((ux,UC)=>{"use strict";var SR=d("node:assert"),{URLSerializer:NC}=de(),{isValidHeaderName:NR}=be();function UR(e,A,t=!1){let r=NC(e,t),n=NC(A,t);return r===n}function MR(e){SR(e!==null);let A=[];for(let t of e.split(","))t=t.trim(),NR(t)&&A.push(t);return A}UC.exports={urlEquals:UR,getFieldValues:MR}});var xC=f((lx,TC)=>{"use strict";var{kConstruct:LR}=io(),{urlEquals:TR,getFieldValues:Zc}=MC(),{kEnumerableProperty:wt,isDisturbed:xR}=x(),{webidl:b}=ue(),{Response:YR,cloneResponse:GR,fromInnerResponse:JR}=ln(),{Request:bA,fromInnerRequest:vR}=Qr(),{kState:je}=LA(),{fetching:HR}=Qn(),{urlIsHttpHttpsScheme:ao,createDeferredPromise:Cr,readAllBytes:VR}=be(),zc=d("node:assert"),co=class e{#e;constructor(){arguments[0]!==LR&&b.illegalConstructor(),b.util.markAsUncloneable(this),this.#e=arguments[1]}async match(A,t={}){b.brandCheck(this,e);let r="Cache.match";b.argumentLengthCheck(arguments,1,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.CacheQueryOptions(t,r,"options");let n=this.#n(A,t,1);if(n.length!==0)return n[0]}async matchAll(A=void 0,t={}){b.brandCheck(this,e);let r="Cache.matchAll";return A!==void 0&&(A=b.converters.RequestInfo(A,r,"request")),t=b.converters.CacheQueryOptions(t,r,"options"),this.#n(A,t)}async add(A){b.brandCheck(this,e);let t="Cache.add";b.argumentLengthCheck(arguments,1,t),A=b.converters.RequestInfo(A,t,"request");let r=[A];return await this.addAll(r)}async addAll(A){b.brandCheck(this,e);let t="Cache.addAll";b.argumentLengthCheck(arguments,1,t);let r=[],n=[];for(let g of A){if(g===void 0)throw b.errors.conversionFailed({prefix:t,argument:"Argument 1",types:["undefined is not allowed"]});if(g=b.converters.RequestInfo(g),typeof g=="string")continue;let E=g[je];if(!ao(E.url)||E.method!=="GET")throw b.errors.exception({header:t,message:"Expected http/s scheme when method is not GET."})}let s=[];for(let g of A){let E=new bA(g)[je];if(!ao(E.url))throw b.errors.exception({header:t,message:"Expected http/s scheme."});E.initiator="fetch",E.destination="subresource",n.push(E);let Q=Cr();s.push(HR({request:E,processResponse(I){if(I.type==="error"||I.status===206||I.status<200||I.status>299)Q.reject(b.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(I.headersList.contains("vary")){let C=Zc(I.headersList.get("vary"));for(let B of C)if(B==="*"){Q.reject(b.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let h of s)h.abort();return}}},processResponseEndOfBody(I){if(I.aborted){Q.reject(new DOMException("aborted","AbortError"));return}Q.resolve(I)}})),r.push(Q.promise)}let i=await Promise.all(r),a=[],c=0;for(let g of i){let E={type:"put",request:n[c],response:g};a.push(E),c++}let l=Cr(),u=null;try{this.#A(a)}catch(g){u=g}return queueMicrotask(()=>{u===null?l.resolve(void 0):l.reject(u)}),l.promise}async put(A,t){b.brandCheck(this,e);let r="Cache.put";b.argumentLengthCheck(arguments,2,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.Response(t,r,"response");let n=null;if(A instanceof bA?n=A[je]:n=new bA(A)[je],!ao(n.url)||n.method!=="GET")throw b.errors.exception({header:r,message:"Expected an http/s scheme when method is not GET"});let s=t[je];if(s.status===206)throw b.errors.exception({header:r,message:"Got 206 status"});if(s.headersList.contains("vary")){let E=Zc(s.headersList.get("vary"));for(let Q of E)if(Q==="*")throw b.errors.exception({header:r,message:"Got * vary field value"})}if(s.body&&(xR(s.body.stream)||s.body.stream.locked))throw b.errors.exception({header:r,message:"Response body is locked or disturbed"});let o=GR(s),i=Cr();if(s.body!=null){let Q=s.body.stream.getReader();VR(Q).then(i.resolve,i.reject)}else i.resolve(void 0);let a=[],c={type:"put",request:n,response:o};a.push(c);let l=await i.promise;o.body!=null&&(o.body.source=l);let u=Cr(),g=null;try{this.#A(a)}catch(E){g=E}return queueMicrotask(()=>{g===null?u.resolve():u.reject(g)}),u.promise}async delete(A,t={}){b.brandCheck(this,e);let r="Cache.delete";b.argumentLengthCheck(arguments,1,r),A=b.converters.RequestInfo(A,r,"request"),t=b.converters.CacheQueryOptions(t,r,"options");let n=null;if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return!1}else zc(typeof A=="string"),n=new bA(A)[je];let s=[],o={type:"delete",request:n,options:t};s.push(o);let i=Cr(),a=null,c;try{c=this.#A(s)}catch(l){a=l}return queueMicrotask(()=>{a===null?i.resolve(!!c?.length):i.reject(a)}),i.promise}async keys(A=void 0,t={}){b.brandCheck(this,e);let r="Cache.keys";A!==void 0&&(A=b.converters.RequestInfo(A,r,"request")),t=b.converters.CacheQueryOptions(t,r,"options");let n=null;if(A!==void 0)if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return[]}else typeof A=="string"&&(n=new bA(A)[je]);let s=Cr(),o=[];if(A===void 0)for(let i of this.#e)o.push(i[0]);else{let i=this.#t(n,t);for(let a of i)o.push(a[0])}return queueMicrotask(()=>{let i=[];for(let a of o){let c=vR(a,new AbortController().signal,"immutable");i.push(c)}s.resolve(Object.freeze(i))}),s.promise}#A(A){let t=this.#e,r=[...t],n=[],s=[];try{for(let o of A){if(o.type!=="delete"&&o.type!=="put")throw b.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(o.type==="delete"&&o.response!=null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#t(o.request,o.options,n).length)throw new DOMException("???","InvalidStateError");let i;if(o.type==="delete"){if(i=this.#t(o.request,o.options),i.length===0)return[];for(let a of i){let c=t.indexOf(a);zc(c!==-1),t.splice(c,1)}}else if(o.type==="put"){if(o.response==null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let a=o.request;if(!ao(a.url))throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(a.method!=="GET")throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(o.options!=null)throw b.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});i=this.#t(o.request);for(let c of i){let l=t.indexOf(c);zc(l!==-1),t.splice(l,1)}t.push([o.request,o.response]),n.push([o.request,o.response])}s.push([o.request,o.response])}return s}catch(o){throw this.#e.length=0,this.#e=r,o}}#t(A,t,r){let n=[],s=r??this.#e;for(let o of s){let[i,a]=o;this.#s(A,i,a,t)&&n.push(o)}return n}#s(A,t,r=null,n){let s=new URL(A.url),o=new URL(t.url);if(n?.ignoreSearch&&(o.search="",s.search=""),!TR(s,o,!0))return!1;if(r==null||n?.ignoreVary||!r.headersList.contains("vary"))return!0;let i=Zc(r.headersList.get("vary"));for(let a of i){if(a==="*")return!1;let c=t.headersList.get(a),l=A.headersList.get(a);if(c!==l)return!1}return!0}#n(A,t,r=1/0){let n=null;if(A!==void 0)if(A instanceof bA){if(n=A[je],n.method!=="GET"&&!t.ignoreMethod)return[]}else typeof A=="string"&&(n=new bA(A)[je]);let s=[];if(A===void 0)for(let i of this.#e)s.push(i[1]);else{let i=this.#t(n,t);for(let a of i)s.push(a[1])}let o=[];for(let i of s){let a=JR(i,"immutable");if(o.push(a.clone()),o.length>=r)break}return Object.freeze(o)}};Object.defineProperties(co.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:wt,matchAll:wt,add:wt,addAll:wt,put:wt,delete:wt,keys:wt});var LC=[{key:"ignoreSearch",converter:b.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:b.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:b.converters.boolean,defaultValue:()=>!1}];b.converters.CacheQueryOptions=b.dictionaryConverter(LC);b.converters.MultiCacheQueryOptions=b.dictionaryConverter([...LC,{key:"cacheName",converter:b.converters.DOMString}]);b.converters.Response=b.interfaceConverter(YR);b.converters["sequence<RequestInfo>"]=b.sequenceConverter(b.converters.RequestInfo);TC.exports={Cache:co}});var GC=f((Ex,YC)=>{"use strict";var{kConstruct:In}=io(),{Cache:go}=xC(),{webidl:Qe}=ue(),{kEnumerableProperty:Cn}=x(),uo=class e{#e=new Map;constructor(){arguments[0]!==In&&Qe.illegalConstructor(),Qe.util.markAsUncloneable(this)}async match(A,t={}){if(Qe.brandCheck(this,e),Qe.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=Qe.converters.RequestInfo(A),t=Qe.converters.MultiCacheQueryOptions(t),t.cacheName!=null){if(this.#e.has(t.cacheName)){let r=this.#e.get(t.cacheName);return await new go(In,r).match(A,t)}}else for(let r of this.#e.values()){let s=await new go(In,r).match(A,t);if(s!==void 0)return s}}async has(A){Qe.brandCheck(this,e);let t="CacheStorage.has";return Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.has(A)}async open(A){Qe.brandCheck(this,e);let t="CacheStorage.open";if(Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.has(A)){let n=this.#e.get(A);return new go(In,n)}let r=[];return this.#e.set(A,r),new go(In,r)}async delete(A){Qe.brandCheck(this,e);let t="CacheStorage.delete";return Qe.argumentLengthCheck(arguments,1,t),A=Qe.converters.DOMString(A,t,"cacheName"),this.#e.delete(A)}async keys(){return Qe.brandCheck(this,e),[...this.#e.keys()]}};Object.defineProperties(uo.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:Cn,has:Cn,open:Cn,delete:Cn,keys:Cn});YC.exports={CacheStorage:uo}});var vC=f((Qx,JC)=>{"use strict";JC.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var jc=f((Bx,OC)=>{"use strict";function qR(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t>=0&&t<=8||t>=10&&t<=31||t===127)return!0}return!1}function Kc(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<33||t>126||t===34||t===40||t===41||t===60||t===62||t===64||t===44||t===59||t===58||t===92||t===47||t===91||t===93||t===63||t===61||t===123||t===125)throw new Error("Invalid cookie name")}}function Xc(e){let A=e.length,t=0;if(e[0]==='"'){if(A===1||e[A-1]!=='"')throw new Error("Invalid cookie value");--A,++t}for(;t<A;){let r=e.charCodeAt(t++);if(r<33||r>126||r===34||r===44||r===59||r===92)throw new Error("Invalid cookie value")}}function VC(e){for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<32||t>126||t===59)throw new Error("Invalid cookie path")}}function HC(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function OR(e){if(e===" ")return;if(e.length>255)throw new Error("Invalid cookie domain");let A=0;for(let t=0;t<e.length;++t){let r=e.charCodeAt(t);if(r===46){if(A===0)throw new Error("Invalid cookie domain");if(e.charCodeAt(t-1)===45)throw new Error("Invalid cookie domain");A=0;continue}if(A===0&&!HC(r))throw new Error("Invalid cookie domain");if(!HC(r)&&r!==45)throw new Error("Invalid cookie domain");if(++A>63)throw new Error("Invalid cookie domain")}if(A===0||e.charCodeAt(e.length-1)===45)throw new Error("Invalid cookie domain")}var WR=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],PR=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],lo=Array(61).fill(0).map((e,A)=>A.toString().padStart(2,"0"));function qC(e){return typeof e=="number"&&(e=new Date(e)),`${WR[e.getUTCDay()]}, ${lo[e.getUTCDate()]} ${PR[e.getUTCMonth()]} ${e.getUTCFullYear()} ${lo[e.getUTCHours()]}:${lo[e.getUTCMinutes()]}:${lo[e.getUTCSeconds()]} GMT`}function _R(e){if(e<0)throw new Error("Invalid cookie max-age")}function ZR(e){if(e.name.length===0)return null;Kc(e.name),Xc(e.value);let A=[`${e.name}=${e.value}`];e.name.startsWith("__Secure-")&&(e.secure=!0),e.name.startsWith("__Host-")&&(e.secure=!0,e.domain=null,e.path="/"),e.secure&&A.push("Secure"),e.httpOnly&&A.push("HttpOnly"),typeof e.maxAge=="number"&&(_R(e.maxAge),A.push(`Max-Age=${e.maxAge}`)),e.domain&&(OR(e.domain),A.push(`Domain=${e.domain}`)),e.path&&(VC(e.path),A.push(`Path=${e.path}`)),e.expires&&e.expires.toString()!=="Invalid Date"&&A.push(`Expires=${qC(e.expires)}`),e.sameSite&&A.push(`SameSite=${e.sameSite}`);for(let t of e.unparsed){if(!t.includes("="))throw new Error("Invalid unparsed");let[r,...n]=t.split("="),s=r.trim(),o=n.join("=");Kc(s),Xc(o),A.push(`${s}=${o}`)}return A.join("; ")}OC.exports={isCTLExcludingHtab:qR,validateCookieName:Kc,validateCookiePath:VC,validateCookieValue:Xc,toIMFDate:qC,stringify:ZR}});var PC=f((Ix,WC)=>{"use strict";var{maxNameValuePairSize:zR,maxAttributeValueSize:KR}=vC(),{isCTLExcludingHtab:XR}=jc(),{collectASequenceOfCodePointsFast:Eo}=de(),jR=d("node:assert");function $R(e){if(XR(e))return null;let A="",t="",r="",n="";if(e.includes(";")){let s={position:0};A=Eo(";",e,s),t=e.slice(s.position)}else A=e;if(!A.includes("="))n=A;else{let s={position:0};r=Eo("=",A,s),n=A.slice(s.position+1)}return r=r.trim(),n=n.trim(),r.length+n.length>zR?null:{name:r,value:n,...hr(t)}}function hr(e,A={}){if(e.length===0)return A;jR(e[0]===";"),e=e.slice(1);let t="";e.includes(";")?(t=Eo(";",e,{position:0}),e=e.slice(t.length)):(t=e,e="");let r="",n="";if(t.includes("=")){let o={position:0};r=Eo("=",t,o),n=t.slice(o.position+1)}else r=t;if(r=r.trim(),n=n.trim(),n.length>KR)return hr(e,A);let s=r.toLowerCase();if(s==="expires"){let o=new Date(n);A.expires=o}else if(s==="max-age"){let o=n.charCodeAt(0);if((o<48||o>57)&&n[0]!=="-"||!/^\d+$/.test(n))return hr(e,A);let i=Number(n);A.maxAge=i}else if(s==="domain"){let o=n;o[0]==="."&&(o=o.slice(1)),o=o.toLowerCase(),A.domain=o}else if(s==="path"){let o="";n.length===0||n[0]!=="/"?o="/":o=n,A.path=o}else if(s==="secure")A.secure=!0;else if(s==="httponly")A.httpOnly=!0;else if(s==="samesite"){let o=n.toLowerCase();o==="none"?A.sameSite="None":o==="strict"?A.sameSite="Strict":o==="lax"&&(A.sameSite="Lax")}else A.unparsed??=[],A.unparsed.push(`${r}=${n}`);return hr(e,A)}WC.exports={parseSetCookie:$R,parseUnparsedAttributes:hr}});var zC=f((Cx,ZC)=>{"use strict";var{parseSetCookie:eS}=PC(),{stringify:AS}=jc(),{webidl:G}=ue(),{Headers:Qo}=Ct();function tS(e){G.argumentLengthCheck(arguments,1,"getCookies"),G.brandCheck(e,Qo,{strict:!1});let A=e.get("cookie"),t={};if(!A)return t;for(let r of A.split(";")){let[n,...s]=r.split("=");t[n.trim()]=s.join("=")}return t}function rS(e,A,t){G.brandCheck(e,Qo,{strict:!1});let r="deleteCookie";G.argumentLengthCheck(arguments,2,r),A=G.converters.DOMString(A,r,"name"),t=G.converters.DeleteCookieAttributes(t),_C(e,{name:A,value:"",expires:new Date(0),...t})}function nS(e){G.argumentLengthCheck(arguments,1,"getSetCookies"),G.brandCheck(e,Qo,{strict:!1});let A=e.getSetCookie();return A?A.map(t=>eS(t)):[]}function _C(e,A){G.argumentLengthCheck(arguments,2,"setCookie"),G.brandCheck(e,Qo,{strict:!1}),A=G.converters.Cookie(A);let t=AS(A);t&&e.append("Set-Cookie",t)}G.converters.DeleteCookieAttributes=G.dictionaryConverter([{converter:G.nullableConverter(G.converters.DOMString),key:"path",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"domain",defaultValue:()=>null}]);G.converters.Cookie=G.dictionaryConverter([{converter:G.converters.DOMString,key:"name"},{converter:G.converters.DOMString,key:"value"},{converter:G.nullableConverter(e=>typeof e=="number"?G.converters["unsigned long long"](e):new Date(e)),key:"expires",defaultValue:()=>null},{converter:G.nullableConverter(G.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.DOMString),key:"path",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.boolean),key:"secure",defaultValue:()=>null},{converter:G.nullableConverter(G.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:G.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:G.sequenceConverter(G.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);ZC.exports={getCookies:tS,deleteCookie:rS,getSetCookies:nS,setCookie:_C}});var fr=f((hx,XC)=>{"use strict";var{webidl:D}=ue(),{kEnumerableProperty:me}=x(),{kConstruct:KC}=j(),{MessagePort:sS}=d("node:worker_threads"),dr=class e extends Event{#e;constructor(A,t={}){if(A===KC){super(arguments[1],arguments[2]),D.util.markAsUncloneable(this);return}let r="MessageEvent constructor";D.argumentLengthCheck(arguments,1,r),A=D.converters.DOMString(A,r,"type"),t=D.converters.MessageEventInit(t,r,"eventInitDict"),super(A,t),this.#e=t,D.util.markAsUncloneable(this)}get data(){return D.brandCheck(this,e),this.#e.data}get origin(){return D.brandCheck(this,e),this.#e.origin}get lastEventId(){return D.brandCheck(this,e),this.#e.lastEventId}get source(){return D.brandCheck(this,e),this.#e.source}get ports(){return D.brandCheck(this,e),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(A,t=!1,r=!1,n=null,s="",o="",i=null,a=[]){return D.brandCheck(this,e),D.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new e(A,{bubbles:t,cancelable:r,data:n,origin:s,lastEventId:o,source:i,ports:a})}static createFastMessageEvent(A,t){let r=new e(KC,A,t);return r.#e=t,r.#e.data??=null,r.#e.origin??="",r.#e.lastEventId??="",r.#e.source??=null,r.#e.ports??=[],r}},{createFastMessageEvent:oS}=dr;delete dr.createFastMessageEvent;var Bo=class e extends Event{#e;constructor(A,t={}){let r="CloseEvent constructor";D.argumentLengthCheck(arguments,1,r),A=D.converters.DOMString(A,r,"type"),t=D.converters.CloseEventInit(t),super(A,t),this.#e=t,D.util.markAsUncloneable(this)}get wasClean(){return D.brandCheck(this,e),this.#e.wasClean}get code(){return D.brandCheck(this,e),this.#e.code}get reason(){return D.brandCheck(this,e),this.#e.reason}},Io=class e extends Event{#e;constructor(A,t){let r="ErrorEvent constructor";D.argumentLengthCheck(arguments,1,r),super(A,t),D.util.markAsUncloneable(this),A=D.converters.DOMString(A,r,"type"),t=D.converters.ErrorEventInit(t??{}),this.#e=t}get message(){return D.brandCheck(this,e),this.#e.message}get filename(){return D.brandCheck(this,e),this.#e.filename}get lineno(){return D.brandCheck(this,e),this.#e.lineno}get colno(){return D.brandCheck(this,e),this.#e.colno}get error(){return D.brandCheck(this,e),this.#e.error}};Object.defineProperties(dr.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:me,origin:me,lastEventId:me,source:me,ports:me,initMessageEvent:me});Object.defineProperties(Bo.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:me,code:me,wasClean:me});Object.defineProperties(Io.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:me,filename:me,lineno:me,colno:me,error:me});D.converters.MessagePort=D.interfaceConverter(sS);D.converters["sequence<MessagePort>"]=D.sequenceConverter(D.converters.MessagePort);var $c=[{key:"bubbles",converter:D.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:D.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:D.converters.boolean,defaultValue:()=>!1}];D.converters.MessageEventInit=D.dictionaryConverter([...$c,{key:"data",converter:D.converters.any,defaultValue:()=>null},{key:"origin",converter:D.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:D.converters.DOMString,defaultValue:()=>""},{key:"source",converter:D.nullableConverter(D.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:D.converters["sequence<MessagePort>"],defaultValue:()=>new Array(0)}]);D.converters.CloseEventInit=D.dictionaryConverter([...$c,{key:"wasClean",converter:D.converters.boolean,defaultValue:()=>!1},{key:"code",converter:D.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:D.converters.USVString,defaultValue:()=>""}]);D.converters.ErrorEventInit=D.dictionaryConverter([...$c,{key:"message",converter:D.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:D.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:D.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:D.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:D.converters.any}]);XC.exports={MessageEvent:dr,CloseEvent:Bo,ErrorEvent:Io,createFastMessageEvent:oS}});var mt=f((dx,jC)=>{"use strict";var iS="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",aS={enumerable:!0,writable:!1,configurable:!1},cS={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},gS={NOT_SENT:0,PROCESSING:1,SENT:2},uS={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},lS=2**16-1,ES={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},QS=Buffer.allocUnsafe(0),BS={string:1,typedArray:2,arrayBuffer:3,blob:4};jC.exports={uid:iS,sentCloseFrameState:gS,staticPropertyDescriptors:aS,states:cS,opcodes:uS,maxUnsigned16Bit:lS,parserStates:ES,emptyBuffer:QS,sendHints:BS}});var hn=f((fx,$C)=>{"use strict";$C.exports={kWebSocketURL:Symbol("url"),kReadyState:Symbol("ready state"),kController:Symbol("controller"),kResponse:Symbol("response"),kBinaryType:Symbol("binary type"),kSentClose:Symbol("sent close"),kReceivedClose:Symbol("received close"),kByteParser:Symbol("byte parser")}});var pn=f((px,ah)=>{"use strict";var{kReadyState:dn,kController:IS,kResponse:CS,kBinaryType:hS,kWebSocketURL:dS}=hn(),{states:fn,opcodes:ZA}=mt(),{ErrorEvent:fS,createFastMessageEvent:pS}=fr(),{isUtf8:wS}=d("node:buffer"),{collectASequenceOfCodePointsFast:mS,removeHTTPWhitespace:eh}=de();function yS(e){return e[dn]===fn.CONNECTING}function DS(e){return e[dn]===fn.OPEN}function bS(e){return e[dn]===fn.CLOSING}function kS(e){return e[dn]===fn.CLOSED}function eg(e,A,t=(n,s)=>new Event(n,s),r={}){let n=t(e,r);A.dispatchEvent(n)}function FS(e,A,t){if(e[dn]!==fn.OPEN)return;let r;if(A===ZA.TEXT)try{r=ih(t)}catch{th(e,"Received invalid UTF-8 in text frame.");return}else A===ZA.BINARY&&(e[hS]==="blob"?r=new Blob([t]):r=RS(t));eg("message",e,pS,{origin:e[dS].origin,data:r})}function RS(e){return e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}function SS(e){if(e.length===0)return!1;for(let A=0;A<e.length;++A){let t=e.charCodeAt(A);if(t<33||t>126||t===34||t===40||t===41||t===44||t===47||t===58||t===59||t===60||t===61||t===62||t===63||t===64||t===91||t===92||t===93||t===123||t===125)return!1}return!0}function NS(e){return e>=1e3&&e<1015?e!==1004&&e!==1005&&e!==1006:e>=3e3&&e<=4999}function th(e,A){let{[IS]:t,[CS]:r}=e;t.abort(),r?.socket&&!r.socket.destroyed&&r.socket.destroy(),A&&eg("error",e,(n,s)=>new fS(n,s),{error:new Error(A),message:A})}function rh(e){return e===ZA.CLOSE||e===ZA.PING||e===ZA.PONG}function nh(e){return e===ZA.CONTINUATION}function sh(e){return e===ZA.TEXT||e===ZA.BINARY}function US(e){return sh(e)||nh(e)||rh(e)}function MS(e){let A={position:0},t=new Map;for(;A.position<e.length;){let r=mS(";",e,A),[n,s=""]=r.split("=");t.set(eh(n,!0,!1),eh(s,!1,!0)),A.position++}return t}function LS(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let r=e.charCodeAt(t);if(r<48||r>57)return!1}let A=Number.parseInt(e,10);return A>=8&&A<=15}var oh=typeof process.versions.icu=="string",Ah=oh?new TextDecoder("utf-8",{fatal:!0}):void 0,ih=oh?Ah.decode.bind(Ah):function(e){if(wS(e))return e.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};ah.exports={isConnecting:yS,isEstablished:DS,isClosing:bS,isClosed:kS,fireEvent:eg,isValidSubprotocol:SS,isValidStatusCode:NS,failWebsocketConnection:th,websocketMessageReceived:FS,utf8Decode:ih,isControlFrame:rh,isContinuationFrame:nh,isTextBinaryFrame:sh,isValidOpcode:US,parseExtensions:MS,isValidClientWindowBits:LS}});var ho=f((wx,ch)=>{"use strict";var{maxUnsigned16Bit:TS}=mt(),Co=16386,Ag,wn=null,pr=Co;try{Ag=d("node:crypto")}catch{Ag={randomFillSync:function(A,t,r){for(let n=0;n<A.length;++n)A[n]=Math.random()*255|0;return A}}}function xS(){return pr===Co&&(pr=0,Ag.randomFillSync(wn??=Buffer.allocUnsafe(Co),0,Co)),[wn[pr++],wn[pr++],wn[pr++],wn[pr++]]}var tg=class{constructor(A){this.frameData=A}createFrame(A){let t=this.frameData,r=xS(),n=t?.byteLength??0,s=n,o=6;n>TS?(o+=8,s=127):n>125&&(o+=2,s=126);let i=Buffer.allocUnsafe(n+o);i[0]=i[1]=0,i[0]|=128,i[0]=(i[0]&240)+A;i[o-4]=r[0],i[o-3]=r[1],i[o-2]=r[2],i[o-1]=r[3],i[1]=s,s===126?i.writeUInt16BE(n,2):s===127&&(i[2]=i[3]=0,i.writeUIntBE(n,4,6)),i[1]|=128;for(let a=0;a<n;++a)i[o+a]=t[a]^r[a&3];return i}};ch.exports={WebsocketFrameSend:tg}});var ng=f((mx,Ih)=>{"use strict";var{uid:YS,states:mn,sentCloseFrameState:fo,emptyBuffer:GS,opcodes:JS}=mt(),{kReadyState:yn,kSentClose:po,kByteParser:uh,kReceivedClose:gh,kResponse:lh}=hn(),{fireEvent:vS,failWebsocketConnection:zA,isClosing:HS,isClosed:VS,isEstablished:qS,parseExtensions:OS}=pn(),{channels:wr}=Ut(),{CloseEvent:WS}=fr(),{makeRequest:PS}=Qr(),{fetching:_S}=Qn(),{Headers:ZS,getHeadersList:zS}=Ct(),{getDecodeSplit:KS}=be(),{WebsocketFrameSend:XS}=ho(),rg;try{rg=d("node:crypto")}catch{}function jS(e,A,t,r,n,s){let o=e;o.protocol=e.protocol==="ws:"?"http:":"https:";let i=PS({urlList:[o],client:t,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(s.headers){let u=zS(new ZS(s.headers));i.headersList=u}let a=rg.randomBytes(16).toString("base64");i.headersList.append("sec-websocket-key",a),i.headersList.append("sec-websocket-version","13");for(let u of A)i.headersList.append("sec-websocket-protocol",u);return i.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),_S({request:i,useParallelQueue:!0,dispatcher:s.dispatcher,processResponse(u){if(u.type==="error"||u.status!==101){zA(r,"Received network error or non-101 status code.");return}if(A.length!==0&&!u.headersList.get("Sec-WebSocket-Protocol")){zA(r,"Server did not respond with sent protocols.");return}if(u.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){zA(r,'Server did not set Upgrade header to "websocket".');return}if(u.headersList.get("Connection")?.toLowerCase()!=="upgrade"){zA(r,'Server did not set Connection header to "upgrade".');return}let g=u.headersList.get("Sec-WebSocket-Accept"),E=rg.createHash("sha1").update(a+YS).digest("base64");if(g!==E){zA(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let Q=u.headersList.get("Sec-WebSocket-Extensions"),I;if(Q!==null&&(I=OS(Q),!I.has("permessage-deflate"))){zA(r,"Sec-WebSocket-Extensions header does not match.");return}let C=u.headersList.get("Sec-WebSocket-Protocol");if(C!==null&&!KS("sec-websocket-protocol",i.headersList).includes(C)){zA(r,"Protocol was not set in the opening handshake.");return}u.socket.on("data",Eh),u.socket.on("close",Qh),u.socket.on("error",Bh),wr.open.hasSubscribers&&wr.open.publish({address:u.socket.address(),protocol:C,extensions:Q}),n(u,I)}})}function $S(e,A,t,r){if(!(HS(e)||VS(e)))if(!qS(e))zA(e,"Connection was closed before it was established."),e[yn]=mn.CLOSING;else if(e[po]===fo.NOT_SENT){e[po]=fo.PROCESSING;let n=new XS;A!==void 0&&t===void 0?(n.frameData=Buffer.allocUnsafe(2),n.frameData.writeUInt16BE(A,0)):A!==void 0&&t!==void 0?(n.frameData=Buffer.allocUnsafe(2+r),n.frameData.writeUInt16BE(A,0),n.frameData.write(t,2,"utf-8")):n.frameData=GS,e[lh].socket.write(n.createFrame(JS.CLOSE)),e[po]=fo.SENT,e[yn]=mn.CLOSING}else e[yn]=mn.CLOSING}function Eh(e){this.ws[uh].write(e)||this.pause()}function Qh(){let{ws:e}=this,{[lh]:A}=e;A.socket.off("data",Eh),A.socket.off("close",Qh),A.socket.off("error",Bh);let t=e[po]===fo.SENT&&e[gh],r=1005,n="",s=e[uh].closingInfo;s&&!s.error?(r=s.code??1005,n=s.reason):e[gh]||(r=1006),e[yn]=mn.CLOSED,vS("close",e,(o,i)=>new WS(o,i),{wasClean:t,code:r,reason:n}),wr.close.hasSubscribers&&wr.close.publish({websocket:e,code:r,reason:n})}function Bh(e){let{ws:A}=this;A[yn]=mn.CLOSING,wr.socketError.hasSubscribers&&wr.socketError.publish(e),this.destroy()}Ih.exports={establishWebSocketConnection:jS,closeWebSocketConnection:$S}});var hh=f((yx,Ch)=>{"use strict";var{createInflateRaw:eN,Z_DEFAULT_WINDOWBITS:AN}=d("node:zlib"),{isValidClientWindowBits:tN}=pn(),{MessageSizeExceededError:rN}=v(),nN=Buffer.from([0,0,255,255]),wo=Symbol("kBuffer"),Dn=Symbol("kLength"),sg=class{#e;#A={};#t=0;constructor(A,t){this.#A.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#A.serverMaxWindowBits=A.get("server_max_window_bits"),this.#t=t.maxPayloadSize}decompress(A,t,r){if(!this.#e){let n=AN;if(this.#A.serverMaxWindowBits){if(!tN(this.#A.serverMaxWindowBits)){r(new Error("Invalid server_max_window_bits"));return}n=Number.parseInt(this.#A.serverMaxWindowBits)}try{this.#e=eN({windowBits:n})}catch(s){r(s);return}this.#e[wo]=[],this.#e[Dn]=0,this.#e.on("data",s=>{if(this.#e[Dn]+=s.length,this.#t>0&&this.#e[Dn]>this.#t){r(new rN),this.#e.removeAllListeners(),this.#e=null;return}this.#e[wo].push(s)}),this.#e.on("error",s=>{this.#e=null,r(s)})}this.#e.write(A),t&&this.#e.write(nN),this.#e.flush(()=>{if(!this.#e)return;let n=Buffer.concat(this.#e[wo],this.#e[Dn]);this.#e[wo].length=0,this.#e[Dn]=0,r(null,n)})}};Ch.exports={PerMessageDeflate:sg}});var Fh=f((Dx,kh)=>{"use strict";var{Writable:sN}=d("node:stream"),oN=d("node:assert"),{parserStates:ye,opcodes:mr,states:iN,emptyBuffer:dh,sentCloseFrameState:fh}=mt(),{kReadyState:aN,kSentClose:ph,kResponse:wh,kReceivedClose:mh}=hn(),{channels:mo}=Ut(),{isValidStatusCode:cN,isValidOpcode:gN,failWebsocketConnection:Le,websocketMessageReceived:yh,utf8Decode:uN,isControlFrame:og,isTextBinaryFrame:ig,isContinuationFrame:lN}=pn(),{WebsocketFrameSend:Dh}=ho(),{closeWebSocketConnection:bh}=ng(),{PerMessageDeflate:EN}=hh(),{MessageSizeExceededError:ag}=v();function bn(e,A,t){bh(e,A,t,Buffer.byteLength(t)),Le(e,t)}var cg=class extends sN{#e=[];#A=0;#t=0;#s=!1;#n=ye.INFO;#r={};#o=[];#i;#c;#a;constructor(A,t,r={}){super(),this.ws=A,this.#i=t??new Map,this.#c=r.maxFragments??0,this.#a=r.maxPayloadSize??0,this.#i.has("permessage-deflate")&&this.#i.set("permessage-deflate",new EN(t,r))}_write(A,t,r){this.#e.push(A),this.#t+=A.length,this.#s=!0,this.run(r)}#g(){return this.#a>0&&!og(this.#r.opcode)&&this.#r.payloadLength+this.#A>this.#a?(bn(this.ws,1009,"Payload size exceeds maximum allowed size"),!1):!0}run(A){for(;this.#s;)if(this.#n===ye.INFO){if(this.#t<2)return A();let t=this.consume(2),r=(t[0]&128)!==0,n=t[0]&15,s=(t[1]&128)===128,o=!r&&n!==mr.CONTINUATION,i=t[1]&127,a=t[0]&64,c=t[0]&32,l=t[0]&16;if(!gN(n))return Le(this.ws,"Invalid opcode received"),A();if(s)return Le(this.ws,"Frame cannot be masked"),A();if(a!==0&&!this.#i.has("permessage-deflate")){Le(this.ws,"Expected RSV1 to be clear.");return}if(c!==0||l!==0){Le(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(o&&!ig(n)){Le(this.ws,"Invalid frame type was fragmented.");return}if(ig(n)&&this.#o.length>0){Le(this.ws,"Expected continuation frame");return}if(this.#r.fragmented&&o){Le(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((i>125||o)&&og(n)){Le(this.ws,"Control frame either too large or fragmented");return}if(lN(n)&&this.#o.length===0&&!this.#r.compressed){Le(this.ws,"Unexpected continuation frame");return}if(i<=125){if(this.#r.payloadLength=i,this.#n=ye.READ_DATA,!this.#g())return}else i===126?this.#n=ye.PAYLOADLENGTH_16:i===127&&(this.#n=ye.PAYLOADLENGTH_64);ig(n)&&(this.#r.binaryType=n,this.#r.compressed=a!==0),this.#r.opcode=n,this.#r.masked=s,this.#r.fin=r,this.#r.fragmented=o}else if(this.#n===ye.PAYLOADLENGTH_16){if(this.#t<2)return A();let t=this.consume(2);if(this.#r.payloadLength=t.readUInt16BE(0),this.#n=ye.READ_DATA,!this.#g())return}else if(this.#n===ye.PAYLOADLENGTH_64){if(this.#t<8)return A();let t=this.consume(8),r=t.readUInt32BE(0),n=t.readUInt32BE(4);if(r!==0||n>2**31-1){Le(this.ws,"Received payload length > 2^31 bytes.");return}if(this.#r.payloadLength=n,this.#n=ye.READ_DATA,!this.#g())return}else if(this.#n===ye.READ_DATA){if(this.#t<this.#r.payloadLength)return A();let t=this.consume(this.#r.payloadLength);if(og(this.#r.opcode))this.#s=this.parseControlFrame(t),this.#n=ye.INFO;else if(this.#r.compressed){this.#i.get("permessage-deflate").decompress(t,this.#r.fin,(r,n)=>{if(r){let s=r instanceof ag?1009:1007;bn(this.ws,s,r.message);return}if(this.writeFragments(n)){if(this.#a>0&&this.#A>this.#a){bn(this.ws,1009,new ag().message);return}if(!this.#r.fin){this.#n=ye.INFO,this.#s=!0,this.run(A);return}yh(this.ws,this.#r.binaryType,this.consumeFragments()),this.#s=!0,this.#n=ye.INFO,this.run(A)}}),this.#s=!1;break}else{if(!this.writeFragments(t))return;if(this.#a>0&&this.#A>this.#a){bn(this.ws,1009,new ag().message);return}!this.#r.fragmented&&this.#r.fin&&yh(this.ws,this.#r.binaryType,this.consumeFragments()),this.#n=ye.INFO}}}consume(A){if(A>this.#t)throw new Error("Called consume() before buffers satiated.");if(A===0)return dh;if(this.#e[0].length===A)return this.#t-=this.#e[0].length,this.#e.shift();let t=Buffer.allocUnsafe(A),r=0;for(;r!==A;){let n=this.#e[0],{length:s}=n;if(s+r===A){t.set(this.#e.shift(),r);break}else if(s+r>A){t.set(n.subarray(0,A-r),r),this.#e[0]=n.subarray(A-r);break}else t.set(this.#e.shift(),r),r+=n.length}return this.#t-=A,t}writeFragments(A){return this.#c>0&&this.#o.length===this.#c?(bn(this.ws,1008,"Too many message fragments"),!1):(this.#A+=A.length,this.#o.push(A),!0)}consumeFragments(){let A=this.#o;if(A.length===1)return this.#A=0,A.shift();let t=Buffer.concat(A,this.#A);return this.#o=[],this.#A=0,t}parseCloseBody(A){oN(A.length!==1);let t;if(A.length>=2&&(t=A.readUInt16BE(0)),t!==void 0&&!cN(t))return{code:1002,reason:"Invalid status code",error:!0};let r=A.subarray(2);r[0]===239&&r[1]===187&&r[2]===191&&(r=r.subarray(3));try{r=uN(r)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:t,reason:r,error:!1}}parseControlFrame(A){let{opcode:t,payloadLength:r}=this.#r;if(t===mr.CLOSE){if(r===1)return Le(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#r.closeInfo=this.parseCloseBody(A),this.#r.closeInfo.error){let{code:n,reason:s}=this.#r.closeInfo;return bh(this.ws,n,s,s.length),Le(this.ws,s),!1}if(this.ws[ph]!==fh.SENT){let n=dh;this.#r.closeInfo.code&&(n=Buffer.allocUnsafe(2),n.writeUInt16BE(this.#r.closeInfo.code,0));let s=new Dh(n);this.ws[wh].socket.write(s.createFrame(mr.CLOSE),o=>{o||(this.ws[ph]=fh.SENT)})}return this.ws[aN]=iN.CLOSING,this.ws[mh]=!0,!1}else if(t===mr.PING){if(!this.ws[mh]){let n=new Dh(A);this.ws[wh].socket.write(n.createFrame(mr.PONG)),mo.ping.hasSubscribers&&mo.ping.publish({payload:A})}}else t===mr.PONG&&mo.pong.hasSubscribers&&mo.pong.publish({payload:A});return!0}get closingInfo(){return this.#r.closeInfo}};kh.exports={ByteParser:cg}});var Mh=f((bx,Uh)=>{"use strict";var{WebsocketFrameSend:QN}=ho(),{opcodes:Rh,sendHints:yr}=mt(),BN=Ba(),Sh=Buffer[Symbol.species],gg=class{#e=new BN;#A=!1;#t;constructor(A){this.#t=A}add(A,t,r){if(r!==yr.blob){let s=Nh(A,r);if(!this.#A)this.#t.write(s,t);else{let o={promise:null,callback:t,frame:s};this.#e.push(o)}return}let n={promise:A.arrayBuffer().then(s=>{n.promise=null,n.frame=Nh(s,r)}),callback:t,frame:null};this.#e.push(n),this.#A||this.#s()}async#s(){this.#A=!0;let A=this.#e;for(;!A.isEmpty();){let t=A.shift();t.promise!==null&&await t.promise,this.#t.write(t.frame,t.callback),t.callback=t.frame=null}this.#A=!1}};function Nh(e,A){return new QN(IN(e,A)).createFrame(A===yr.string?Rh.TEXT:Rh.BINARY)}function IN(e,A){switch(A){case yr.string:return Buffer.from(e);case yr.arrayBuffer:case yr.blob:return new Sh(e);case yr.typedArray:return new Sh(e.buffer,e.byteOffset,e.byteLength)}}Uh.exports={SendQueue:gg}});var qh=f((kx,Vh)=>{"use strict";var{webidl:U}=ue(),{URLSerializer:CN}=de(),{environmentSettingsObject:Lh}=be(),{staticPropertyDescriptors:KA,states:kn,sentCloseFrameState:hN,sendHints:yo}=mt(),{kWebSocketURL:Th,kReadyState:ug,kController:xh,kBinaryType:Do,kResponse:Yh,kSentClose:dN,kByteParser:fN}=hn(),{isConnecting:pN,isEstablished:wN,isClosing:mN,isValidSubprotocol:yN,fireEvent:Gh}=pn(),{establishWebSocketConnection:DN,closeWebSocketConnection:Jh}=ng(),{ByteParser:bN}=Fh(),{kEnumerableProperty:Ve,isBlobLike:vh}=x(),{getGlobalDispatcher:kN}=Js(),{types:Hh}=d("node:util"),{ErrorEvent:FN,CloseEvent:RN}=fr(),{SendQueue:SN}=Mh(),Te=class e extends EventTarget{#e={open:null,error:null,close:null,message:null};#A=0;#t="";#s="";#n;constructor(A,t=[]){super(),U.util.markAsUncloneable(this);let r="WebSocket constructor";U.argumentLengthCheck(arguments,1,r);let n=U.converters["DOMString or sequence<DOMString> or WebSocketInit"](t,r,"options");A=U.converters.USVString(A,r,"url"),t=n.protocols;let s=Lh.settingsObject.baseUrl,o;try{o=new URL(A,s)}catch(a){throw new DOMException(a,"SyntaxError")}if(o.protocol==="http:"?o.protocol="ws:":o.protocol==="https:"&&(o.protocol="wss:"),o.protocol!=="ws:"&&o.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${o.protocol}`,"SyntaxError");if(o.hash||o.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof t=="string"&&(t=[t]),t.length!==new Set(t.map(a=>a.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(t.length>0&&!t.every(a=>yN(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[Th]=new URL(o.href);let i=Lh.settingsObject;this[xh]=DN(o,t,i,this,(a,c)=>this.#r(a,c),n),this[ug]=e.CONNECTING,this[dN]=hN.NOT_SENT,this[Do]="blob"}close(A=void 0,t=void 0){U.brandCheck(this,e);let r="WebSocket.close";if(A!==void 0&&(A=U.converters["unsigned short"](A,r,"code",{clamp:!0})),t!==void 0&&(t=U.converters.USVString(t,r,"reason")),A!==void 0&&A!==1e3&&(A<3e3||A>4999))throw new DOMException("invalid code","InvalidAccessError");let n=0;if(t!==void 0&&(n=Buffer.byteLength(t),n>123))throw new DOMException(`Reason must be less than 123 bytes; received ${n}`,"SyntaxError");Jh(this,A,t,n)}send(A){U.brandCheck(this,e);let t="WebSocket.send";if(U.argumentLengthCheck(arguments,1,t),A=U.converters.WebSocketSendData(A,t,"data"),pN(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!wN(this)||mN(this)))if(typeof A=="string"){let r=Buffer.byteLength(A);this.#A+=r,this.#n.add(A,()=>{this.#A-=r},yo.string)}else Hh.isArrayBuffer(A)?(this.#A+=A.byteLength,this.#n.add(A,()=>{this.#A-=A.byteLength},yo.arrayBuffer)):ArrayBuffer.isView(A)?(this.#A+=A.byteLength,this.#n.add(A,()=>{this.#A-=A.byteLength},yo.typedArray)):vh(A)&&(this.#A+=A.size,this.#n.add(A,()=>{this.#A-=A.size},yo.blob))}get readyState(){return U.brandCheck(this,e),this[ug]}get bufferedAmount(){return U.brandCheck(this,e),this.#A}get url(){return U.brandCheck(this,e),CN(this[Th])}get extensions(){return U.brandCheck(this,e),this.#s}get protocol(){return U.brandCheck(this,e),this.#t}get onopen(){return U.brandCheck(this,e),this.#e.open}set onopen(A){U.brandCheck(this,e),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof A=="function"?(this.#e.open=A,this.addEventListener("open",A)):this.#e.open=null}get onerror(){return U.brandCheck(this,e),this.#e.error}set onerror(A){U.brandCheck(this,e),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof A=="function"?(this.#e.error=A,this.addEventListener("error",A)):this.#e.error=null}get onclose(){return U.brandCheck(this,e),this.#e.close}set onclose(A){U.brandCheck(this,e),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof A=="function"?(this.#e.close=A,this.addEventListener("close",A)):this.#e.close=null}get onmessage(){return U.brandCheck(this,e),this.#e.message}set onmessage(A){U.brandCheck(this,e),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof A=="function"?(this.#e.message=A,this.addEventListener("message",A)):this.#e.message=null}get binaryType(){return U.brandCheck(this,e),this[Do]}set binaryType(A){U.brandCheck(this,e),A!=="blob"&&A!=="arraybuffer"?this[Do]="blob":this[Do]=A}#r(A,t){this[Yh]=A;let r=this[xh]?.dispatcher?.webSocketOptions,n=r?.maxFragments,s=r?.maxPayloadSize,o=new bN(this,t,{maxFragments:n,maxPayloadSize:s});o.on("drain",NN),o.on("error",UN.bind(this)),A.socket.ws=this,this[fN]=o,this.#n=new SN(A.socket),this[ug]=kn.OPEN;let i=A.headersList.get("sec-websocket-extensions");i!==null&&(this.#s=i);let a=A.headersList.get("sec-websocket-protocol");a!==null&&(this.#t=a),Gh("open",this)}};Te.CONNECTING=Te.prototype.CONNECTING=kn.CONNECTING;Te.OPEN=Te.prototype.OPEN=kn.OPEN;Te.CLOSING=Te.prototype.CLOSING=kn.CLOSING;Te.CLOSED=Te.prototype.CLOSED=kn.CLOSED;Object.defineProperties(Te.prototype,{CONNECTING:KA,OPEN:KA,CLOSING:KA,CLOSED:KA,url:Ve,readyState:Ve,bufferedAmount:Ve,onopen:Ve,onerror:Ve,onclose:Ve,close:Ve,onmessage:Ve,binaryType:Ve,send:Ve,extensions:Ve,protocol:Ve,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(Te,{CONNECTING:KA,OPEN:KA,CLOSING:KA,CLOSED:KA});U.converters["sequence<DOMString>"]=U.sequenceConverter(U.converters.DOMString);U.converters["DOMString or sequence<DOMString>"]=function(e,A,t){return U.util.Type(e)==="Object"&&Symbol.iterator in e?U.converters["sequence<DOMString>"](e):U.converters.DOMString(e,A,t)};U.converters.WebSocketInit=U.dictionaryConverter([{key:"protocols",converter:U.converters["DOMString or sequence<DOMString>"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:U.converters.any,defaultValue:()=>kN()},{key:"headers",converter:U.nullableConverter(U.converters.HeadersInit)}]);U.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(e){return U.util.Type(e)==="Object"&&!(Symbol.iterator in e)?U.converters.WebSocketInit(e):{protocols:U.converters["DOMString or sequence<DOMString>"](e)}};U.converters.WebSocketSendData=function(e){if(U.util.Type(e)==="Object"){if(vh(e))return U.converters.Blob(e,{strict:!1});if(ArrayBuffer.isView(e)||Hh.isArrayBuffer(e))return U.converters.BufferSource(e)}return U.converters.USVString(e)};function NN(){this.ws[Yh].socket.resume()}function UN(e){let A,t;e instanceof RN?(A=e.reason,t=e.code):A=e.message,Gh("error",this,()=>new FN("error",{error:e,message:A})),Jh(this,t)}Vh.exports={WebSocket:Te}});var lg=f((Fx,Oh)=>{"use strict";function MN(e){return e.indexOf("\0")===-1}function LN(e){if(e.length===0)return!1;for(let A=0;A<e.length;A++)if(e.charCodeAt(A)<48||e.charCodeAt(A)>57)return!1;return!0}function TN(e){return new Promise(A=>{setTimeout(A,e).unref()})}Oh.exports={isValidLastEventId:MN,isASCIINumber:LN,delay:TN}});var Zh=f((Rx,_h)=>{"use strict";var{Transform:xN}=d("node:stream"),{isASCIINumber:Wh,isValidLastEventId:Ph}=lg(),kA=[239,187,191],Eg=10,bo=13,YN=58,GN=32,Qg=class extends xN{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0,super(A),this.state=A.eventSourceSettings||{},A.push&&(this.push=A.push)}_transform(A,t,r){if(A.length===0){r();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,A]):this.buffer=A,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===kA[0]){r();return}this.checkBOM=!1,r();return;case 2:if(this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]){r();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]&&this.buffer[2]===kA[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,r();return}this.checkBOM=!1;break;default:this.buffer[0]===kA[0]&&this.buffer[1]===kA[1]&&this.buffer[2]===kA[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos<this.buffer.length;){if(this.eventEndCheck){if(this.crlfCheck){if(this.buffer[this.pos]===Eg){this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.crlfCheck=!1;continue}this.crlfCheck=!1}if(this.buffer[this.pos]===Eg||this.buffer[this.pos]===bo){this.buffer[this.pos]===bo&&(this.crlfCheck=!0),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,(this.event.data!==void 0||this.event.event||this.event.id||this.event.retry)&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(this.buffer[this.pos]===Eg||this.buffer[this.pos]===bo){this.buffer[this.pos]===bo&&(this.crlfCheck=!0),this.parseLine(this.buffer.subarray(0,this.pos),this.event),this.buffer=this.buffer.subarray(this.pos+1),this.pos=0,this.eventEndCheck=!0;continue}this.pos++}r()}parseLine(A,t){if(A.length===0)return;let r=A.indexOf(YN);if(r===0)return;let n="",s="";if(r!==-1){n=A.subarray(0,r).toString("utf8");let o=r+1;A[o]===GN&&++o,s=A.subarray(o).toString("utf8")}else n=A.toString("utf8"),s="";switch(n){case"data":t[n]===void 0?t[n]=s:t[n]+=`
45
+ ${s}`;break;case"retry":Wh(s)&&(t[n]=s);break;case"id":Ph(s)&&(t[n]=s);break;case"event":s.length>0&&(t[n]=s);break}}processEvent(A){A.retry&&Wh(A.retry)&&(this.state.reconnectionTime=parseInt(A.retry,10)),A.id&&Ph(A.id)&&(this.state.lastEventId=A.id),A.data!==void 0&&this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}};_h.exports={EventSourceStream:Qg}});var td=f((Sx,Ad)=>{"use strict";var{pipeline:JN}=d("node:stream"),{fetching:vN}=Qn(),{makeRequest:HN}=Qr(),{webidl:FA}=ue(),{EventSourceStream:VN}=Zh(),{parseMIMEType:qN}=de(),{createFastMessageEvent:ON}=fr(),{isNetworkError:zh}=ln(),{delay:WN}=lg(),{kEnumerableProperty:yt}=x(),{environmentSettingsObject:Kh}=be(),Xh=!1,jh=3e3,Fn=0,$h=1,Rn=2,PN="anonymous",_N="use-credentials",Dr=class e extends EventTarget{#e={open:null,error:null,message:null};#A=null;#t=!1;#s=Fn;#n=null;#r=null;#o;#i;constructor(A,t={}){super(),FA.util.markAsUncloneable(this);let r="EventSource constructor";FA.argumentLengthCheck(arguments,1,r),Xh||(Xh=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),A=FA.converters.USVString(A,r,"url"),t=FA.converters.EventSourceInitDict(t,r,"eventSourceInitDict"),this.#o=t.dispatcher,this.#i={lastEventId:"",reconnectionTime:jh};let n=Kh,s;try{s=new URL(A,n.settingsObject.baseUrl),this.#i.origin=s.origin}catch(a){throw new DOMException(a,"SyntaxError")}this.#A=s.href;let o=PN;t.withCredentials&&(o=_N,this.#t=!0);let i={redirect:"follow",keepalive:!0,mode:"cors",credentials:o==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};i.client=Kh.settingsObject,i.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],i.cache="no-store",i.initiator="other",i.urlList=[new URL(this.#A)],this.#n=HN(i),this.#c()}get readyState(){return this.#s}get url(){return this.#A}get withCredentials(){return this.#t}#c(){if(this.#s===Rn)return;this.#s=Fn;let A={request:this.#n,dispatcher:this.#o},t=r=>{zh(r)&&(this.dispatchEvent(new Event("error")),this.close()),this.#a()};A.processResponseEndOfBody=t,A.processResponse=r=>{if(zh(r))if(r.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#a();return}let n=r.headersList.get("content-type",!0),s=n!==null?qN(n):"failure",o=s!=="failure"&&s.essence==="text/event-stream";if(r.status!==200||o===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#s=$h,this.dispatchEvent(new Event("open")),this.#i.origin=r.urlList[r.urlList.length-1].origin;let i=new VN({eventSourceSettings:this.#i,push:a=>{this.dispatchEvent(ON(a.type,a.options))}});JN(r.body.stream,i,a=>{a?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#r=vN(A)}async#a(){this.#s!==Rn&&(this.#s=Fn,this.dispatchEvent(new Event("error")),await WN(this.#i.reconnectionTime),this.#s===Fn&&(this.#i.lastEventId.length&&this.#n.headersList.set("last-event-id",this.#i.lastEventId,!0),this.#c()))}close(){FA.brandCheck(this,e),this.#s!==Rn&&(this.#s=Rn,this.#r.abort(),this.#n=null)}get onopen(){return this.#e.open}set onopen(A){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof A=="function"?(this.#e.open=A,this.addEventListener("open",A)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(A){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof A=="function"?(this.#e.message=A,this.addEventListener("message",A)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(A){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof A=="function"?(this.#e.error=A,this.addEventListener("error",A)):this.#e.error=null}},ed={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:Fn,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:$h,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:Rn,writable:!1}};Object.defineProperties(Dr,ed);Object.defineProperties(Dr.prototype,ed);Object.defineProperties(Dr.prototype,{close:yt,onerror:yt,onmessage:yt,onopen:yt,readyState:yt,url:yt,withCredentials:yt});FA.converters.EventSourceInitDict=FA.dictionaryConverter([{key:"withCredentials",converter:FA.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:FA.converters.any}]);Ad.exports={EventSource:Dr,defaultReconnectionTime:jh}});var od=f((Nx,N)=>{"use strict";var ZN=jt(),rd=Ur(),zN=$t(),KN=eQ(),XN=er(),jN=Ta(),$N=yQ(),eU=NQ(),nd=v(),Fo=x(),{InvalidArgumentError:ko}=nd,br=CB(),AU=Lr(),tU=Ic(),rU=$B(),nU=dc(),sU=rc(),oU=Rs(),{getGlobalDispatcher:sd,setGlobalDispatcher:iU}=Js(),aU=vs(),cU=hs(),gU=ds();Object.assign(rd.prototype,br);N.exports.Dispatcher=rd;N.exports.Client=ZN;N.exports.Pool=zN;N.exports.BalancedPool=KN;N.exports.Agent=XN;N.exports.ProxyAgent=jN;N.exports.EnvHttpProxyAgent=$N;N.exports.RetryAgent=eU;N.exports.RetryHandler=oU;N.exports.DecoratorHandler=aU;N.exports.RedirectHandler=cU;N.exports.createRedirectInterceptor=gU;N.exports.interceptors={redirect:oI(),retry:aI(),dump:gI(),dns:EI()};N.exports.buildConnector=AU;N.exports.errors=nd;N.exports.util={parseHeaders:Fo.parseHeaders,headerNameToString:Fo.headerNameToString};function Sn(e){return(A,t,r)=>{if(typeof t=="function"&&(r=t,t=null),!A||typeof A!="string"&&typeof A!="object"&&!(A instanceof URL))throw new ko("invalid url");if(t!=null&&typeof t!="object")throw new ko("invalid opts");if(t&&t.path!=null){if(typeof t.path!="string")throw new ko("invalid opts.path");let o=t.path;t.path.startsWith("/")||(o=`/${o}`),A=new URL(Fo.parseOrigin(A).origin+o)}else t||(t=typeof A=="object"?A:{}),A=Fo.parseURL(A);let{agent:n,dispatcher:s=sd()}=t;if(n)throw new ko("unsupported opts.agent. Did you mean opts.client?");return e.call(s,{...t,origin:A.origin,path:A.search?`${A.pathname}${A.search}`:A.pathname,method:t.method||(t.body?"PUT":"GET")},r)}}N.exports.setGlobalDispatcher=iU;N.exports.getGlobalDispatcher=sd;var uU=Qn().fetch;N.exports.fetch=async function(A,t=void 0){try{return await uU(A,t)}catch(r){throw r&&typeof r=="object"&&Error.captureStackTrace(r),r}};N.exports.Headers=Ct().Headers;N.exports.Response=ln().Response;N.exports.Request=Qr().Request;N.exports.FormData=Hr().FormData;N.exports.File=globalThis.File??d("node:buffer").File;N.exports.FileReader=RC().FileReader;var{setGlobalOrigin:lU,getGlobalOrigin:EU}=xi();N.exports.setGlobalOrigin=lU;N.exports.getGlobalOrigin=EU;var{CacheStorage:QU}=GC(),{kConstruct:BU}=io();N.exports.caches=new QU(BU);var{deleteCookie:IU,getCookies:CU,getSetCookies:hU,setCookie:dU}=zC();N.exports.deleteCookie=IU;N.exports.getCookies=CU;N.exports.getSetCookies=hU;N.exports.setCookie=dU;var{parseMIMEType:fU,serializeAMimeType:pU}=de();N.exports.parseMIMEType=fU;N.exports.serializeAMimeType=pU;var{CloseEvent:wU,ErrorEvent:mU,MessageEvent:yU}=fr();N.exports.WebSocket=qh().WebSocket;N.exports.CloseEvent=wU;N.exports.ErrorEvent=mU;N.exports.MessageEvent=yU;N.exports.request=Sn(br.request);N.exports.stream=Sn(br.stream);N.exports.pipeline=Sn(br.pipeline);N.exports.connect=Sn(br.connect);N.exports.upgrade=Sn(br.upgrade);N.exports.MockClient=tU;N.exports.MockPool=nU;N.exports.MockAgent=rU;N.exports.mockErrors=sU;var{EventSource:DU}=td();N.exports.EventSource=DU});import kr from"node:net";import bU from"node:dns";function Ro(e){let A=String(e).toLowerCase().split("%")[0];if((A.match(/::/g)||[]).length>1)return null;let t=l=>{if(!l)return[];let u=l.split(":"),g=u.at(-1);if(g?.includes(".")){let E=g.split(".").map(Number);if(E.length!==4||E.some(Q=>!Number.isInteger(Q)||Q<0||Q>255))return null;u.splice(u.length-1,1,(E[0]<<8|E[1]).toString(16),(E[2]<<8|E[3]).toString(16))}return u.some(E=>!/^[0-9a-f]{1,4}$/.test(E))?null:u.map(E=>Number.parseInt(E,16))},[r,n]=A.split("::"),s=t(r),o=t(n);if(!s||!o)return null;let i=A.includes("::"),a=8-s.length-o.length;if(!i&&a!==0||i&&a<1)return null;let c=[...s,...Array(Math.max(0,a)).fill(0),...o];return c.length!==8?null:Uint8Array.from(c.flatMap(l=>[l>>8,l&255]))}function Bg(e,A,t){let r=Math.floor(t/8),n=t%8;for(let o=0;o<r;o+=1)if(e[o]!==A[o])return!1;if(!n)return!0;let s=255<<8-n;return(e[r]&s)===(A[r]&s)}function Ig(e){if(kr.isIPv4(e)){let A=e.split(".").map(Number);return!(A[0]===0||A[0]===10||A[0]===127||A[0]>=224||A[0]===100&&A[1]>=64&&A[1]<=127||A[0]===169&&A[1]===254||A[0]===172&&A[1]>=16&&A[1]<=31||A[0]===192&&(A[1]===0||A[1]===2||A[1]===168)||A[0]===192&&A[1]===88&&A[2]===99||A[0]===198&&(A[1]===18||A[1]===19||A[1]===51)||A[0]===203&&A[1]===0&&A[2]===113)}if(kr.isIPv6(e)){let A=Ro(e);if(!A)return!1;let t=Ro("::ffff:0:0");return Bg(A,t,96)?Ig([...A.slice(12)].join(".")):Bg(A,Ro("2000::"),3)?![["2001::",23],["2001:db8::",32],["2001:10::",28],["2001:2::",48],["2002::",16],["3fff::",20]].some(([n,s])=>Bg(A,Ro(n),s)):!1}return!1}function FU(e){let A;try{A=new URL(String(e))}catch{return{ok:!1,error:`not a valid URL: ${String(e).slice(0,120)}`}}if(A.protocol!=="http:"&&A.protocol!=="https:")return{ok:!1,error:`refused protocol ${A.protocol} (only http/https)`};let t=A.hostname.toLowerCase().replace(/^\[|\]$/g,"").replace(/\.+$/,"");if(kU.has(t)||t.endsWith(".localhost")||t.endsWith(".internal"))return{ok:!1,error:`refused internal host ${t}`};let r=kr.isIP(t);return r!==0&&!Ig(t)?{ok:!1,error:`refused private address ${t}`}:{ok:!0,url:A,host:t,isLiteralIp:r!==0}}async function id(e,{lookupFn:A=bU.promises.lookup}={}){let t=FU(e);if(!t.ok)return t;if(t.isLiteralIp)return{ok:!0,url:t.url};let r;try{r=await A(t.host,{all:!0,verbatim:!0})}catch{return{ok:!1,error:`refused: ${t.host} did not resolve`}}return!Array.isArray(r)||r.length===0||r.some(n=>!Ig(n.address))?{ok:!1,error:`refused: ${t.host} resolves to a non-public address`}:{ok:!0,url:t.url,addresses:r}}async function ad(){let e,A;try{let i=await Promise.resolve().then(()=>df(od(),1));e=i.Agent,A=i.fetch}catch{return null}if(typeof e!="function"||typeof A!="function")return null;let t=i=>String(i).toLowerCase().replace(/^\[|\]$/g,"").replace(/\.+$/,""),r=new Map,n=i=>(Array.isArray(i)?i:[i]).map(a=>typeof a=="string"?{address:a}:a).filter(a=>a&&a.address).map(a=>({address:a.address,family:a.family||(kr.isIPv6(a.address)?6:4)})),s=i=>{let a=t(i);if(kr.isIP(a))return[{address:a,family:kr.isIPv6(a)?6:4}];let c=r.get(a);if(!c||!c.length)throw new Error(`refused: unpinned host ${i} during pinned fetch`);return c},o=new e({connect:{lookup(i,a,c){let l;try{l=s(i)}catch(u){return c(u)}return a?.all?c(null,l):c(null,l[0].address,l[0].family)}}});return{dispatcher:o,fetch:(i,a={})=>A(i,{...a,dispatcher:o}),pin(i,a,c){r.set(t(i),n(typeof a=="string"?[{address:a,family:c}]:a))},resolve:s,async close(){try{await o.destroy()}catch{}}}}var kU,cd=MA(()=>{kU=new Set(["localhost","metadata.google.internal","metadata.goog"])});import{createHash as RU}from"node:crypto";function MU(e){let A=String(e||"").toLowerCase();return Ed.includes(A)||/(^|-)(api[-_]?key|key|token|secret|auth|authorization|session|cookie|signature|access)(-|$)/.test(A)}function LU(e){let A={};for(let[t,r]of Object.entries(e||{}))MU(t)||(A[t]=r);return A}function TU(e,A){if(!e)throw new Error(`HTTP redirect from ${A} missing Location`);let t=new URL(String(e),String(A));if(t.protocol!=="http:"&&t.protocol!=="https:")throw new Error(`HTTP redirect from ${A} used unsupported protocol ${t.protocol}`);return t.toString()}function xU(e,A){return new URL(String(e)).origin===new URL(String(A)).origin}function YU(e,A,t){let r={};for(let[a,c]of Object.entries(t||{}))r[a.toLowerCase()]=c;let n=Object.keys(r).filter(a=>/(^|-)(api[-_]?key|key|token|secret|auth|authorization|session|cookie|signature|access)(-|$)/.test(a)),o=[...new Set([...Ed,...n])].sort().map(a=>`${a}=${r[a]??""}`).join(`
46
+ `),i=RU("sha256").update(o).digest("hex").slice(0,32);return`${e} ${A} ${i}`}function GU(e,A){let t=Number(A);return Number.isFinite(t)&&t>0?Math.min(t*1e3,ud):Math.min(250*2**e,ud)+Math.floor(Math.random()*100)}async function vU(e,{fetchImpl:A,method:t,headers:r,body:n,timeoutMs:s,lookupFn:o,realFetch:i}){let a=new AbortController,c=setTimeout(()=>a.abort(),s),l=null,u=A;try{let g=String(e),E={...r||{}};for(let Q=0;Q<=ld;Q+=1){let I=await u(g,{method:t,headers:E,body:n,signal:a.signal,redirect:"manual"}),C=await I.text(),B=null;if(C)try{B=JSON.parse(C)}catch{B=null}if(UU.has(I.status)){if(t!=="GET"&&t!=="HEAD"){let m=new Error(`HTTP ${I.status} ${t} ${g} redirected non-idempotent request`);throw m.status=I.status,m.body=B??C.slice(0,300),m}if(Q===ld)throw new Error(`HTTP redirect loop for ${e}`);let h=TU(I.headers?.get?.("location"),g);if(!xU(h,g)){let m=await id(h,o?{lookupFn:o}:{});if(!m.ok){let T=new Error(`HTTP redirect from ${g} ${m.error}`);throw T.status=I.status,T}E=LU(E),i&&m.addresses?.length&&(l||(l=await ad()),l&&(l.pin(new URL(h).hostname,m.addresses[0].address,m.addresses[0].family),u=l.fetch))}g=h;continue}if(!I.ok){let h=new Error(`HTTP ${I.status} ${t} ${g}`);throw h.status=I.status,h.retryAfter=I.headers?.get?.("retry-after")??null,h.body=B??C.slice(0,300),h}return B??C}throw new Error(`HTTP redirect loop for ${e}`)}finally{clearTimeout(c),l&&await l.close()}}async function ne(e,A={}){let t=A.fetchImpl||globalThis.fetch;if(typeof t!="function")throw new Error("fetch unavailable \u2014 pass opts.fetchImpl");let r=A.timeoutMs??12e3,n=(A.method||"GET").toUpperCase(),s={Accept:"application/json",...A.headers||{}},o=A.body;o!=null&&typeof o!="string"&&(s["Content-Type"]=s["Content-Type"]||"application/json",o=JSON.stringify(o));let i=Number.isInteger(A.retries)?Math.max(A.retries,0):NU,a=A.lookupFn,c=!A.fetchImpl,l=async()=>{let I;for(let C=0;C<=i;C++)try{return await vU(e,{fetchImpl:t,method:n,headers:s,body:o,timeoutMs:r,lookupFn:a,realFetch:c})}catch(B){I=B;let h=B?.status,y=B?.name==="AbortError",m=new Set([408,425,429]),T=h!=null?m.has(h)||SU.has(h)&&gd.has(n):!y&&gd.has(n);if(C===i||!T)throw B;await JU(GU(C,B?.retryAfter))}throw I};if(!(A.dedupe!==!1&&n==="GET"&&o==null))return l();let g=YU(n,e,s),E=Cg.get(g);if(E)return E;let Q=l().finally(()=>Cg.delete(g));return Cg.set(g,Q),Q}var SU,gd,NU,ud,Ed,UU,ld,Cg,JU,uA=MA(()=>{cd();SU=new Set([408,425,429,500,502,503,504]),gd=new Set(["GET","HEAD","OPTIONS","PUT","DELETE"]),NU=2,ud=4e3,Ed=["authorization","x-api-key","x-tensor-api-key","0x-api-key","api-key","cookie","proxy-authorization"],UU=new Set([301,302,303,307,308]),ld=3;Cg=new Map;JU=e=>new Promise(A=>setTimeout(A,e))});import{readFileSync as HU}from"node:fs";import{homedir as VU}from"node:os";import{join as So}from"node:path";function qU(){if(process.env.ORACLE_TEST_ISOLATE_SECRETS==="1"){let t=(process.env.ORACLE_EXEC_ENV_FILE||"").trim();return t?[t]:[]}let e=(process.env.ORACLE_EXEC_ENV_FILE||process.env.MAD_EXEC_ENV_FILE||"").trim(),A=VU();if(process.env.ORACLE_PUBLIC_DESKTOP==="1"){let t=(process.env.ORACLE_CONFIG_DIR||So(A,".config","oracle")).trim();return[e,So(t,"exec.env")].filter(Boolean)}return[e,So(A,".config","oracle","exec.env"),So(A,".config","mad-desk","exec.env")].filter(Boolean)}function Qd(e,A,t){let r=e??process.env[A]??process.env[t];if(!String(r||"").trim())for(let n of qU())try{let s=HU(n,"utf8"),o=s.match(new RegExp(`^${A}=(.*)$`,"m"))||s.match(new RegExp(`^${t}=(.*)$`,"m"));if(o&&(r=o[1].trim(),r))break}catch{}if(!String(r||"").trim())throw new Error(`${A} required for attestation. Set it in the environment, or place ${A}=<value> in ~/.config/oracle/exec.env`);return r}var Bd=MA(()=>{});var Id=MA(()=>{});import{createHash as OU,createHmac as hd,timingSafeEqual as WU}from"node:crypto";function Uo(e){return Array.isArray(e)?`[${e.map(Uo).join(",")}]`:e&&typeof e=="object"?`{${Object.keys(e).sort().map(A=>`${JSON.stringify(A)}:${Uo(e[A])}`).join(",")}}`:JSON.stringify(e??null)}function dd(e,{required:A=!1}={}){try{return Qd(e,"ORACLE_ROUTE_ATTESTATION_SECRET","MAD_ROUTE_ATTESTATION_SECRET")}catch(t){if(A)throw t;return null}}function dg(e){let{signature:A,...t}=e;return t}function fd(e,{secret:A}={}){let t=dd(A);return t?{...e,signature:hd("sha256",t).update(Uo(dg(e))).digest("hex")}:e}function PU(e){let A=String(e||"").toLowerCase();if(!/^0x[0-9a-f]+$/.test(A)||A.length<10||A.length%2!==0)throw new Error("auto-slippage calldata must be even-length hex with a selector");return OU("sha256").update(Buffer.from(A.slice(2),"hex")).digest("hex")}function Dt(e,{chainId:A,venue:t,data:r,secret:n}={}){if(!e||e.mode!=="auto")throw new Error("bounded auto-slippage guard required");if(Number(e.chainId)!==Number(A))throw new Error("auto-slippage guard chain mismatch");if(String(e.venue).toLowerCase()!==String(t||"").toLowerCase())throw new Error("auto-slippage guard venue mismatch");let s=dd(n);if(s){let E=hd("sha256",s).update(Uo(dg(e))).digest("hex");if(!_U(e.signature,E))throw new Error("auto-slippage guard signature mismatch \u2014 refusing to bind a guard this Oracle did not issue")}let o=Number(e.selectedBps),i=Number(e.capBps);if(!Number.isInteger(o)||o<0||o>No||!Number.isInteger(i)||i<0||i>No||o>i)throw new Error("auto-slippage guard bounds are invalid");let a=BigInt(e.quoteAmountOut??0),c=BigInt(e.minAmountOut??0);if(a<=0n||c<=0n)throw new Error("auto-slippage guard amounts must be positive");let l=a*BigInt(1e4-o),u=l/10000n;if(l%10000n!==0n&&(u+=1n),c<u)throw new Error("auto-slippage guard is under-protected relative to its quote");let g=KU(r);if(g!=null&&g!==c)throw new Error(`auto-slippage: calldata encodes floor ${g}, not the guard floor ${c} \u2014 refusing to bind`);return fd({...dg(e),calldataHash:PU(r)},{secret:n})}function _U(e,A){let t=Buffer.from(String(e??""),"utf8"),r=Buffer.from(String(A??""),"utf8");return t.length!==r.length||t.length===0?!1:WU(t,r)}function hg(e,A=0){let t=Number(e);return Number.isFinite(t)?t:A}function ZU(e){let A=e==null?No:Number(e);if(!Number.isInteger(A)||A<0)throw new Error("auto-slippage cap must be a non-negative integer bps value");return Math.min(A,No)}function RA({liquidityUsd:e,priceChange5m:A=0,quoteAgeMs:t=0,crossChain:r=!1,requestedCapBps:n}={}){let s=hg(e,0),o=s>0?s>=25e4?5:s>=1e5?10:s>=5e4?20:s>=1e4?40:70:r?30:10,i=Math.min(60,Math.abs(hg(A,0))*2),a=Math.min(40,Math.floor(Math.max(0,hg(t,0))/5e3)*5),c=Math.max(25,Math.ceil(20+o+i+a)),l=ZU(n);return{mode:"auto",requiredBps:c,selectedBps:Math.min(c,l),capBps:l,executable:c<=l}}function zU({chainId:e,venue:A,quoteAmountOut:t,liquidityUsd:r,priceChange5m:n=0,quoteAgeMs:s=0,crossChain:o=!1,requestedCapBps:i,quotedAtMs:a=Date.now(),ttlMs:c=Cd,secret:l}={}){let u=BigInt(t??0);if(u<=0n)throw new Error("auto-slippage guard requires positive quoteAmountOut");let g=RA({liquidityUsd:r,priceChange5m:n,quoteAgeMs:s,crossChain:o,requestedCapBps:i});if(!g.executable)throw new Error(`auto-slippage requires ${g.requiredBps} bps above hard/requested cap ${g.capBps}; route blocked`);let E=Number(a);if(!Number.isFinite(E))throw new Error("auto-slippage: quotedAtMs must be a finite number");let Q=Math.min(3e4,Math.max(1e3,Number(c)||Cd)),I=u*BigInt(1e4-g.selectedBps),C=I/10000n;if(I%10000n!==0n&&(C+=1n),C>u&&(C=u),u>0n&&C<=0n)throw new Error(`auto-slippage: quote ${u} is too small to express a ${g.selectedBps} bps floor without rounding to zero`);let B=Number((u-C)*10000n/(u===0n?1n:u));if(B>g.capBps)throw new Error(`auto-slippage: realised floor implies ${B} bps, above cap ${g.capBps} \u2014 refusing to issue a guard weaker than advertised`);return fd({mode:"auto",chainId:Number(e),venue:String(A||"unknown"),quoteAmountOut:u.toString(),minAmountOut:C.toString(),requiredBps:g.requiredBps,selectedBps:g.selectedBps,capBps:g.capBps,quotedAtMs:E,expiresAtMs:E+Q},{secret:l})}function KU(e){let A=String(e||"");if(!/^0x[0-9a-fA-F]+$/.test(A)||A.length<10||A.length%2!==0)return null;let t=A.slice(0,10).toLowerCase(),r=[];for(let s=10;s+64<=A.length;s+=64)r.push(A.slice(s,s+64));let n=s=>r[s]==null?null:BigInt("0x"+r[s]);switch(t){case"0x414bf389":return n(6);case"0x04e45aaf":return n(5);case"0xc04b8d59":{let s=n(0);if(s==null)return null;let o=Number(s)/32;return!Number.isInteger(o)||o<0?null:n(o+4)}case"0xb858183f":{let s=n(0);if(s==null)return null;let o=Number(s)/32;return!Number.isInteger(o)||o<0?null:n(o+3)}case"0xa026383e":return n(6);case"0x38ed1739":case"0x5c11d795":return n(1);case"0x7ff36ab5":case"0xb6f9de95":return n(0);case"0x18cbafe5":case"0x791ac947":return n(1);default:return null}}function le(e,{chainId:A,venue:t,amountOut:r,liquidityUsd:n,priceChange5m:s,crossChain:o,requestedCapBps:i,quotedAtMs:a=Date.now(),ttlMs:c}={}){let l=zU({chainId:A,venue:t,quoteAmountOut:r,liquidityUsd:n,priceChange5m:s,crossChain:o,requestedCapBps:i,quotedAtMs:a,ttlMs:c});return{...e,autoSlippage:l,amountOutMinimum:l.minAmountOut}}var No,Cd,SA=MA(()=>{Bd();Id();No=100,Cd=2e4});function pd(e){let A=String(e||"").trim();return/^0x[0-9a-fA-F]{40}$/.test(A)?A:bt}var bt,Mo=MA(()=>{bt="0x000000000000000000000000000000000000dEaD"});import{createHash as XU,createHmac as jU,timingSafeEqual as Kx}from"node:crypto";function fg(e){return e===null||typeof e!="object"?JSON.stringify(e):Array.isArray(e)?`[${e.map(fg).join(",")}]`:`{${Object.keys(e).sort().map(t=>`${JSON.stringify(t)}:${fg(e[t])}`).join(",")}}`}function wd(e){let A=String(e?.ORACLE_STAMP_HMAC_SECRET||"").trim();return A.length>=16?A:""}function md(e=process.env){return wd(process.env)||wd(e)}function tM(e){let{prepareHash:A,prepareMac:t,note:r,...n}=e||{};return n}function rM(e){let A=tM(e);return XU("sha256").update(fg(A)).digest("hex")}function nM(e,A=md()){return A?jU("sha256",A).update(String(e)).digest("hex"):""}function NA(e,{provider:A,kind:t,env:r=process.env,nowMs:n=Date.now(),expiresAtMs:s}={}){if(!e||typeof e!="object")throw new Error("stampPrepared: payload object required");let o=Object.prototype.hasOwnProperty.call(e,"oraclePrepared");if(o&&typeof e.oraclePrepared!="boolean")throw new Error("stampPrepared: oraclePrepared must be boolean");let i={...e,provider:e.provider||A,kind:e.kind||t,requiresUserSignature:e.requiresUserSignature!==!1,signingReady:!1,broadcastReady:!1,executionReady:!1,oraclePrepared:o?e.oraclePrepared:!0};if(!i.provider)throw new Error("stampPrepared: provider required");if(!i.kind)throw new Error("stampPrepared: kind required");let a=Number(n),c=s==null?a+eM:Number(s),l=c-a;if(!Number.isSafeInteger(a)||!Number.isSafeInteger(c)||l<=0||l>AM)throw new Error("stampPrepared: bounded preparedAt/expiresAt required");let g={...i,preparedAt:a,expiresAt:c,prepareVersion:$U},E=rM(g),Q=md(r),I=Q?nM(E,Q):void 0,C={...g,prepareHash:E};return I&&(C.prepareMac=I),C}var $U,eM,AM,UA=MA(()=>{$U=2,eM=300*1e3,AM=(()=>{let e=Number(process.env.ORACLE_PREPARE_HARD_MAX_AGE_MS);return Number.isFinite(e)&&e>0?e:1800*1e3})()});var Dg={};Cf(Dg,{ACROSS_API:()=>tf,HOP_API:()=>rf,RELAY_API:()=>nf,acrossHealth:()=>pL,acrossSuggestedFees:()=>sf,hopHealth:()=>wL,hopQuote:()=>of,relayHealth:()=>mL,relayPrepare:()=>yL,relayQuote:()=>yg});async function pL(e={}){try{return{ok:!0,estimatedFillTimeSec:(await sf({token:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",destinationToken:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",originChainId:1,destinationChainId:42161,amount:"1000000000000000"},e)).estimatedFillTimeSec}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function sf(e={},A={}){let{token:t,destinationToken:r=t,originChainId:n,destinationChainId:s,amount:o}=e;if(!t||n==null||s==null||!o)throw new Error("acrossSuggestedFees requires token, originChainId, destinationChainId, amount");let i=new URLSearchParams({token:t,destinationToken:r,originChainId:String(n),destinationChainId:String(s),amount:String(o)}),a=(A.baseUrl||process.env.ACROSS_API_URL||tf).replace(/\/$/,"");return ne(`${a}/suggested-fees?${i}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3})}async function wL(e={}){try{let A=await of({amount:"1000000000000000",token:"ETH",fromChain:"ethereum",toChain:"arbitrum",slippage:.5},e);return{ok:!0,estimatedRecieved:A.estimatedRecieved||A.estimatedReceived}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function of(e={},A={}){let{amount:t,token:r="ETH",fromChain:n="ethereum",toChain:s="arbitrum"}=e;if(!t)throw new Error("hopQuote requires amount");let o=e.slippage==null?void 0:Math.round(Number(e.slippage)*100),i=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:n!==s,requestedCapBps:e.maxSlippageBps??e.slippageBps??o});if(!i.executable)throw new Error(`hop: route requires ${i.requiredBps} bps above cap ${i.capBps}`);let a=new URLSearchParams({amount:String(t),token:r,fromChain:n,toChain:s,slippage:String(i.selectedBps/100)}),c=(A.baseUrl||process.env.HOP_API_URL||rf).replace(/\/$/,""),l=await ne(`${c}/quote?${a}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),u=l?.estimatedRecieved||l?.estimatedReceived;return u?le(l,{chainId:Number(e.originChainId||e.chainId||fL[n]||0),venue:l?.tx?.to||"hop",amountOut:u,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:n!==s,requestedCapBps:e.maxSlippageBps??e.slippageBps??o}):{...l,autoSlippagePolicy:i}}async function mL(e={}){try{let A=await yg({user:bt,originChainId:1,destinationChainId:8453,originCurrency:"0x0000000000000000000000000000000000000000",destinationCurrency:"0x0000000000000000000000000000000000000000",amount:"1000000000000000",tradeType:"EXACT_INPUT"},e);return{ok:!0,hasSteps:Array.isArray(A.steps),stepCount:A.steps?.length||0}}catch(A){return{ok:!1,error:String(A.message||A).slice(0,160)}}}async function yg(e={},A={}){let{user:t=bt,originChainId:r,destinationChainId:n,originCurrency:s="0x0000000000000000000000000000000000000000",destinationCurrency:o="0x0000000000000000000000000000000000000000",amount:i,tradeType:a="EXACT_INPUT"}=e;if(r==null||n==null||!i)throw new Error("relayQuote requires originChainId, destinationChainId, amount");let c=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(n),requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!c.executable)throw new Error(`relay: route requires ${c.requiredBps} bps above cap ${c.capBps}`);let l=(A.baseUrl||process.env.RELAY_API_URL||nf).replace(/\/$/,""),u=await ne(`${l}/quote`,{method:"POST",body:{user:t,originChainId:Number(r),destinationChainId:Number(n),originCurrency:s,destinationCurrency:o,amount:String(i),tradeType:a,slippageTolerance:String(c.selectedBps)},fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),g=u?.details?.currencyOut?.amount;return!g||!/^\d+$/.test(String(g))?{...u,autoSlippagePolicy:c}:le(u,{chainId:Number(r),venue:u?.steps?.[0]?.items?.[0]?.data?.to||"relay",amountOut:g,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(n),requestedCapBps:e.maxSlippageBps??e.slippageBps})}async function yL(e={},A={}){let t=await yg(e,A),r=Number(e.originChainId),n=(t.steps||[]).flatMap(i=>(i.items||[]).filter(a=>a?.data?.to&&a?.data?.data).map(a=>({stepId:i.id,...a.data})));if(!n.length)throw new Error("relay: quote returned no executable transaction items");let s=String(t?.autoSlippage?.venue||"").toLowerCase();if(n.some(i=>String(i.to).toLowerCase()!==s))throw new Error("relay: route includes a separate approval/transaction that is not yet safely bound");let o=n.map(i=>({chainId:r,from:i.from||e.user,to:i.to,data:i.data,value:i.value??"0x0",...i.gasLimit!=null||i.gas!=null?{gasLimit:i.gasLimit??i.gas}:{},slippageGuard:Dt(t.autoSlippage,{chainId:r,venue:i.to,data:i.data})}));return NA({provider:"relay",calldataReady:!0,requiresUserSignature:!0,signingReady:!1,broadcastReady:!1,chainId:r,quote:t,autoSlippage:t.autoSlippage,transactions:o},{provider:"relay",kind:"relay-tx"})}var tf,rf,nf,fL,bg=MA(()=>{uA();SA();Mo();UA();tf="https://across.to/api",rf="https://api.hop.exchange/v1",nf="https://api.relay.link",fL={ethereum:1,optimism:10,bsc:56,polygon:137,arbitrum:42161,avalanche:43114,base:8453}});var NL=Object.freeze(["blockNumber","nativeBalance","tokenBalance","resolveToken","resolvePools","scanBlocks","scoreRisk","quote","sellSimulation","prepareUnsignedTx"]),UL=Object.freeze({LIVE:"LIVE",CACHED:"CACHED",STALE:"STALE",UNKNOWN:"UNKNOWN",UNAVAILABLE:"UNAVAILABLE"}),ML=Object.freeze({PASS:"PASS",CAUTION:"CAUTION",FAIL:"FAIL",UNKNOWN:"UNKNOWN"});var eA=Object.freeze({FULL:"FULL",NO_GAS:"NO_GAS",FAILED:"FAILED"}),Ng={1:"coingecko:ethereum",10:"coingecko:ethereum",56:"coingecko:binancecoin",137:"coingecko:matic-network",8453:"coingecko:ethereum",42161:"coingecko:ethereum",43114:"coingecko:avalanche-2",999:"coingecko:ethereum"},Rr=e=>{try{return e==null||e===""?null:BigInt(String(e).split(".")[0])}catch{return null}};function Sg(e){let{source:A,amountOut:t,minOut:r=null,gasUsd:n=null,feeUsd:s=null,oracleFeeBps:o=0,estimatedGas:i=null,liquidityUsd:a=null,error:c=null,executionReady:l=!1,meta:u={}}=e||{};if(c||t==null)return{source:A,quality:eA.FAILED,amountOut:null,error:c||"no amountOut returned"};let g=Rr(t);if(g==null||g<=0n)return{source:A,quality:eA.FAILED,amountOut:null,error:"non-positive amountOut"};let E=Number(o);return{source:A,quality:n==null?eA.NO_GAS:eA.FULL,amountOut:g.toString(),minOut:Rr(r)?.toString()??null,gasUsd:n,feeUsd:s,oracleFeeBps:Number.isFinite(E)&&E>0?Math.floor(E):0,estimatedGas:i==null?null:String(i),liquidityUsd:a==null?null:Number(a),executionReady:l,meta:u}}async function Ug(e,A,{divisor:t=1000n}={}){let r=Rr(A);if(r==null||r<=0n)return null;let n=r/t>0n?r/t:1n;if(n>=r)return null;let s,o;try{[s,o]=await Promise.all([e(n),e(r)])}catch{return null}let i=Rr(s),a=Rr(o);if(i==null||a==null||i<=0n)return null;let c=Number(i)/Number(n),l=Number(a)/Number(r);return!Number.isFinite(c)||!Number.isFinite(l)||c<=0?null:{impactPct:(1-l/c)*100,probeAmountIn:n.toString(),probeAmountOut:i.toString(),fullAmountOut:a.toString()}}function Mg(e,A,{maxImpactPct:t=25}={}){let r=[],n=[],s=(e.routes??[]).filter(i=>{let a=A?.[i.source];return a?a.impactPct>t?(r.push({source:i.source,impactPct:Number(a.impactPct.toFixed(2)),reason:`price impact ${a.impactPct.toFixed(1)}% exceeds ${t}% ceiling -- the venue cannot absorb this size near the quoted price`}),!1):!0:(n.push(i.source),!0)}),o=[...e.warnings??[]];return r.length&&o.push(`dropped ${r.length} route(s) on price impact: `+r.map(i=>`${i.source} (${i.impactPct}%)`).join(", ")),n.length&&o.push(`price impact NOT measured for: ${n.join(", ")}. These are unproven against thin liquidity, not proven safe.`),{...e,routes:s,best:s[0]??null,impactRejected:r,impactUnmeasured:n,warnings:o}}function Oo(e,{destPriceUsd:A=null,destDecimals:t=null,liquidityFirst:r=!0,liquidityBandBps:n=50,gasPriceWei:s=null,nativePriceUsd:o=null}={}){let i=e.filter(M=>M.quality!==eA.FAILED),a=e.filter(M=>M.quality===eA.FAILED),c=A!=null&&A>0&&t!=null&&t>=0,l=Number(s),u=Number(o),g=Number.isFinite(l)&&l>0&&Number.isFinite(u)&&u>0,E=i.map(M=>{let V=BigInt(M.amountOut),De=0n,Be=!1,se=!1,xe=BigInt(M.oracleFeeBps??0),QA=xe>0n?V*xe/10000n:0n;if(c){let Un=M.gasUsd,Vo=Number(M.meta?.gasUnits??M.estimatedGas);if(Un==null&&g&&Number.isFinite(Vo)&&Vo>0){let jA=Vo*l/1e18*u;Number.isFinite(jA)&&jA>=0&&(Un=jA,se=!0)}let Rg=(Un??0)+(M.feeUsd??0);if(Rg>0){let jA=Rg/A*10**t;Number.isFinite(jA)&&jA>=0&&(De=BigInt(Math.floor(jA)),Be=!0)}else Un===0&&(Be=!0)}let Rt=De+QA,St=V>Rt?V-Rt:0n;return{...M,grossOut:V.toString(),netOut:St.toString(),costInDest:De.toString(),oracleFeeInDest:QA.toString(),costAccounted:Be,gasEstimated:se}}),Q=Number(n)>0?Number(n):0,I=E.reduce((M,V)=>BigInt(V.netOut)>M?BigInt(V.netOut):M,0n),C=M=>I>0n?Number((I-BigInt(M))*10000n/I):0,B=[],h=E.slice().sort((M,V)=>BigInt(V.netOut)>BigInt(M.netOut)?1:-1)[0]??null;E.sort((M,V)=>{let De=C(M.netOut)<=Q?0:1,Be=C(V.netOut)<=Q?0:1;if(r&&Q>0&&De!==Be)return De-Be;if(r&&Q>0){let se=M.liquidityUsd??-1,xe=V.liquidityUsd??-1;if(se!==xe)return xe-se}return BigInt(V.netOut)>BigInt(M.netOut)?1:-1}),r&&Q>0&&h&&E[0]&&E[0].source!==h.source&&B.push(`liquidity-first: chose ${E[0].source} (liquidity $${E[0].liquidityUsd??"unknown"}) over best-price ${h.source} within ${Q} bps`);let y=E.filter(M=>!M.costAccounted).map(M=>M.source);c?y.length&&B.push(`gas not reported by: ${y.join(", ")}. These are ranked on gross output and may be overstated relative to gas-measured routes.`):B.push("destination price/decimals unavailable: ranked on GROSS output. Gas is not included, so a cheap-looking route may cost more to execute.");let m=E[0];if(c&&m&&m.costAccounted===!1){let M=E.find(V=>V.costAccounted&&C(V.netOut)<=Q);M&&B.push(`winner ${m.source} has UNMEASURED gas; gas-measured ${M.source} is within ${Q} bps and may net more once ${m.source}'s real gas is paid \u2014 prefer it if unsure.`)}let T=E.filter(M=>M.gasEstimated).map(M=>M.source);T.length&&B.push(`gas ESTIMATED (from gas units x current gas price, not measured) for: ${T.join(", ")}. Net includes this estimate so the ranking is gas-inclusive, but the on-chain gas may differ.`);let _=null,Z=null;if(E.length>=2&&E[0].costAccounted&&E[1].costAccounted){let M=BigInt(E[0].netOut),V=BigInt(E[1].netOut);V>0n&&(_=Number((M-V)*10000n/V),Z=`${E[0].source} vs ${E[1].source}`)}return{best:E[0]??null,routes:E,failed:a,improvementBps:_,spreadBasis:Z,rankedOn:c?"net-of-cost":"gross",warnings:B}}async function Mn(e,{timeoutMs:A=12e3}={}){let t=(n,s)=>Promise.race([n,new Promise((o,i)=>setTimeout(()=>i(new Error(`${s}: timeout`)),A))]);return(await Promise.allSettled(e.map(n=>t(Promise.resolve().then(n.run),n.source)))).map((n,s)=>{let o=e[s].source;return n.status==="rejected"?Sg({source:o,error:String(n.reason?.message||n.reason)}):Sg({source:o,...n.value})})}uA();SA();Mo();UA();import{existsSync as EM,readFileSync as QM,lstatSync as BM}from"node:fs";import{homedir as Dd}from"node:os";import{join as pg}from"node:path";import{Contract as sM,JsonRpcProvider as oM}from"ethers";var iM="0x62FCFAf7573AD8B41a0FBF347AfEb85e06599A75",aM=999,cM="https://rpc.hyperliquid.xyz/evm",gM=["function balanceOf(address owner) view returns (uint256)"],uM=/^0x[a-fA-F0-9]{40}$/;function lM(e){return uM.test(String(e||""))}async function yd(e,{contract:A=iM,rpc:t=cM,chainId:r=aM,balanceOf:n}={}){if(!lM(e))throw new Error("invalid-address");if(n)return BigInt(await n(e));let s=new oM(t,r,{staticNetwork:!0}),o=new sM(A,gM,s);return BigInt(await o.balanceOf(e))}var IM=100,CM=5,bd=Object.freeze({swap:5,bridge:5,perps:0,nft:0});function hM(e){let A=String(e||"swap").toLowerCase();return Object.prototype.hasOwnProperty.call(bd,A)?bd[A]:CM}var dM="ORACLE_INTEGRATOR_FEE_BPS",fM="ORACLE_INTEGRATOR_FEE_RECIPIENT",pM="ORACLE_INTEGRATOR_ID",kd="ORACLE_INTEGRATOR_FEE_RECIPIENT_PIN",wM="oracle";function mM(e=process.env){if(process.env.ORACLE_TEST_ISOLATE_SECRETS==="1"){if(e[kd])return String(e[kd]);let A=e.ORACLE_CONFIG_DIR||pg(Dd(),".config","oracle");return pg(A,"fee-recipient")}return pg(Dd(),".config","oracle","fee-recipient")}function yM(e=process.env){try{let A=mM(e);if(!EM(A)||BM(A).isSymbolicLink())return"";let t=QM(A,"utf8").trim().toLowerCase();return/^0x[a-f0-9]{40}$/.test(t)?t:""}catch{return""}}function DM(e,{fallback:A=0}={}){if(e==null)return A;if(String(e).trim()==="")return 0;let t=Number(e);return!Number.isFinite(t)||t<=0?0:Math.min(Math.floor(t),IM)}function bM({env:e=process.env,action:A="swap",admin:t=!1}={}){let r=String(e[fM]||"").trim(),n=String(e[pM]||wM).trim();if(t===!0)return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"admin-oracle"};let s=hM(A),o=DM(e[dM],{fallback:r?s:0}),i=Math.min(o,s);if(!i)return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"not-configured"};if(!/^0x[a-fA-F0-9]{40}$/.test(r))return{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"no-recipient"};let a=yM(e);return!a||a!==r.toLowerCase()?{bps:0,recipient:"",integrator:n,action:A,applies:!1,reason:"recipient-not-pinned"}:{bps:i,recipient:r,integrator:n,action:A,applies:!0,reason:"configured"}}async function Lo({wallet:e,env:A=process.env,action:t="swap",holderCheck:r={},admin:n=!1}={}){let s=bM({env:A,action:t,admin:n});if(n===!0)return{...s,holderVerificationStatus:"admin-oracle"};let o=String(e||"").trim().toLowerCase();if(!/^0x[a-f0-9]{40}$/.test(o))return{...s,holderVerificationStatus:"wallet-required"};try{return BigInt(await yd(o,r))>0n?{...s,bps:0,applies:!1,reason:"locals-only-holder",holderVerificationStatus:"holder"}:{...s,holderVerificationStatus:"non-holder"}}catch{return{...s,holderVerificationStatus:"unavailable"}}}function Fd(e){return e?.applies?`Oracle routing fee ${e.bps} bps (${(e.bps/100).toFixed(2)}%) to ${e.recipient}.`:e?.reason==="admin-oracle"?"No Oracle fee (admin Oracle).":e?.reason==="locals-only-holder"?"No Oracle fee (Locals Only holder).":"No Oracle fee."}function Rd(e){return e?.applies?{integrator:e.integrator,fee:String(e.bps/1e4)}:{}}function Sd(e){return e?.applies?{partner:e.integrator,partnerFeeBps:String(e.bps),partnerAddress:e.recipient}:{}}var kM="https://li.quest/v1";function FM(e={}){return(e.baseUrl||process.env.LIFI_API_URL||kM).replace(/\/$/,"")}var RM="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";async function wg(e={},A={}){let{fromChain:t,toChain:r=t,fromToken:n=RM,toToken:s,fromAmount:o,fromAddress:i=bt}=e;if(t==null||!s||!o)throw new Error("lifiQuote requires fromChain, toToken, fromAmount");let a=new URLSearchParams({fromChain:String(t),toChain:String(r),fromToken:n,toToken:s,fromAmount:String(o),fromAddress:i}),c=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(t),requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!c.executable)throw new Error(`lifi: route requires ${c.requiredBps} bps above cap ${c.capBps}`);a.set("slippage",String(c.selectedBps/1e4));let l=await Lo({wallet:e.fromAddress,env:A.env,action:e.feeAction||"swap",holderCheck:A.holderCheck});for(let[C,B]of Object.entries(Rd(l)))a.set(C,B);let u=await ne(`${FM(A)}/quote?${a}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),g=u?.estimate?.toAmount||u?.toAmount;if(!g)return{...u,autoSlippagePolicy:c,oracleFee:l};let E=u?.transactionRequest?.to||u?.estimate?.approvalAddress||"lifi",Q=le(u,{chainId:Number(t),venue:E,amountOut:g,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,crossChain:Number(r)!==Number(t),requestedCapBps:e.maxSlippageBps??e.slippageBps}),I=u?.estimate?.toAmountMin||u?.toAmountMin;if(I!=null&&BigInt(I)<BigInt(Q.amountOutMinimum))throw new Error("lifi: provider transaction is under-protected versus bounded auto-slippage floor");return{...Q,oracleFee:l}}uA();SA();UA();var SM="https://api.paraswap.io",NM=(e={})=>(e.baseUrl||process.env.PARASWAP_API_URL||SM).replace(/\/$/,"");function Nd(e,A){let t=String(e||"");if(!/^0x[0-9a-fA-F]{40}$/.test(t))throw new Error(`${A} must be a 20-byte token address`);return t.toLowerCase()}async function Ud(e={},A={}){let t=Number(e.chainId||e.network||1);if(e.amount==null)throw new Error("amount required");let r=new URLSearchParams({srcToken:Nd(e.srcToken,"srcToken"),destToken:Nd(e.destToken,"destToken"),amount:String(e.amount),srcDecimals:String(Number(e.srcDecimals)),destDecimals:String(Number(e.destDecimals)),side:String(e.side||"SELL").toUpperCase(),network:String(t),version:String(e.version||"6.2")});e.includeDEXS&&r.set("includeDEXS",String(e.includeDEXS)),e.excludeDEXS&&r.set("excludeDEXS",String(e.excludeDEXS));let n=await Lo({wallet:e.userAddress||e.fromAddress,env:A.env,action:e.feeAction||"swap",holderCheck:A.holderCheck});for(let[i,a]of Object.entries(Sd(n)))r.set(i,a);let s=await ne(`${NM(A)}/prices?${r}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??2e4}),o=s?.priceRoute?.destAmount;return o?{...le(s,{chainId:t,venue:s?.priceRoute?.contractAddress||"paraswap-quote",amountOut:o,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,quoteAgeMs:0,requestedCapBps:e.maxSlippageBps??e.slippageBps}),executionReady:!1,executionBlocker:"call prepare to bind the price route to a validated transaction",oracleFee:n}:{...s,executionReady:!1,oracleFee:n}}uA();SA();var Md="ORACLE_ALLOW_CUSTOM_PROVIDER_URL";function To({provider:e,defaultUrl:A,hosts:t=[],url:r,strict:n=!1}){let o=(String(r??"").trim()||String(A)).replace(/\/$/,"");if(o===String(A).replace(/\/$/,""))return{baseUrl:o,trusted:!0,host:Ld(A)};let i;try{i=new URL(o)}catch{throw new Error(`${e}: baseUrl must be an absolute http(s) URL`)}if(i.protocol!=="http:"&&i.protocol!=="https:")throw new Error(`${e}: baseUrl must be an absolute http(s) URL`);let a=i.host;if(!a)throw new Error(`${e}: baseUrl must be an absolute http(s) URL`);if(new Set([Ld(A),...t]).has(a)){let l=/^(127\.0\.0\.1|localhost|\[::1\])(:\d+)?$/i.test(a);return i.protocol==="http:"&&!l?{baseUrl:o,trusted:!1,host:a,reason:"plaintext http downgrade"}:{baseUrl:o,trusted:!0,host:a}}if(String(process.env[Md]||"")==="1")return{baseUrl:o,trusted:!1,host:a};if(n)throw new Error(`${e}: refusing to call non-allowlisted host ${a} (set ${Md}=1 to permit it)`);return{baseUrl:o,trusted:!1,host:a}}function Ld(e){let A=new URL(String(e));if(A.protocol!=="http:"&&A.protocol!=="https:")throw new Error("unsupported protocol");return A.host}function xo(e,A,t){let r={...e};if(!t)return r;for(let[n,s]of Object.entries(A||{}))s&&(r[n]=s);return r}UA();var UM="https://api.0x.org";function Td(e={}){return To({provider:"zerox",defaultUrl:UM,hosts:["api.0x.org"],url:e.baseUrl||process.env.ZEROX_API_URL})}function MM(e={}){return Td(e).baseUrl}function xd(e={}){return e.apiKey||process.env.ZEROX_API_KEY||process.env.OX_API_KEY||process.env["0X_API_KEY"]||""}function LM(e={}){return xo({"0x-version":"v2",accept:"application/json"},{"0x-api-key":xd(e)},Td(e).trusted)}async function Yd(e={},A={}){if(!xd(A))throw new Error("ZEROX_API_KEY required for 0x");let{chainId:t=8453,sellToken:r,buyToken:n,sellAmount:s,taker:o}=e;if(!r||!n||!s)throw new Error("zeroxQuote requires sellToken, buyToken, sellAmount");let i=RA({liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps});if(!i.executable)throw new Error(`0x: route requires ${i.requiredBps} bps above cap ${i.capBps}`);let a=new URLSearchParams({chainId:String(t),sellToken:r,buyToken:n,sellAmount:String(s),slippageBps:String(i.selectedBps)});o&&a.set("taker",o);let c=await ne(`${MM(A)}/swap/allowance-holder/quote?${a}`,{headers:LM(A),fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),l=c?.buyAmount||c?.grossBuyAmount;return l?le(c,{chainId:t,venue:c?.transaction?.to||c?.to||"0x",amountOut:l,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):{...c,autoSlippagePolicy:i}}uA();SA();UA();var TM="https://api.1inch.dev/swap/v6.0";function Gd(e={}){return To({provider:"oneinch",defaultUrl:TM,hosts:["api.1inch.dev"],url:e.baseUrl||process.env.ONEINCH_API_URL})}function xM(e={}){return Gd(e).baseUrl}function Jd(e={}){return e.apiKey||process.env.ONEINCH_API_KEY||process.env.ONE_INCH_API_KEY||""}function YM(e={}){let A=Jd(e);return xo({accept:"application/json"},{Authorization:A?`Bearer ${A}`:""},Gd(e).trusted)}async function vd(e={},A={}){if(!Jd(A))throw new Error("ONEINCH_API_KEY required for 1inch");let t=Number(e.chainId??1),{src:r,dst:n,amount:s}=e;if(!r||!n||!s)throw new Error("oneinchQuote requires src, dst, amount");let o=new URLSearchParams({src:r,dst:n,amount:String(s)}),i=await ne(`${xM(A)}/${t}/quote?${o}`,{headers:YM(A),fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3});return i?.dstAmount?le(i,{chainId:t,venue:"1inch-quote",amountOut:i.dstAmount,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):i}uA();SA();import{TypedDataEncoder as U2,getAddress as M2,isAddress as L2}from"ethers";var F2=Object.freeze({READ:"read",PREPARE:"prepare",EXECUTE:"execute",AUTONOMOUS:"autonomous"});Mo();UA();var GM={1:"https://api.cow.fi/mainnet/api/v1",100:"https://api.cow.fi/xdai/api/v1",42161:"https://api.cow.fi/arbitrum_one/api/v1",8453:"https://api.cow.fi/base/api/v1"},H2=Object.freeze({1:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",100:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",42161:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41",8453:"0x9008D19f58AAbD9eD0D60971565AA8510560ab41"}),V2=Object.freeze({1:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",100:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",42161:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110",8453:"0xC92E8bdf79f0507f65a392b0ab4667716BFE0110"}),Hd={1:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",8453:"0x4200000000000000000000000000000000000006",42161:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"},JM={1:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",8453:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",42161:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},q2=Object.freeze({Order:[{name:"sellToken",type:"address"},{name:"buyToken",type:"address"},{name:"receiver",type:"address"},{name:"sellAmount",type:"uint256"},{name:"buyAmount",type:"uint256"},{name:"validTo",type:"uint32"},{name:"appData",type:"bytes32"},{name:"feeAmount",type:"uint256"},{name:"kind",type:"string"},{name:"partiallyFillable",type:"bool"},{name:"sellTokenBalance",type:"string"},{name:"buyTokenBalance",type:"string"}]}),O2=Object.freeze({OrderCancellations:[{name:"orderUids",type:"bytes[]"}]});function vM(e,A={}){if(A.baseUrl)return A.baseUrl.replace(/\/$/,"");let t=GM[Number(e)];if(!t)throw new Error(`cowswap: unsupported chainId ${e}`);return t}async function Vd(e={},A={}){let t=Number(e.chainId??1),r=pd(e.from||e.owner),n=e.sellToken||Hd[t],s=e.buyToken||JM[t],o=String(e.sellAmountBeforeFee||e.sellAmount||"0");if(!n||!s||o==="0")throw new Error("cowQuote requires sellToken, buyToken, sellAmountBeforeFee");if(/eeeeeeee|native|^eth$/i.test(n)&&(n=Hd[t],!n))throw new Error("no WETH mapping for chain");let i={sellToken:n,buyToken:s,from:r,receiver:e.receiver||r,sellAmountBeforeFee:o,kind:e.kind||"sell",signingScheme:e.signingScheme||"eip1271"},a=await ne(`${vM(t,A)}/quote`,{method:"POST",body:i,fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??15e3}),c=a?.quote?.buyAmount||a?.buyAmount;return c?le(a,{chainId:t,venue:"cowswap-order",amountOut:c,liquidityUsd:e.liquidityUsd,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps}):a}import{Interface as zd,getAddress as Go,isAddress as eL}from"ethers";uA();var qd={robinhood:{chainId:4663,name:"Robinhood Chain",rpcEnv:["RH_CHAIN_RPC"],evm:!0},ethereum:{chainId:1,name:"Ethereum",rpcEnv:["ETH_RPC_URL","ETHEREUM_RPC_URL","MAINNET_RPC_URL"],evm:!0},polygon:{chainId:137,name:"Polygon",rpcEnv:["POLYGON_RPC_URL","POLYGON_RPC"],evm:!0},arbitrum:{chainId:42161,name:"Arbitrum One",rpcEnv:["ARBITRUM_RPC_URL","ARB_RPC_URL"],evm:!0},base:{chainId:8453,name:"Base",rpcEnv:["BASE_RPC_URL"],evm:!0},hyperevm:{chainId:999,name:"HyperEVM",rpcEnv:["HYPEREVM_RPC_URL","HYPER_EVM_RPC"],evm:!0},bsc:{chainId:56,name:"BNB Smart Chain",rpcEnv:["BSC_RPC_URL","BNB_RPC_URL"],evm:!0},avalanche:{chainId:43114,name:"Avalanche C-Chain",rpcEnv:["AVALANCHE_RPC_URL","AVAX_RPC_URL"],evm:!0},optimism:{chainId:10,name:"OP Mainnet",rpcEnv:["OPTIMISM_RPC_URL","OP_RPC_URL"],evm:!0},abstract:{chainId:2741,name:"Abstract",rpcEnv:["ABSTRACT_RPC_URL","ABS_RPC_URL"],evm:!0},stable:{chainId:988,name:"Stable Mainnet",rpcEnv:["STABLE_RPC_URL","STABLE_RPC"],evm:!0}},HM=new Map(Object.values(qd).map(e=>[e.chainId,e]));function Od(e){return HM.get(Number(e))||null}function Wd(e,A=process.env){let t=Od(e);if(!t)return null;for(let r of t.rpcEnv){let n=(A[r]||"").trim();if(n)return n}return null}import{Interface as VM,getAddress as X2}from"ethers";var j2=new VM(["function allowance(address owner,address spender) view returns (uint256)","function balanceOf(address account) view returns (uint256)"]);var qM={1:"https://ethereum.publicnode.com",137:"https://polygon-bor-rpc.publicnode.com",42161:"https://arbitrum-one-rpc.publicnode.com",8453:"https://base-rpc.publicnode.com",10:"https://optimism-rpc.publicnode.com",988:"https://rpc.stable.xyz",56:"https://bsc-rpc.publicnode.com",43114:"https://avalanche-c-chain-rpc.publicnode.com",999:"https://rpc.hyperliquid.xyz/evm",2741:"https://api.mainnet.abs.xyz",4663:"https://rpc.mainnet.chain.robinhood.com"};function OM(e,{rpcUrl:A,env:t=process.env}={}){if(A)return A;let r=Wd(e,t);return r||qM[Number(e)]||null}var WM=/^(?:eth_(?:call|blocknumber|chainid|get[a-z0-9]+|feehistory|gasprice|maxpriorityfeepergas|syncing|protocolversion|estimategas|createaccesslist)|net_(?:version|listening|peercount)|web3_(?:clientversion|sha3))$/;function PM(e){let A=String(e||""),t=A.toLowerCase();if(A!==A.trim()||!/^[a-zA-Z0-9_]+$/.test(A)||!WM.test(t))throw new Error(`evm-rpc: ${A} refused \u2014 @oracle-agent/oracle is prepare-only (read RPC only; no broadcast/sign)`);return t}async function Nn(e,A,t=[],r={}){let n=String(A||"");PM(n);let s=OM(e,r);if(!s)throw new Error(`No RPC URL for chainId ${e} (set env from chain registry rpcEnv or pass rpcUrl)`);let i=await ne(s,{method:"POST",body:{jsonrpc:"2.0",id:1,method:A,params:t},fetchImpl:r.fetchImpl,timeoutMs:r.timeoutMs??12e3});if(i?.error){let a=new Error(i.error.message||JSON.stringify(i.error));throw a.code=i.error.code,a}return i.result}async function Pd(e,A={}){let t=await Nn(e,"eth_gasPrice",[],A);if(t==null)return null;try{return BigInt(t)}catch{return null}}uA();var _M="https://api.dexscreener.com",ZM=Object.freeze({1:"ethereum",10:"optimism",56:"bsc",137:"polygon",8453:"base",42161:"arbitrum",43114:"avalanche",999:"hyperevm",4663:"robinhood"}),$e=e=>String(e??"").toLowerCase(),zM=e=>Array.isArray(e)?e:e==null?[]:[e];function KM(e,A,t){let r=$e(A),n=$e(t),s=$e(e?.baseToken?.address),o=$e(e?.quoteToken?.address);return s===r&&o===n||s===n&&o===r}function XM(e){let A=Number(e?.liquidity?.usd);return Number.isFinite(A)&&A>=0?A:null}function jM(e={}){return(e.baseUrl||process.env.DEXSCREENER_API_URL||_M).replace(/\/$/,"")}async function $M(e,A={}){if(!e)throw new Error("tokenAddress required");return ne(`${jM(A)}/latest/dex/tokens/${e}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs??12e3})}async function Yo({chainId:e,tokenA:A,tokenB:t,dexIds:r=[]}={},n={}){if(e==null||!A||!t)throw new Error("chainId, tokenA, and tokenB required");let s=$e(ZM[Number(e)]||e),o=new Set(zM(r).filter(Boolean).map($e)),i=[...new Set([A,t].map(g=>String(g)).filter(Boolean))],a=await Promise.allSettled(i.map(g=>$M(g,{...n,baseUrl:n.dexscreenerBaseUrl,timeoutMs:n.dexscreenerTimeoutMs??Math.min(Number(n.timeoutMs??4e3),4e3)}))),c=new Set,l=[];for(let g of a)if(g.status==="fulfilled")for(let E of g.value?.pairs||g.value?.data?.pairs||[]){let Q=`${$e(E?.chainId)}:${$e(E?.dexId)}:${$e(E?.pairAddress)}`;c.has(Q)||(c.add(Q),l.push(E))}return l.filter(g=>$e(g?.chainId)===s).filter(g=>KM(g,A,t)).filter(g=>!o.size||o.has($e(g?.dexId))).map(g=>({pairAddress:g.pairAddress??null,dexId:g.dexId??null,chainId:g.chainId??null,liquidityUsd:XM(g),pairCreatedAt:g.pairCreatedAt??null})).filter(g=>g.liquidityUsd!=null).sort((g,E)=>E.liquidityUsd-g.liquidityUsd)[0]??null}SA();UA();var kt={1:{name:"ethereum",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",usdc:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},8453:{name:"base",quoter:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",router:"0x2626664c2603336E57B271c5C0b26F421741e481",weth:"0x4200000000000000000000000000000000000006",usdc:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},42161:{name:"arbitrum",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",usdc:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},4663:{name:"robinhood",quoter:"0x33e885ed0ec9bf04ecfb19341582aadcb4c8a9e7",router:"0xcaf681a66d020601342297493863e78c959e5cb2",weth:"0x0bd7d308f8e1639fab988df18a8011f41eacad73",usdc:"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"},999:{name:"hyperevm",weth:"0x5555555555555555555555555555555555555555",usdc:"0xB8CE59FC3717ada4C02eaDF9682A9e934F625ebb"},10:{name:"optimism",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x4200000000000000000000000000000000000006",usdc:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"},56:{name:"bsc",quoter:"0x78D78E420Da98ad378D7799bE8f4AF69033EB077",router:"0xB971eF87ede563556b2ED4b1C0b0019111Dd85d2",weth:"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",usdc:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"},137:{name:"polygon",quoter:"0x61fFE014bA17989E743c5F6cB21bF9697530B21e",router:"0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45",weth:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",usdc:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"},43114:{name:"avalanche",quoter:"0xbe0F5544EC67e9B3b2D979aaA43f18Fd87E6257F",router:"0xbb00FF08d01D300023C629E8fFfFcb65A5a578cE",weth:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",usdc:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"}},AL=[100,500,3e3,1e4],_d=new zd(["function quoteExactInputSingle((address tokenIn, address tokenOut, uint256 amountIn, uint24 fee, uint160 sqrtPriceLimitX96) params) returns (uint256 amountOut, uint160 sqrtPriceX96After, uint32 initializedTicksCrossed, uint256 gasEstimate)","function quoteExactInput(bytes path, uint256 amountIn) returns (uint256 amountOut, uint160[] sqrtPriceX96AfterList, uint32[] initializedTicksCrossedList, uint256 gasEstimate)"]),iY=new zd(["function exactInputSingle((address tokenIn,address tokenOut,uint24 fee,address recipient,uint256 amountIn,uint256 amountOutMinimum,uint160 sqrtPriceLimitX96) params) payable returns (uint256 amountOut)","function multicall(uint256 deadline,bytes[] data) payable returns (bytes[] results)"]),tL="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",rL="0x0000000000000000000000000000000000000000",mg=[100,500,2500,1e4],nL={56:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},8453:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},42161:{pancakeswap:{name:"pancakeswap",quoter:"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997",router:"0x13f4EA83D0bd40E75C8222255bc855a974568Dd4",feeTiers:mg}},999:{hyperswap:{name:"hyperswap",quoter:"0x03A918028f22D9E1473B7959C927AD7425A45C7C",router:"0x4E2960a8cd19B467b82d26D83fAcb0fAE26b094D"}}};function sL(e,A){let t=Number(e),r=kt[t];if(!r)throw new Error(`uniswap-v3: unsupported chainId ${e} (supported: ${Object.keys(kt).join(", ")})`);let n=nL[t]||{};if(!A){if(!r.quoter||!r.router){let a=Object.keys(n).join(", ")||"none registered";throw new Error(`uniswap-v3: chain ${t} (${r.name}) has no canonical Uniswap v3 deployment -- name a venue explicitly (known: ${a})`)}return{chainId:t,venue:r.name,...r}}let s=String(A).toLowerCase();if(s===r.name&&r.quoter&&r.router)return{chainId:t,venue:r.name,...r};let o=n,i=o[s];if(!i){let a=[...r.quoter&&r.router?[r.name]:[],...Object.keys(o)].join(", ");throw new Error(`uniswap-v3: unknown venue "${A}" on chain ${t} (known: ${a})`)}return{chainId:t,venue:s,...r,quoter:i.quoter,router:i.router,feeTiers:i.feeTiers||null}}function Zd(e,A){let t=kt[Number(A)];if(!e||e===tL||e===rL||/^eth$/i.test(String(e)))return Go(t.weth);let r=String(e);if(/^weth$/i.test(r))return Go(t.weth);if(/^usdc$/i.test(r))return Go(t.usdc);if(!eL(r))throw new Error(`invalid token address: ${e}`);return Go(r)}function oL(e){let A=String(e||"uniswap").toLowerCase();return A==="uniswap"?["uniswap-v3","uniswap"]:A==="pancakeswap"?["pancakeswap-v3","pancakeswap"]:A==="hyperswap"?["hyperswap-v3","hyperswap"]:[A,`${A}-v3`]}async function Kd(e={},A={}){let{chainId:t,quoter:r,router:n,feeTiers:s}=sL(e.chainId??8453,e.venue),o=Zd(e.tokenIn||"WETH",t),i=Zd(e.tokenOut||kt[t].usdc,t),a=BigInt(e.amountIn??0);if(a<=0n)throw new Error("amountIn required (raw base units)");let c=s&&s.length?s:AL,l=e.fee!=null?[Number(e.fee)]:e.tryFees===!1?[c[Math.min(2,c.length-1)]]:[...c],u=[],g=null;for(let I of l){let C=_d.encodeFunctionData("quoteExactInputSingle",[{tokenIn:o,tokenOut:i,amountIn:a,fee:I,sqrtPriceLimitX96:0n}]);try{let B=await Nn(t,"eth_call",[{to:r,data:C},"latest"],A);if(!B||B==="0x"){u.push({fee:I,ok:!1,error:"empty result"});continue}let h=_d.decodeFunctionResult("quoteExactInputSingle",B),y={fee:I,ok:!0,amountOut:h[0].toString(),sqrtPriceX96After:h[1].toString(),initializedTicksCrossed:Number(h[2]),gasEstimate:h[3].toString()};u.push(y),(!g||BigInt(y.amountOut)>BigInt(g.amountOut))&&(g=y)}catch(B){u.push({fee:I,ok:!1,error:String(B.message||B).slice(0,160)})}}if(!g){let I=u.map(C=>`${C.fee}:${C.error||"fail"}`).join("; ");throw new Error(`uniswap-v3 quote failed chain=${t}: ${I}`)}let E=e.liquidityUsd==null?await Yo({chainId:t,tokenA:o,tokenB:i,dexIds:oL(e.venue)},A).catch(()=>null):null,Q=e.liquidityUsd??E?.liquidityUsd??null;return le({venue:"uniswap-v3",chainId:t,chain:kt[t].name,quoter:r,tokenIn:o,tokenOut:i,amountIn:a.toString(),fee:g.fee,amountOut:g.amountOut,gasEstimate:g.gasEstimate,liquidityUsd:Q,liquiditySource:E,sqrtPriceX96After:g.sqrtPriceX96After,initializedTicksCrossed:g.initializedTicksCrossed,triedFees:u,best:!0},{chainId:t,venue:n,amountOut:g.amountOut,liquidityUsd:Q,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps})}import{AbiCoder as iL,Interface as $d,getAddress as lA,isAddress as Jo,keccak256 as aL}from"ethers";SA();UA();var cL=iL.defaultAbiCoder(),Fr="0x0000000000000000000000000000000000000000",Ft={1:{name:"ethereum",poolManager:"0x000000000004444c5dc75cB358380D2e3dE08A90",quoter:"0x52f0e24d1c21c8a0cb1e5a5dd6198556bd9e1203",stateView:"0x7ffe42c4a5deea5b0fec41c94c136cf115597227",universalRouter:"0x66a9893cc07d91d95644aedd05d03f95e1dba8af",weth:"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",usdc:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},10:{name:"optimism",poolManager:"0x9a13f98cb987694c9f086b1f5eb990eea8264ec3",quoter:"0x1f3131a13296fb91c90870043742c3cdbff1a8d7",stateView:"0xc18a3169788f4f75a170290584eca6395c75ecdb",universalRouter:"0x851116d9223fabed8e56c0e6b8ad0c31d98b3507",weth:"0x4200000000000000000000000000000000000006",usdc:"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"},56:{name:"bsc",poolManager:"0x28e2ea090877bf75740558f6bfb36a5ffee9e9df",quoter:"0x9f75dd27d6664c475b90e105573e550ff69437b0",stateView:"0xd13dd3d6e93f276fafc9db9e6bb47c1180aee0c4",universalRouter:"0x1906c1d672b88cd1b9ac7593301ca990f94eae07",weth:"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",usdc:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"},137:{name:"polygon",poolManager:"0x67366782805870060151383f4bbff9dab53e5cd6",quoter:"0xb3d5c3dfc3a7aebff71895a7191796bffc2c81b9",stateView:"0x5ea1bd7974c8a611cbab0bdcafcb1d9cc9b3ba5a",universalRouter:"0x1095692a6237d83c6a72f3f5efedb9a670c49223",weth:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",usdc:"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"},8453:{name:"base",poolManager:"0x498581fF718922c3f8e6A244956aF099B2652b2b",quoter:"0x0d5e0f971ed27fbff6c2837bf31316121532048d",stateView:"0xa3c0c9b65bad0b08107aa264b0f3db444b867a71",universalRouter:"0x6ff5693b99212da76ad316178a184ab56d299b43",weth:"0x4200000000000000000000000000000000000006",usdc:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},42161:{name:"arbitrum",poolManager:"0x360e68faccca8ca495c1b759fd9eee466db9fb32",quoter:"0x3972c00f7ed4885e145823eb7c655375d275a1c5",stateView:"0x76fd297e2d437cd7f76d50f01afe6160f86e9990",universalRouter:"0xa51afafe0263b40edaef0df8781ea9aa03e381a3",weth:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",usdc:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},43114:{name:"avalanche",poolManager:"0x06380c0e0912312b5150364b9dc4542ba0dbbc85",quoter:"0xbe40675bb704506a3c2ccfb762dcfd1e979845c2",stateView:"0xc3c9e198c735a4b97e3e683f391ccbdd60b69286",universalRouter:"0x94b75331ae8d42c1b61065089b7d48fe14aa73b7",weth:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",usdc:"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"},4663:{name:"robinhood",poolManager:"0x8366a39cc670b4001a1121b8f6a443a643e40951",quoter:"0x8dc178efb8111bb0973dd9d722ebeff267c98f94",stateView:"0xf3334192d15450cdd385c8b70e03f9a6bd9e673b",universalRouter:"0x8876789976dEcBfCbBbe364623C63652db8C0904",weth:"0x0bd7d308f8e1639fab988df18a8011f41eacad73",usdc:"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},gL=[{fee:100,tickSpacing:1},{fee:500,tickSpacing:10},{fee:3e3,tickSpacing:60},{fee:1e4,tickSpacing:200},{fee:25e3,tickSpacing:8}],Xd=new $d(["function quoteExactInputSingle(((address currency0,address currency1,uint24 fee,int24 tickSpacing,address hooks) poolKey,bool zeroForOne,uint128 exactAmount,bytes hookData) params) returns (uint256 amountOut, uint256 gasEstimate)"]),QY=new $d(["function execute(bytes commands,bytes[] inputs,uint256 deadline) payable"]);var uL="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";function lL(e){let A=Number(e),t=Ft[A];if(!t)throw new Error(`uniswap-v4: unsupported chainId ${e} (supported: ${Object.keys(Ft).join(", ")})`);return{chainId:A,...t}}function jd(e,A){let t=Ft[Number(A)];if(!e||e===uL||e===Fr||/^eth$/i.test(String(e)))return lA(t.weth);let r=String(e);if(/^weth$/i.test(r))return lA(t.weth);if(/^usdc$/i.test(r)||/^usdg$/i.test(r))return lA(t.usdc);if(!Jo(r))throw new Error(`invalid token address: ${e}`);return lA(r)}function EL({currency0:e,currency1:A,fee:t,tickSpacing:r,hooks:n=Fr}){let s=lA(e),o=lA(A);if(s.toLowerCase()===o.toLowerCase())throw new Error("poolKey currencies must differ");let[i,a]=s.toLowerCase()<o.toLowerCase()?[s,o]:[o,s],c=n&&Jo(n)?lA(n):Fr;return aL(cL.encode(["address","address","uint24","int24","address"],[i,a,Number(t),Number(r),c]))}function QL({tokenIn:e,tokenOut:A,fee:t,tickSpacing:r,hooks:n=Fr}){let s=lA(e),o=lA(A),[i,a]=s.toLowerCase()<o.toLowerCase()?[s,o]:[o,s],c=s.toLowerCase()===i.toLowerCase();return{poolKey:{currency0:i,currency1:a,fee:Number(t),tickSpacing:Number(r),hooks:n&&Jo(n)?lA(n):Fr},zeroForOne:c}}var BL=["uniswap-v4","uniswapv4"];async function ef(e={},A={}){let{chainId:t,quoter:r,poolManager:n,universalRouter:s}=lL(e.chainId??8453),o=jd(e.tokenIn||"WETH",t),i=jd(e.tokenOut||Ft[t].usdc,t),a=BigInt(e.amountIn??0);if(a<=0n)throw new Error("amountIn required (raw base units)");if(a>0xffffffffffffffffffffffffffffffffn)throw new Error("amountIn exceeds uint128");let c=e.fee!=null&&e.tickSpacing!=null?[{fee:Number(e.fee),tickSpacing:Number(e.tickSpacing)}]:e.tryTiers===!1?[{fee:500,tickSpacing:10}]:[...gL],l=e.hooks||Fr,u=[],g=null;for(let I of c){let{poolKey:C,zeroForOne:B}=QL({tokenIn:o,tokenOut:i,fee:I.fee,tickSpacing:I.tickSpacing,hooks:l}),h=Xd.encodeFunctionData("quoteExactInputSingle",[{poolKey:C,zeroForOne:B,exactAmount:a,hookData:"0x"}]);try{let y=await Nn(t,"eth_call",[{to:r,data:h},"latest"],A);if(!y||y==="0x"){u.push({...I,ok:!1,error:"empty result"});continue}let m=Xd.decodeFunctionResult("quoteExactInputSingle",y),T={fee:I.fee,tickSpacing:I.tickSpacing,ok:!0,amountOut:m[0].toString(),gasEstimate:m[1].toString(),poolKey:C,zeroForOne:B,poolId:EL({...C})};u.push(T),(!g||BigInt(T.amountOut)>BigInt(g.amountOut))&&(g=T)}catch(y){u.push({...I,ok:!1,error:String(y.message||y).slice(0,160)})}}if(!g){let I=u.map(C=>`${C.fee}/${C.tickSpacing}:${C.error||"fail"}`).join("; ");throw new Error(`uniswap-v4 quote failed chain=${t}: ${I}`)}let E=e.liquidityUsd==null?await Yo({chainId:t,tokenA:o,tokenB:i,dexIds:BL},A).catch(()=>null):null,Q=e.liquidityUsd??E?.liquidityUsd??null;return le({venue:"uniswap-v4",chainId:t,chain:Ft[t].name,poolManager:n,quoter:r,universalRouter:s||null,tokenIn:o,tokenOut:i,amountIn:a.toString(),fee:g.fee,tickSpacing:g.tickSpacing,hooks:g.poolKey.hooks,poolId:g.poolId,zeroForOne:g.zeroForOne,amountOut:g.amountOut,gasEstimate:g.gasEstimate,liquidityUsd:Q,liquiditySource:E,triedTiers:u,best:!0,executionReady:!1,prepareReady:typeof e.recipient=="string"&&Jo(e.recipient)&&e.slippageBps!=null},{chainId:t,venue:s||r,amountOut:g.amountOut,liquidityUsd:Q,priceChange5m:e.priceChange5m,requestedCapBps:e.maxSlippageBps??e.slippageBps})}uA();var IL="https://coins.llama.fi",CL="https://api.llama.fi";function hL(e={}){return(e.baseUrl||process.env.DEFILLAMA_COINS_URL||IL).replace(/\/$/,"")}function dL(e={}){return(e.baseUrl||process.env.DEFILLAMA_API_URL||CL).replace(/\/$/,"")}async function vo(e,A={}){if(!Array.isArray(e)||!e.length)throw new Error("llamaPrices requires coins[]");let t=e.map(encodeURIComponent).join(",");return ne(`${hL(A)}/prices/current/${t}`,{fetchImpl:A.fetchImpl,timeoutMs:A.timeoutMs})}async function Af(e={}){return ne(`${dL(e)}/protocols`,{fetchImpl:e.fetchImpl,timeoutMs:e.timeoutMs??2e4})}var EA=e=>{let A=Number(e);return Number.isFinite(A)?A:null};function Ho(e){if(!Array.isArray(e))return null;let A=0,t=!1;for(let r of e){let n=EA(r?.amountUSD);n!=null&&(A+=n,t=!0)}return t?A:null}async function cf(e,A={}){let t=Ng[Number(e)];if(!t)return null;try{let r=await vo([t],A);return EA(r?.coins?.[t]?.price)}catch{return null}}var XA=e=>String(e??"").toLowerCase().replace(/[^a-z0-9]/g,""),af=Object.freeze({across:["across"],relay:["relaychain","relay"],lifi:["jumper-(li.fi-powered)","lifi"],stargate:["stargate-v2","stargate-v1","stargate"],hop:["hop-protocol","hop"],debridge:["debridge"],synapse:["synapse"],connext:["connext"],cbridge:["celer-bridge","celer-cbridge","cbridge"],celer:["celer-bridge","celer-cbridge","cbridge"],squid:["squid"],symbiosis:["symbiosis"],wormhole:["wormhole"],mayan:["mayan"],allbridge:["allbridge"],thorchain:["thorchain"]});async function DL(e={}){try{let A=await Af({...e,baseUrl:e.defillamaApiBaseUrl,timeoutMs:e.defillamaTimeoutMs??Math.min(Number(e.timeoutMs??5e3),5e3)});return Array.isArray(A)?A:[]}catch{return[]}}function bL(e,A={}){let t=XA(A.tool||A.provider||A.bridge||A.protocol),r=[];return e==="lifi"&&t&&t!=="lifi"&&r.push(...af[t]||[t]),r.push(...af[XA(e)]||[e]),r}function kL(e,A,t={}){let r=Array.isArray(e)?e:[],n=bL(A,t).map(XA).filter(Boolean);for(let s of n){let o=r.find(a=>XA(a?.slug)===s||XA(a?.name)===s),i=EA(o?.tvl);if(i!=null)return{liquidityUsd:i,protocol:o?.name??o?.slug??s}}for(let s of n){let o=r.find(a=>{let c=XA(a?.category);return!c.includes("bridge")&&!c.includes("crosschain")?!1:XA(a?.slug).includes(s)||XA(a?.name).includes(s)}),i=EA(o?.tvl);if(i!=null)return{liquidityUsd:i,protocol:o?.name??o?.slug??s}}return null}function kg({chainId:e,tokenIn:A,tokenOut:t,amountIn:r,taker:n,slippageBps:s,decimalsIn:o,decimalsOut:i,nativePriceUsd:a=null,destDecimalsPromise:c=null,opts:l={}}){let u=[];return u.push({source:"lifi",run:async()=>{let g=await wg({fromChain:e,toChain:e,fromToken:A,toToken:t,fromAmount:r},l),E=g?.estimate??g?.[0]?.estimate;return{amountOut:E?.toAmount,minOut:E?.toAmountMin,gasUsd:Ho(E?.gasCosts),feeUsd:Ho(E?.feeCosts),oracleFeeBps:g?.oracleFee?.applies?g.oracleFee.bps:0,meta:{tool:g?.tool??g?.toolDetails?.name,oracleFee:g?.oracleFee??null}}}}),o!=null&&u.push({source:"paraswap",run:async()=>{let g=i??(await Promise.resolve(c))?.decimals;if(g==null)throw new Error("paraswap needs destination decimals; none supplied or resolvable");let E=await Ud({chainId:e,srcToken:A,destToken:t,amount:r,srcDecimals:o,destDecimals:g},l),Q=E?.priceRoute;return{amountOut:Q?.destAmount,gasUsd:EA(Q?.gasCostUSD),oracleFeeBps:E?.oracleFee?.applies?E.oracleFee.bps:0,meta:{bestRoute:Q?.bestRoute?.[0]?.swaps?.[0]?.swapExchanges?.[0]?.exchange,oracleFee:E?.oracleFee??null}}}}),process.env.ZEROX_API_KEY&&u.push({source:"0x",run:async()=>{let g=await Yd({chainId:e,sellToken:A,buyToken:t,sellAmount:r,taker:n},l),E=null,Q=g?.totalNetworkFee,I=await Promise.resolve(a);return Q!=null&&I&&(E=Number(Q)/1e18*I),{amountOut:g?.buyAmount,minOut:g?.minBuyAmount,gasUsd:E,meta:{source:g?.route?.fills?.[0]?.source}}}}),process.env.ONEINCH_API_KEY&&u.push({source:"1inch",run:async()=>{let g=await vd({chainId:e,src:A,dst:t,amount:r},l),E=null;return g?.gas!=null&&a&&(E=null),{amountOut:g?.dstAmount,gasUsd:E,meta:{gasUnits:g?.gas}}}}),u.push({source:"cow",run:async()=>{let g=await Vd({chainId:e,sellToken:A,buyToken:t,sellAmountBeforeFee:String(r),from:n},l),E=g?.quote??g,Q=E?.feeAmount;return{amountOut:E?.buyAmount,gasUsd:0,meta:{intent:!0,feeAmountInSellToken:Q,settlement:"solver-executed"}}}}),kt[Number(e)]&&u.push({source:"uniswap-v3",run:async()=>{let g=await Kd({chainId:e,tokenIn:A,tokenOut:t,amountIn:r},l);return{amountOut:g?.amountOut,minOut:g?.minOut??g?.amountOutMinimum??null,gasUsd:null,liquidityUsd:g?.liquidityUsd??null,meta:{onchain:!0,fee:g?.fee,gasUnits:g?.gasEstimate,quoter:g?.quoter}}}}),Ft[Number(e)]&&u.push({source:"uniswap-v4",run:async()=>{let g=await ef({chainId:e,tokenIn:A,tokenOut:t,amountIn:r,recipient:n,slippageBps:s},l);return{amountOut:g?.amountOut,minOut:g?.minOut??g?.amountOutMinimum??null,gasUsd:null,liquidityUsd:g?.liquidityUsd??null,meta:{onchain:!0,venue:"uniswap-v4",fee:g?.fee,tickSpacing:g?.tickSpacing,poolId:g?.poolId,hooks:g?.hooks,gasUnits:g?.gasEstimate,quoter:g?.quoter,poolManager:g?.poolManager,prepareReady:g?.prepareReady===!0,executionReady:!1}}}}),u}function gf({fromChainId:e,toChainId:A,tokenIn:t,tokenOut:r,amountIn:n,taker:s,opts:o={}}){let i=[],a=null,c=async(l,u={})=>(a||=DL(o),kL(await a,l,u));return i.push({source:"lifi",run:async()=>{let l=await wg({fromChain:e,toChain:A,fromToken:t,toToken:r,fromAmount:n},o),u=l?.estimate??l?.[0]?.estimate,g={tool:l?.tool??l?.toolDetails?.name,durationSeconds:EA(u?.executionDuration)},E=await c("lifi",g);return{amountOut:u?.toAmount,minOut:u?.toAmountMin,gasUsd:Ho(u?.gasCosts),feeUsd:Ho(u?.feeCosts),oracleFeeBps:l?.oracleFee?.applies?l.oracleFee.bps:0,liquidityUsd:E?.liquidityUsd??null,meta:{...g,liquidityProtocol:E?.protocol,oracleFee:l?.oracleFee??null}}}}),i.push({source:"relay",run:async()=>{let{relayQuote:l}=await Promise.resolve().then(()=>(bg(),Dg)),g=(await l({user:s,originChainId:e,destinationChainId:A,originCurrency:t,destinationCurrency:r,amount:String(n)},o))?.details,E={durationSeconds:EA(g?.timeEstimate),rate:g?.rate},Q=await c("relay",E);return{amountOut:g?.currencyOut?.amount,minOut:g?.currencyOut?.minimumAmount,gasUsd:EA(g?.totalImpact?.usd)!=null?Math.abs(EA(g.totalImpact.usd)):null,liquidityUsd:Q?.liquidityUsd??null,meta:{...E,liquidityProtocol:Q?.protocol}}}}),i.push({source:"across",run:async()=>{let{acrossSuggestedFees:l}=await Promise.resolve().then(()=>(bg(),Dg)),u=await l({token:t,destinationToken:r,originChainId:e,destinationChainId:A,amount:String(n)},o),g=u?.totalRelayFee?.total,E=null;if(g!=null)try{let I=BigInt(String(n))-BigInt(String(g));I>0n&&(E=I.toString())}catch{}let Q=await c("across");return{amountOut:E,gasUsd:null,liquidityUsd:Q?.liquidityUsd??null,meta:{derivedFromFees:!0,durationSeconds:EA(u?.estimatedFillTimeSec),limits:u?.limits?{min:u.limits.minDeposit,max:u.limits.maxDeposit}:void 0,liquidityProtocol:Q?.protocol}}}}),i}var FL={1:"ethereum",10:"optimism",56:"bsc",137:"polygon",8453:"base",42161:"arbitrum",43114:"avax"};async function uf(e,A,t){let r=FL[Number(e)];if(!r)return{priceUsd:null,decimals:null};let n=`${r}:${A}`;try{let o=(await vo([n],t))?.coins?.[n],i=Number(o?.price),a=Number(o?.decimals);return{priceUsd:Number.isFinite(i)?i:null,decimals:Number.isFinite(a)?a:null}}catch{return{priceUsd:null,decimals:null}}}async function GY(e,A={}){let{chainId:t,tokenIn:r,tokenOut:n,amountIn:s}=e;if(t==null||!r||!n||s==null)throw new Error("bestSwapRoute requires chainId, tokenIn, tokenOut, amountIn");let o=cf(t,A),i=uf(t,n,A),a=Pd(t,A).catch(()=>null),c=kg({...e,nativePriceUsd:o,decimalsOut:e.decimalsOut,destDecimalsPromise:i,opts:A}),[l,u,g]=await Promise.all([Mn(c,{timeoutMs:A.timeoutMs??12e3}),i,a]);o.catch(()=>{});let E=await o.then(C=>C,()=>null),Q=Oo(l,{destPriceUsd:u.priceUsd,destDecimals:e.decimalsOut??u.decimals,liquidityBandBps:A.liquidityBandBps??50,gasPriceWei:g,nativePriceUsd:E}),I=A.maxImpactPct===void 0?25:A.maxImpactPct;if(I!=null&&Q.best){let C=Q.best.source,h=await Ug(async y=>{let m=kg({...e,amountIn:y.toString(),nativePriceUsd:o,decimalsOut:e.decimalsOut,destDecimalsPromise:i,opts:A}).filter(_=>_.source===C);return m.length?(await Mn(m,{timeoutMs:A.timeoutMs??12e3}))?.[0]?.amountOut??null:null},s);if(h){let y=Mg(Q,{[C]:h},{maxImpactPct:I});return{kind:"swap",chainId:t,tokenIn:r,tokenOut:n,amountIn:String(s),...y,sourcesTried:c.length,sourcesAnswered:l.filter(m=>m.quality!==eA.FAILED).length,note:Fg(y,c.length),priceImpact:{[C]:Number(h.impactPct.toFixed(2))}}}}return{kind:"swap",chainId:t,tokenIn:r,tokenOut:n,amountIn:String(s),...Q,sourcesTried:c.length,sourcesAnswered:l.filter(C=>C.quality!==eA.FAILED).length,note:Fg(Q,c.length)}}async function JY(e,A={}){let{fromChainId:t,toChainId:r,tokenIn:n,tokenOut:s,amountIn:o}=e;if(t==null||r==null||!n||!s||o==null)throw new Error("bestBridgeRoute requires fromChainId, toChainId, tokenIn, tokenOut, amountIn");if(Number(t)===Number(r))throw new Error("bestBridgeRoute is for cross-chain; use bestSwapRoute for same-chain");let i=uf(r,s,A),a=gf({...e,opts:A}),[c,l]=await Promise.all([Mn(a,{timeoutMs:A.timeoutMs??15e3}),i]),u=Oo(c,{destPriceUsd:l.priceUsd,destDecimals:e.decimalsOut??l.decimals,liquidityBandBps:A.liquidityBandBps??50}),g=u.routes.map(E=>({source:E.source,seconds:E.meta?.durationSeconds??null})).filter(E=>E.seconds!=null);return{kind:"bridge",fromChainId:t,toChainId:r,tokenIn:n,tokenOut:s,amountIn:String(o),...u,durations:g,sourcesTried:a.length,sourcesAnswered:c.filter(E=>E.quality!==eA.FAILED).length,note:Fg(u,a.length)}}function RL(e){let A=e?.meta?.oracleFee;return A?.applies?` \xB7 ${Fd(A)}`:""}function Fg(e,A){if(!e.best)return"no source returned a usable route";let t=e.routes.length,r=RL(e.best);if(t===1)return`only 1 of ${A} sources answered, so this is the ONLY route, not a proven best one. Treat it as unbenchmarked.`+r;if(e.improvementBps!=null){let n=e.improvementBps,s=n/100;if(n<.01)return`best of ${t} routes, ranked on ${e.rankedOn}: effectively tied with the runner-up (${e.spreadBasis}), inside quote noise. Re-quote before you size up.`+r;let o=s>=.01?`${s.toFixed(2)}%`:`${n.toFixed(2)}bps`;return`best of ${t} routes, ranked on ${e.rankedOn}: ${o} better than the runner-up (${e.spreadBasis})`+r}return`best of ${t} routes, ranked on ${e.rankedOn}. No spread quoted: the top routes report cost differently, so the margin is not comparable.`+r}export{eA as QUALITY,JY as bestBridgeRoute,GY as bestSwapRoute,Fg as formatComparisonNote};