@skyramp/testbot-core 0.13.0-v3.169 → 0.13.0-v3.170

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.
@@ -0,0 +1,95 @@
1
+ "use strict";var Rk=Object.create;var so=Object.defineProperty;var kk=Object.getOwnPropertyDescriptor;var Sk=Object.getOwnPropertyNames;var vk=Object.getPrototypeOf,xk=Object.prototype.hasOwnProperty;var o=(t,e)=>so(t,"name",{value:e,configurable:!0});var T=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},Mp=(t,e)=>{for(var n in e)so(t,n,{get:e[n],enumerable:!0})},Lp=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Sk(e))!xk.call(t,s)&&s!==n&&so(t,s,{get:()=>e[s],enumerable:!(r=kk(e,s))||r.enumerable});return t};var He=(t,e,n)=>(n=t!=null?Rk(vk(t)):{},Lp(e||!t||!t.__esModule?so(n,"default",{value:t,enumerable:!0}):n,t)),Dk=t=>Lp(so({},"__esModule",{value:!0}),t);var TE=T(ei=>{"use strict";var GZ=require("net"),aD=require("tls"),Zl=require("http"),vE=require("https"),AD=require("events"),$Z=require("assert"),cD=require("util");ei.httpOverHttp=uD;ei.httpsOverHttp=lD;ei.httpOverHttps=dD;ei.httpsOverHttps=gD;function uD(t){var e=new Nn(t);return e.request=Zl.request,e}o(uD,"httpOverHttp");function lD(t){var e=new Nn(t);return e.request=Zl.request,e.createSocket=xE,e.defaultPort=443,e}o(lD,"httpsOverHttp");function dD(t){var e=new Nn(t);return e.request=vE.request,e}o(dD,"httpOverHttps");function gD(t){var e=new Nn(t);return e.request=vE.request,e.createSocket=xE,e.defaultPort=443,e}o(gD,"httpsOverHttps");function Nn(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||Zl.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",o(function(r,s,i,a){for(var c=DE(s,i,a),l=0,d=e.requests.length;l<d;++l){var g=e.requests[l];if(g.host===c.host&&g.port===c.port){e.requests.splice(l,1),g.request.onSocket(r);return}}r.destroy(),e.removeSocket(r)},"onFree"))}o(Nn,"TunnelingAgent");cD.inherits(Nn,AD.EventEmitter);Nn.prototype.addRequest=o(function(e,n,r,s){var i=this,a=Kl({request:e},i.options,DE(n,r,s));if(i.sockets.length>=this.maxSockets){i.requests.push(a);return}i.createSocket(a,function(c){c.on("free",l),c.on("close",d),c.on("agentRemove",d),e.onSocket(c);function l(){i.emit("free",c,a)}o(l,"onFree");function d(g){i.removeSocket(c),c.removeListener("free",l),c.removeListener("close",d),c.removeListener("agentRemove",d)}o(d,"onCloseOrRemove")})},"addRequest");Nn.prototype.createSocket=o(function(e,n){var r=this,s={};r.sockets.push(s);var i=Kl({},r.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(i.localAddress=e.localAddress),i.proxyAuth&&(i.headers=i.headers||{},i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")),cr("making CONNECT request");var a=r.request(i);a.useChunkedEncodingByDefault=!1,a.once("response",c),a.once("upgrade",l),a.once("connect",d),a.once("error",g),a.end();function c(h){h.upgrade=!0}o(c,"onResponse");function l(h,f,m){process.nextTick(function(){d(h,f,m)})}o(l,"onUpgrade");function d(h,f,m){if(a.removeAllListeners(),f.removeAllListeners(),h.statusCode!==200){cr("tunneling socket could not be established, statusCode=%d",h.statusCode),f.destroy();var C=new Error("tunneling socket could not be established, statusCode="+h.statusCode);C.code="ECONNRESET",e.request.emit("error",C),r.removeSocket(s);return}if(m.length>0){cr("got illegal response body from proxy"),f.destroy();var C=new Error("got illegal response body from proxy");C.code="ECONNRESET",e.request.emit("error",C),r.removeSocket(s);return}return cr("tunneling connection has established"),r.sockets[r.sockets.indexOf(s)]=f,n(f)}o(d,"onConnect");function g(h){a.removeAllListeners(),cr(`tunneling socket could not be established, cause=%s
2
+ `,h.message,h.stack);var f=new Error("tunneling socket could not be established, cause="+h.message);f.code="ECONNRESET",e.request.emit("error",f),r.removeSocket(s)}o(g,"onError")},"createSocket");Nn.prototype.removeSocket=o(function(e){var n=this.sockets.indexOf(e);if(n!==-1){this.sockets.splice(n,1);var r=this.requests.shift();r&&this.createSocket(r,function(s){r.request.onSocket(s)})}},"removeSocket");function xE(t,e){var n=this;Nn.prototype.createSocket.call(n,t,function(r){var s=t.request.getHeader("host"),i=Kl({},n.options,{socket:r,servername:s?s.replace(/:.*$/,""):t.host}),a=aD.connect(0,i);n.sockets[n.sockets.indexOf(r)]=a,e(a)})}o(xE,"createSecureSocket");function DE(t,e,n){return typeof t=="string"?{host:t,port:e,localAddress:n}:t}o(DE,"toOptions");function Kl(t){for(var e=1,n=arguments.length;e<n;++e){var r=arguments[e];if(typeof r=="object")for(var s=Object.keys(r),i=0,a=s.length;i<a;++i){var c=s[i];r[c]!==void 0&&(t[c]=r[c])}}return t}o(Kl,"mergeOptions");var cr;process.env.NODE_DEBUG&&/\btunnel\b/.test(process.env.NODE_DEBUG)?cr=o(function(){var t=Array.prototype.slice.call(arguments);typeof t[0]=="string"?t[0]="TUNNEL: "+t[0]:t.unshift("TUNNEL:"),console.error.apply(console,t)},"debug"):cr=o(function(){},"debug");ei.debug=cr});var FE=T((VZ,NE)=>{NE.exports=TE()});var Se=T((JZ,UE)=>{UE.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 pe=T((qZ,oC)=>{"use strict";var ME=Symbol.for("undici.error.UND_ERR"),ve=class extends Error{static{o(this,"UndiciError")}constructor(e){super(e),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](e){return e&&e[ME]===!0}[ME]=!0},LE=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),Xl=class extends ve{static{o(this,"ConnectTimeoutError")}constructor(e){super(e),this.name="ConnectTimeoutError",this.message=e||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](e){return e&&e[LE]===!0}[LE]=!0},_E=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),ed=class extends ve{static{o(this,"HeadersTimeoutError")}constructor(e){super(e),this.name="HeadersTimeoutError",this.message=e||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](e){return e&&e[_E]===!0}[_E]=!0},PE=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),td=class extends ve{static{o(this,"HeadersOverflowError")}constructor(e){super(e),this.name="HeadersOverflowError",this.message=e||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](e){return e&&e[PE]===!0}[PE]=!0},OE=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),nd=class extends ve{static{o(this,"BodyTimeoutError")}constructor(e){super(e),this.name="BodyTimeoutError",this.message=e||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](e){return e&&e[OE]===!0}[OE]=!0},GE=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),rd=class extends ve{static{o(this,"ResponseStatusCodeError")}constructor(e,n,r,s){super(e),this.name="ResponseStatusCodeError",this.message=e||"Response Status Code Error",this.code="UND_ERR_RESPONSE_STATUS_CODE",this.body=s,this.status=n,this.statusCode=n,this.headers=r}static[Symbol.hasInstance](e){return e&&e[GE]===!0}[GE]=!0},$E=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),sd=class extends ve{static{o(this,"InvalidArgumentError")}constructor(e){super(e),this.name="InvalidArgumentError",this.message=e||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](e){return e&&e[$E]===!0}[$E]=!0},YE=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),id=class extends ve{static{o(this,"InvalidReturnValueError")}constructor(e){super(e),this.name="InvalidReturnValueError",this.message=e||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](e){return e&&e[YE]===!0}[YE]=!0},HE=Symbol.for("undici.error.UND_ERR_ABORT"),bA=class extends ve{static{o(this,"AbortError")}constructor(e){super(e),this.name="AbortError",this.message=e||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](e){return e&&e[HE]===!0}[HE]=!0},VE=Symbol.for("undici.error.UND_ERR_ABORTED"),od=class extends bA{static{o(this,"RequestAbortedError")}constructor(e){super(e),this.name="AbortError",this.message=e||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](e){return e&&e[VE]===!0}[VE]=!0},JE=Symbol.for("undici.error.UND_ERR_INFO"),ad=class extends ve{static{o(this,"InformationalError")}constructor(e){super(e),this.name="InformationalError",this.message=e||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](e){return e&&e[JE]===!0}[JE]=!0},qE=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),Ad=class extends ve{static{o(this,"RequestContentLengthMismatchError")}constructor(e){super(e),this.name="RequestContentLengthMismatchError",this.message=e||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](e){return e&&e[qE]===!0}[qE]=!0},jE=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),cd=class extends ve{static{o(this,"ResponseContentLengthMismatchError")}constructor(e){super(e),this.name="ResponseContentLengthMismatchError",this.message=e||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](e){return e&&e[jE]===!0}[jE]=!0},WE=Symbol.for("undici.error.UND_ERR_DESTROYED"),ud=class extends ve{static{o(this,"ClientDestroyedError")}constructor(e){super(e),this.name="ClientDestroyedError",this.message=e||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](e){return e&&e[WE]===!0}[WE]=!0},zE=Symbol.for("undici.error.UND_ERR_CLOSED"),ld=class extends ve{static{o(this,"ClientClosedError")}constructor(e){super(e),this.name="ClientClosedError",this.message=e||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](e){return e&&e[zE]===!0}[zE]=!0},ZE=Symbol.for("undici.error.UND_ERR_SOCKET"),dd=class extends ve{static{o(this,"SocketError")}constructor(e,n){super(e),this.name="SocketError",this.message=e||"Socket error",this.code="UND_ERR_SOCKET",this.socket=n}static[Symbol.hasInstance](e){return e&&e[ZE]===!0}[ZE]=!0},KE=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),gd=class extends ve{static{o(this,"NotSupportedError")}constructor(e){super(e),this.name="NotSupportedError",this.message=e||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](e){return e&&e[KE]===!0}[KE]=!0},XE=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),hd=class extends ve{static{o(this,"BalancedPoolMissingUpstreamError")}constructor(e){super(e),this.name="MissingUpstreamError",this.message=e||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](e){return e&&e[XE]===!0}[XE]=!0},eC=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),pd=class extends Error{static{o(this,"HTTPParserError")}constructor(e,n,r){super(e),this.name="HTTPParserError",this.code=n?`HPE_${n}`:void 0,this.data=r?r.toString():void 0}static[Symbol.hasInstance](e){return e&&e[eC]===!0}[eC]=!0},tC=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),fd=class extends ve{static{o(this,"ResponseExceededMaxSizeError")}constructor(e){super(e),this.name="ResponseExceededMaxSizeError",this.message=e||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](e){return e&&e[tC]===!0}[tC]=!0},nC=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),md=class extends ve{static{o(this,"RequestRetryError")}constructor(e,n,{headers:r,data:s}){super(e),this.name="RequestRetryError",this.message=e||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=n,this.data=s,this.headers=r}static[Symbol.hasInstance](e){return e&&e[nC]===!0}[nC]=!0},rC=Symbol.for("undici.error.UND_ERR_RESPONSE"),Ed=class extends ve{static{o(this,"ResponseError")}constructor(e,n,{headers:r,data:s}){super(e),this.name="ResponseError",this.message=e||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=n,this.data=s,this.headers=r}static[Symbol.hasInstance](e){return e&&e[rC]===!0}[rC]=!0},sC=Symbol.for("undici.error.UND_ERR_PRX_TLS"),Cd=class extends ve{static{o(this,"SecureProxyConnectionError")}constructor(e,n,r){super(n,{cause:e,...r??{}}),this.name="SecureProxyConnectionError",this.message=n||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=e}static[Symbol.hasInstance](e){return e&&e[sC]===!0}[sC]=!0},iC=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),Id=class extends ve{static{o(this,"MessageSizeExceededError")}constructor(e){super(e),this.name="MessageSizeExceededError",this.message=e||"Max decompressed message size exceeded",this.code="UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"}static[Symbol.hasInstance](e){return e&&e[iC]===!0}get[iC](){return!0}};oC.exports={AbortError:bA,HTTPParserError:pd,UndiciError:ve,HeadersTimeoutError:ed,HeadersOverflowError:td,BodyTimeoutError:nd,RequestContentLengthMismatchError:Ad,ConnectTimeoutError:Xl,ResponseStatusCodeError:rd,InvalidArgumentError:sd,InvalidReturnValueError:id,RequestAbortedError:od,ClientDestroyedError:ud,ClientClosedError:ld,InformationalError:ad,SocketError:dd,NotSupportedError:gd,ResponseContentLengthMismatchError:cd,BalancedPoolMissingUpstreamError:hd,ResponseExceededMaxSizeError:fd,RequestRetryError:md,ResponseError:Ed,SecureProxyConnectionError:Cd,MessageSizeExceededError:Id}});var kA=T((WZ,aC)=>{"use strict";var RA={},yd=["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 t=0;t<yd.length;++t){let e=yd[t],n=e.toLowerCase();RA[e]=RA[n]=n}Object.setPrototypeOf(RA,null);aC.exports={wellknownHeaderNames:yd,headerNameLowerCasedRecord:RA}});var lC=T((zZ,uC)=>{"use strict";var{wellknownHeaderNames:AC,headerNameLowerCasedRecord:hD}=kA(),Qd=class t{static{o(this,"TstNode")}value=null;left=null;middle=null;right=null;code;constructor(e,n,r){if(r===void 0||r>=e.length)throw new TypeError("Unreachable");if((this.code=e.charCodeAt(r))>127)throw new TypeError("key must be ascii string");e.length!==++r?this.middle=new t(e,n,r):this.value=n}add(e,n){let r=e.length;if(r===0)throw new TypeError("Unreachable");let s=0,i=this;for(;;){let a=e.charCodeAt(s);if(a>127)throw new TypeError("key must be ascii string");if(i.code===a)if(r===++s){i.value=n;break}else if(i.middle!==null)i=i.middle;else{i.middle=new t(e,n,s);break}else if(i.code<a)if(i.left!==null)i=i.left;else{i.left=new t(e,n,s);break}else if(i.right!==null)i=i.right;else{i.right=new t(e,n,s);break}}}search(e){let n=e.length,r=0,s=this;for(;s!==null&&r<n;){let i=e[r];for(i<=90&&i>=65&&(i|=32);s!==null;){if(i===s.code){if(n===++r)return s;s=s.middle;break}s=s.code<i?s.left:s.right}}return null}},SA=class{static{o(this,"TernarySearchTree")}node=null;insert(e,n){this.node===null?this.node=new Qd(e,n,0):this.node.add(e,n)}lookup(e){return this.node?.search(e)?.value??null}},cC=new SA;for(let t=0;t<AC.length;++t){let e=hD[AC[t]];cC.insert(e,e)}uC.exports={TernarySearchTree:SA,tree:cC}});var ue=T((KZ,kC)=>{"use strict";var To=require("node:assert"),{kDestroyed:gC,kBodyUsed:ti,kListeners:Bd,kBody:dC}=Se(),{IncomingMessage:pD}=require("node:http"),DA=require("node:stream"),fD=require("node:net"),{Blob:mD}=require("node:buffer"),ED=require("node:util"),{stringify:CD}=require("node:querystring"),{EventEmitter:ID}=require("node:events"),{InvalidArgumentError:$e}=pe(),{headerNameLowerCasedRecord:yD}=kA(),{tree:hC}=lC(),[QD,BD]=process.versions.node.split(".").map(t=>Number(t)),xA=class{static{o(this,"BodyAsyncIterable")}constructor(e){this[dC]=e,this[ti]=!1}async*[Symbol.asyncIterator](){To(!this[ti],"disturbed"),this[ti]=!0,yield*this[dC]}};function wD(t){return TA(t)?(CC(t)===0&&t.on("data",function(){To(!1)}),typeof t.readableDidRead!="boolean"&&(t[ti]=!1,ID.prototype.on.call(t,"data",function(){this[ti]=!0})),t):t&&typeof t.pipeTo=="function"?new xA(t):t&&typeof t!="string"&&!ArrayBuffer.isView(t)&&EC(t)?new xA(t):t}o(wD,"wrapRequestBody");function bD(){}o(bD,"nop");function TA(t){return t&&typeof t=="object"&&typeof t.pipe=="function"&&typeof t.on=="function"}o(TA,"isStream");function pC(t){if(t===null)return!1;if(t instanceof mD)return!0;if(typeof t!="object")return!1;{let e=t[Symbol.toStringTag];return(e==="Blob"||e==="File")&&("stream"in t&&typeof t.stream=="function"||"arrayBuffer"in t&&typeof t.arrayBuffer=="function")}}o(pC,"isBlobLike");function RD(t,e){if(t.includes("?")||t.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let n=CD(e);return n&&(t+="?"+n),t}o(RD,"buildURL");function fC(t){let e=parseInt(t,10);return e===Number(t)&&e>=0&&e<=65535}o(fC,"isValidPort");function vA(t){return t!=null&&t[0]==="h"&&t[1]==="t"&&t[2]==="t"&&t[3]==="p"&&(t[4]===":"||t[4]==="s"&&t[5]===":")}o(vA,"isHttpOrHttpsPrefixed");function mC(t){if(typeof t=="string"){if(t=new URL(t),!vA(t.origin||t.protocol))throw new $e("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}if(!t||typeof t!="object")throw new $e("Invalid URL: The URL argument must be a non-null object.");if(!(t instanceof URL)){if(t.port!=null&&t.port!==""&&fC(t.port)===!1)throw new $e("Invalid URL: port must be a valid integer or a string representation of an integer.");if(t.path!=null&&typeof t.path!="string")throw new $e("Invalid URL path: the path must be a string or null/undefined.");if(t.pathname!=null&&typeof t.pathname!="string")throw new $e("Invalid URL pathname: the pathname must be a string or null/undefined.");if(t.hostname!=null&&typeof t.hostname!="string")throw new $e("Invalid URL hostname: the hostname must be a string or null/undefined.");if(t.origin!=null&&typeof t.origin!="string")throw new $e("Invalid URL origin: the origin must be a string or null/undefined.");if(!vA(t.origin||t.protocol))throw new $e("Invalid URL protocol: the URL must start with `http:` or `https:`.");let e=t.port!=null?t.port:t.protocol==="https:"?443:80,n=t.origin!=null?t.origin:`${t.protocol||""}//${t.hostname||""}:${e}`,r=t.path!=null?t.path:`${t.pathname||""}${t.search||""}`;return n[n.length-1]==="/"&&(n=n.slice(0,n.length-1)),r&&r[0]!=="/"&&(r=`/${r}`),new URL(`${n}${r}`)}if(!vA(t.origin||t.protocol))throw new $e("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}o(mC,"parseURL");function kD(t){if(t=mC(t),t.pathname!=="/"||t.search||t.hash)throw new $e("invalid url");return t}o(kD,"parseOrigin");function SD(t){if(t[0]==="["){let n=t.indexOf("]");return To(n!==-1),t.substring(1,n)}let e=t.indexOf(":");return e===-1?t:t.substring(0,e)}o(SD,"getHostname");function vD(t){if(!t)return null;To(typeof t=="string");let e=SD(t);return fD.isIP(e)?"":e}o(vD,"getServerName");function xD(t){return JSON.parse(JSON.stringify(t))}o(xD,"deepClone");function DD(t){return t!=null&&typeof t[Symbol.asyncIterator]=="function"}o(DD,"isAsyncIterable");function EC(t){return t!=null&&(typeof t[Symbol.iterator]=="function"||typeof t[Symbol.asyncIterator]=="function")}o(EC,"isIterable");function CC(t){if(t==null)return 0;if(TA(t)){let e=t._readableState;return e&&e.objectMode===!1&&e.ended===!0&&Number.isFinite(e.length)?e.length:null}else{if(pC(t))return t.size!=null?t.size:null;if(QC(t))return t.byteLength}return null}o(CC,"bodyLength");function IC(t){return t&&!!(t.destroyed||t[gC]||DA.isDestroyed?.(t))}o(IC,"isDestroyed");function TD(t,e){t==null||!TA(t)||IC(t)||(typeof t.destroy=="function"?(Object.getPrototypeOf(t).constructor===pD&&(t.socket=null),t.destroy(e)):e&&queueMicrotask(()=>{t.emit("error",e)}),t.destroyed!==!0&&(t[gC]=!0))}o(TD,"destroy");var ND=/timeout=(\d+)/;function FD(t){let e=t.toString().match(ND);return e?parseInt(e[1],10)*1e3:null}o(FD,"parseKeepAliveTimeout");function yC(t){return typeof t=="string"?yD[t]??t.toLowerCase():hC.lookup(t)??t.toString("latin1").toLowerCase()}o(yC,"headerNameToString");function UD(t){return hC.lookup(t)??t.toString("latin1").toLowerCase()}o(UD,"bufferToLowerCasedHeaderName");function MD(t,e){e===void 0&&(e={});for(let n=0;n<t.length;n+=2){let r=yC(t[n]),s=e[r];if(s)typeof s=="string"&&(s=[s],e[r]=s),s.push(t[n+1].toString("utf8"));else{let i=t[n+1];typeof i=="string"?e[r]=i:e[r]=Array.isArray(i)?i.map(a=>a.toString("utf8")):i.toString("utf8")}}return"content-length"in e&&"content-disposition"in e&&(e["content-disposition"]=Buffer.from(e["content-disposition"]).toString("latin1")),e}o(MD,"parseHeaders");function LD(t){let e=t.length,n=new Array(e),r=!1,s=-1,i,a,c=0;for(let l=0;l<t.length;l+=2)i=t[l],a=t[l+1],typeof i!="string"&&(i=i.toString()),typeof a!="string"&&(a=a.toString("utf8")),c=i.length,c===14&&i[7]==="-"&&(i==="content-length"||i.toLowerCase()==="content-length")?r=!0:c===19&&i[7]==="-"&&(i==="content-disposition"||i.toLowerCase()==="content-disposition")&&(s=l+1),n[l]=i,n[l+1]=a;return r&&s!==-1&&(n[s]=Buffer.from(n[s]).toString("latin1")),n}o(LD,"parseRawHeaders");function QC(t){return t instanceof Uint8Array||Buffer.isBuffer(t)}o(QC,"isBuffer");function _D(t,e,n){if(!t||typeof t!="object")throw new $e("handler must be an object");if(typeof t.onConnect!="function")throw new $e("invalid onConnect method");if(typeof t.onError!="function")throw new $e("invalid onError method");if(typeof t.onBodySent!="function"&&t.onBodySent!==void 0)throw new $e("invalid onBodySent method");if(n||e==="CONNECT"){if(typeof t.onUpgrade!="function")throw new $e("invalid onUpgrade method")}else{if(typeof t.onHeaders!="function")throw new $e("invalid onHeaders method");if(typeof t.onData!="function")throw new $e("invalid onData method");if(typeof t.onComplete!="function")throw new $e("invalid onComplete method")}}o(_D,"validateHandler");function PD(t){return!!(t&&(DA.isDisturbed(t)||t[ti]))}o(PD,"isDisturbed");function OD(t){return!!(t&&DA.isErrored(t))}o(OD,"isErrored");function GD(t){return!!(t&&DA.isReadable(t))}o(GD,"isReadable");function $D(t){return{localAddress:t.localAddress,localPort:t.localPort,remoteAddress:t.remoteAddress,remotePort:t.remotePort,remoteFamily:t.remoteFamily,timeout:t.timeout,bytesWritten:t.bytesWritten,bytesRead:t.bytesRead}}o($D,"getSocketInfo");function YD(t){let e;return new ReadableStream({async start(){e=t[Symbol.asyncIterator]()},async pull(n){let{done:r,value:s}=await e.next();if(r)queueMicrotask(()=>{n.close(),n.byobRequest?.respond(0)});else{let i=Buffer.isBuffer(s)?s:Buffer.from(s);i.byteLength&&n.enqueue(new Uint8Array(i))}return n.desiredSize>0},async cancel(n){await e.return()},type:"bytes"})}o(YD,"ReadableStreamFrom");function HD(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}o(HD,"isFormDataLike");function VD(t,e){return"addEventListener"in t?(t.addEventListener("abort",e,{once:!0}),()=>t.removeEventListener("abort",e)):(t.addListener("abort",e),()=>t.removeListener("abort",e))}o(VD,"addAbortListener");var JD=typeof String.prototype.toWellFormed=="function",qD=typeof String.prototype.isWellFormed=="function";function BC(t){return JD?`${t}`.toWellFormed():ED.toUSVString(t)}o(BC,"toUSVString");function jD(t){return qD?`${t}`.isWellFormed():BC(t)===`${t}`}o(jD,"isUSVString");function wC(t){switch(t){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 t>=33&&t<=126}}o(wC,"isTokenCharCode");function WD(t){if(t.length===0)return!1;for(let e=0;e<t.length;++e)if(!wC(t.charCodeAt(e)))return!1;return!0}o(WD,"isValidHTTPToken");var zD=/[^\t\x20-\x7e\x80-\xff]/;function ZD(t){return!zD.test(t)}o(ZD,"isValidHeaderValue");function KD(t){if(t==null||t==="")return{start:0,end:null,size:null};let e=t?t.match(/^bytes (\d+)-(\d+)\/(\d+)?$/):null;return e?{start:parseInt(e[1]),end:e[2]?parseInt(e[2]):null,size:e[3]?parseInt(e[3]):null}:null}o(KD,"parseRangeHeader");function XD(t,e,n){return(t[Bd]??=[]).push([e,n]),t.on(e,n),t}o(XD,"addListener");function eT(t){for(let[e,n]of t[Bd]??[])t.removeListener(e,n);t[Bd]=null}o(eT,"removeAllListeners");function tT(t,e,n){try{e.onError(n),To(e.aborted)}catch(r){t.emit("error",r)}}o(tT,"errorRequest");var bC=Object.create(null);bC.enumerable=!0;var wd={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},RC={...wd,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(wd,null);Object.setPrototypeOf(RC,null);kC.exports={kEnumerableProperty:bC,nop:bD,isDisturbed:PD,isErrored:OD,isReadable:GD,toUSVString:BC,isUSVString:jD,isBlobLike:pC,parseOrigin:kD,parseURL:mC,getServerName:vD,isStream:TA,isIterable:EC,isAsyncIterable:DD,isDestroyed:IC,headerNameToString:yC,bufferToLowerCasedHeaderName:UD,addListener:XD,removeAllListeners:eT,errorRequest:tT,parseRawHeaders:LD,parseHeaders:MD,parseKeepAliveTimeout:FD,destroy:TD,bodyLength:CC,deepClone:xD,ReadableStreamFrom:YD,isBuffer:QC,validateHandler:_D,getSocketInfo:$D,isFormDataLike:HD,buildURL:RD,addAbortListener:VD,isValidHTTPToken:WD,isValidHeaderValue:ZD,isTokenCharCode:wC,parseRangeHeader:KD,normalizedMethodRecordsBase:wd,normalizedMethodRecords:RC,isValidPort:fC,isHttpOrHttpsPrefixed:vA,nodeMajor:QD,nodeMinor:BD,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"],wrapRequestBody:wD}});var ni=T((eK,vC)=>{"use strict";var me=require("node:diagnostics_channel"),Rd=require("node:util"),NA=Rd.debuglog("undici"),bd=Rd.debuglog("fetch"),es=Rd.debuglog("websocket"),SC=!1,nT={beforeConnect:me.channel("undici:client:beforeConnect"),connected:me.channel("undici:client:connected"),connectError:me.channel("undici:client:connectError"),sendHeaders:me.channel("undici:client:sendHeaders"),create:me.channel("undici:request:create"),bodySent:me.channel("undici:request:bodySent"),headers:me.channel("undici:request:headers"),trailers:me.channel("undici:request:trailers"),error:me.channel("undici:request:error"),open:me.channel("undici:websocket:open"),close:me.channel("undici:websocket:close"),socketError:me.channel("undici:websocket:socket_error"),ping:me.channel("undici:websocket:ping"),pong:me.channel("undici:websocket:pong")};if(NA.enabled||bd.enabled){let t=bd.enabled?bd:NA;me.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i}}=e;t("connecting to %s using %s%s",`${i}${s?`:${s}`:""}`,r,n)}),me.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i}}=e;t("connected to %s using %s%s",`${i}${s?`:${s}`:""}`,r,n)}),me.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i},error:a}=e;t("connection to %s using %s%s errored - %s",`${i}${s?`:${s}`:""}`,r,n,a.message)}),me.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:n,path:r,origin:s}}=e;t("sending request to %s %s/%s",n,s,r)}),me.channel("undici:request:headers").subscribe(e=>{let{request:{method:n,path:r,origin:s},response:{statusCode:i}}=e;t("received response to %s %s/%s - HTTP %d",n,s,r,i)}),me.channel("undici:request:trailers").subscribe(e=>{let{request:{method:n,path:r,origin:s}}=e;t("trailers received from %s %s/%s",n,s,r)}),me.channel("undici:request:error").subscribe(e=>{let{request:{method:n,path:r,origin:s},error:i}=e;t("request to %s %s/%s errored - %s",n,s,r,i.message)}),SC=!0}if(es.enabled){if(!SC){let t=NA.enabled?NA:es;me.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i}}=e;t("connecting to %s%s using %s%s",i,s?`:${s}`:"",r,n)}),me.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i}}=e;t("connected to %s%s using %s%s",i,s?`:${s}`:"",r,n)}),me.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:n,protocol:r,port:s,host:i},error:a}=e;t("connection to %s%s using %s%s errored - %s",i,s?`:${s}`:"",r,n,a.message)}),me.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:n,path:r,origin:s}}=e;t("sending request to %s %s/%s",n,s,r)})}me.channel("undici:websocket:open").subscribe(t=>{let{address:{address:e,port:n}}=t;es("connection opened %s%s",e,n?`:${n}`:"")}),me.channel("undici:websocket:close").subscribe(t=>{let{websocket:e,code:n,reason:r}=t;es("closed connection to %s - %s %s",e.url,n,r)}),me.channel("undici:websocket:socket_error").subscribe(t=>{es("connection errored - %s",t.message)}),me.channel("undici:websocket:ping").subscribe(t=>{es("ping received")}),me.channel("undici:websocket:pong").subscribe(t=>{es("pong received")})}vC.exports={channels:nT}});var NC=T((tK,TC)=>{"use strict";var{InvalidArgumentError:Qe,NotSupportedError:rT}=pe(),yt=require("node:assert"),{isValidHTTPToken:DC,isValidHeaderValue:No,isStream:sT,destroy:iT,isBuffer:oT,isFormDataLike:aT,isIterable:AT,isBlobLike:cT,buildURL:uT,validateHandler:lT,getServerName:dT,normalizedMethodRecords:gT}=ue(),{channels:qe}=ni(),{headerNameLowerCasedRecord:xC}=kA(),hT=/[^\u0021-\u00ff]/,_t=Symbol("handler"),kd=class{static{o(this,"Request")}constructor(e,{path:n,method:r,body:s,headers:i,query:a,idempotent:c,blocking:l,upgrade:d,headersTimeout:g,bodyTimeout:h,reset:f,throwOnError:m,expectContinue:C,servername:y},v){if(typeof n!="string")throw new Qe("path must be a string");if(n[0]!=="/"&&!(n.startsWith("http://")||n.startsWith("https://"))&&r!=="CONNECT")throw new Qe("path must be an absolute URL or start with a slash");if(hT.test(n))throw new Qe("invalid request path");if(typeof r!="string")throw new Qe("method must be a string");if(gT[r]===void 0&&!DC(r))throw new Qe("invalid request method");if(d&&typeof d!="string")throw new Qe("upgrade must be a string");if(d&&!No(d))throw new Qe("invalid upgrade header");if(g!=null&&(!Number.isFinite(g)||g<0))throw new Qe("invalid headersTimeout");if(h!=null&&(!Number.isFinite(h)||h<0))throw new Qe("invalid bodyTimeout");if(f!=null&&typeof f!="boolean")throw new Qe("invalid reset");if(C!=null&&typeof C!="boolean")throw new Qe("invalid expectContinue");if(this.headersTimeout=g,this.bodyTimeout=h,this.throwOnError=m===!0,this.method=r,this.abort=null,s==null)this.body=null;else if(sT(s)){this.body=s;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=o(function(){iT(this)},"autoDestroy"),this.body.on("end",this.endHandler)),this.errorHandler=x=>{this.abort?this.abort(x):this.error=x},this.body.on("error",this.errorHandler)}else if(oT(s))this.body=s.byteLength?s:null;else if(ArrayBuffer.isView(s))this.body=s.buffer.byteLength?Buffer.from(s.buffer,s.byteOffset,s.byteLength):null;else if(s instanceof ArrayBuffer)this.body=s.byteLength?Buffer.from(s):null;else if(typeof s=="string")this.body=s.length?Buffer.from(s):null;else if(aT(s)||AT(s)||cT(s))this.body=s;else throw new Qe("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=d||null,this.path=a?uT(n,a):n,this.origin=e,this.idempotent=c??(r==="HEAD"||r==="GET"),this.blocking=l??!1,this.reset=f??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=C??!1,Array.isArray(i)){if(i.length%2!==0)throw new Qe("headers array must be even");for(let Q=0;Q<i.length;Q+=2)FA(this,i[Q],i[Q+1])}else if(i&&typeof i=="object")if(i[Symbol.iterator])for(let Q of i){if(!Array.isArray(Q)||Q.length!==2)throw new Qe("headers must be in key-value pair format");FA(this,Q[0],Q[1])}else{let Q=Object.keys(i);for(let x=0;x<Q.length;++x)FA(this,Q[x],i[Q[x]])}else if(i!=null)throw new Qe("headers must be an object or an array");lT(v,r,d),this.servername=y||dT(this.host),this[_t]=v,qe.create.hasSubscribers&&qe.create.publish({request:this})}onBodySent(e){if(this[_t].onBodySent)try{return this[_t].onBodySent(e)}catch(n){this.abort(n)}}onRequestSent(){if(qe.bodySent.hasSubscribers&&qe.bodySent.publish({request:this}),this[_t].onRequestSent)try{return this[_t].onRequestSent()}catch(e){this.abort(e)}}onConnect(e){if(yt(!this.aborted),yt(!this.completed),this.error)e(this.error);else return this.abort=e,this[_t].onConnect(e)}onResponseStarted(){return this[_t].onResponseStarted?.()}onHeaders(e,n,r,s){yt(!this.aborted),yt(!this.completed),qe.headers.hasSubscribers&&qe.headers.publish({request:this,response:{statusCode:e,headers:n,statusText:s}});try{return this[_t].onHeaders(e,n,r,s)}catch(i){this.abort(i)}}onData(e){yt(!this.aborted),yt(!this.completed);try{return this[_t].onData(e)}catch(n){return this.abort(n),!1}}onUpgrade(e,n,r,s=""){this.onFinally(),yt(!this.aborted),yt(!this.completed),e!==null&&this.#e(e,n,s);let i=this[_t].onUpgrade(e,n,r);return this.aborted||(this.completed=!0,e!==null&&this.#t()),i}onUpgradeResponse(e,n,r,s=""){yt(!this.aborted),yt(this.completed),qe.headers.hasSubscribers&&this.#e(e,r(n),s),this.#t()}onUpgradeError(e){yt(!this.aborted),yt(this.completed),qe.error.hasSubscribers&&qe.error.publish({request:this,error:e})}#e(e,n,r){qe.headers.hasSubscribers&&qe.headers.publish({request:this,response:{statusCode:e,headers:n,statusText:r}})}#t(){qe.trailers.hasSubscribers&&qe.trailers.publish({request:this,trailers:[]})}onComplete(e){this.onFinally(),yt(!this.aborted),this.completed=!0,qe.trailers.hasSubscribers&&qe.trailers.publish({request:this,trailers:e});try{return this[_t].onComplete(e)}catch(n){this.onError(n)}}onError(e){if(this.onFinally(),qe.error.hasSubscribers&&qe.error.publish({request:this,error:e}),!this.aborted)return this.aborted=!0,this[_t].onError(e)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(e,n){return FA(this,e,n),this}};function FA(t,e,n){if(n&&typeof n=="object"&&!Array.isArray(n))throw new Qe(`invalid ${e} header`);if(n===void 0)return;let r=xC[e];if(r===void 0&&(r=e.toLowerCase(),xC[r]===void 0&&!DC(r)))throw new Qe("invalid header key");if(Array.isArray(n)){let s=[];for(let i=0;i<n.length;i++)if(typeof n[i]=="string"){if(!No(n[i]))throw new Qe(`invalid ${e} header`);s.push(n[i])}else if(n[i]===null)s.push("");else{if(typeof n[i]=="object")throw new Qe(`invalid ${e} header`);{let a=`${n[i]}`;if(!No(a))throw new Qe(`invalid ${e} header`);s.push(a)}}n=s}else if(typeof n=="string"){if(!No(n))throw new Qe(`invalid ${e} header`)}else if(n===null)n="";else if(n=`${n}`,!No(n))throw new Qe(`invalid ${e} header`);if(r==="host"){if(t.host!==null)throw new Qe("duplicate host header");if(typeof n!="string")throw new Qe("invalid host header");t.host=n}else if(r==="content-length"){if(t.contentLength!==null)throw new Qe("duplicate content-length header");if(t.contentLength=parseInt(n,10),!Number.isFinite(t.contentLength))throw new Qe("invalid content-length header")}else if(t.contentType===null&&r==="content-type")t.contentType=n,t.headers.push(e,n);else{if(r==="transfer-encoding"||r==="keep-alive"||r==="upgrade")throw new Qe(`invalid ${r} header`);if(r==="connection"){let s=typeof n=="string"?n.toLowerCase():null;if(s!=="close"&&s!=="keep-alive")throw new Qe("invalid connection header");s==="close"&&(t.reset=!0)}else{if(r==="expect")throw new rT("expect header not supported");t.headers.push(e,n)}}}o(FA,"processHeader");TC.exports=kd});var Fo=T((rK,FC)=>{"use strict";var pT=require("node:events"),UA=class extends pT{static{o(this,"Dispatcher")}dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...e){let n=Array.isArray(e[0])?e[0]:e,r=this.dispatch.bind(this);for(let s of n)if(s!=null){if(typeof s!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof s}`);if(r=s(r),r==null||typeof r!="function"||r.length!==2)throw new TypeError("invalid interceptor")}return new Sd(this,r)}},Sd=class extends UA{static{o(this,"ComposedDispatcher")}#e=null;#t=null;constructor(e,n){super(),this.#e=e,this.#t=n}dispatch(...e){this.#t(...e)}close(...e){return this.#e.close(...e)}destroy(...e){return this.#e.destroy(...e)}};FC.exports=UA});var oi=T((iK,UC)=>{"use strict";var fT=Fo(),{ClientDestroyedError:vd,ClientClosedError:mT,InvalidArgumentError:ri}=pe(),{kDestroy:ET,kClose:CT,kClosed:Uo,kDestroyed:si,kDispatch:xd,kInterceptors:ts}=Se(),Fn=Symbol("onDestroyed"),ii=Symbol("onClosed"),MA=Symbol("Intercepted Dispatch"),Dd=Symbol("webSocketOptions"),Td=class extends fT{static{o(this,"DispatcherBase")}constructor(e){super(),this[si]=!1,this[Fn]=null,this[Uo]=!1,this[ii]=[],this[Dd]=e?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[Dd].maxFragments??131072,maxPayloadSize:this[Dd].maxPayloadSize??128*1024*1024}}get destroyed(){return this[si]}get closed(){return this[Uo]}get interceptors(){return this[ts]}set interceptors(e){if(e){for(let n=e.length-1;n>=0;n--)if(typeof this[ts][n]!="function")throw new ri("interceptor must be an function")}this[ts]=e}close(e){if(e===void 0)return new Promise((r,s)=>{this.close((i,a)=>i?s(i):r(a))});if(typeof e!="function")throw new ri("invalid callback");if(this[si]){queueMicrotask(()=>e(new vd,null));return}if(this[Uo]){this[ii]?this[ii].push(e):queueMicrotask(()=>e(null,null));return}this[Uo]=!0,this[ii].push(e);let n=o(()=>{let r=this[ii];this[ii]=null;for(let s=0;s<r.length;s++)r[s](null,null)},"onClosed");this[CT]().then(()=>this.destroy()).then(()=>{queueMicrotask(n)})}destroy(e,n){if(typeof e=="function"&&(n=e,e=null),n===void 0)return new Promise((s,i)=>{this.destroy(e,(a,c)=>a?i(a):s(c))});if(typeof n!="function")throw new ri("invalid callback");if(this[si]){this[Fn]?this[Fn].push(n):queueMicrotask(()=>n(null,null));return}e||(e=new vd),this[si]=!0,this[Fn]=this[Fn]||[],this[Fn].push(n);let r=o(()=>{let s=this[Fn];this[Fn]=null;for(let i=0;i<s.length;i++)s[i](null,null)},"onDestroyed");this[ET](e).then(()=>{queueMicrotask(r)})}[MA](e,n){if(!this[ts]||this[ts].length===0)return this[MA]=this[xd],this[xd](e,n);let r=this[xd].bind(this);for(let s=this[ts].length-1;s>=0;s--)r=this[ts][s](r);return this[MA]=r,r(e,n)}dispatch(e,n){if(!n||typeof n!="object")throw new ri("handler must be an object");try{if(!e||typeof e!="object")throw new ri("opts must be an object.");if(this[si]||this[Fn])throw new vd;if(this[Uo])throw new mT;return this[MA](e,n)}catch(r){if(typeof n.onError!="function")throw new ri("invalid onError method");return n.onError(r),!1}}};UC.exports=Td});var Pd=T((aK,PC)=>{"use strict";var ai=0,Nd=1e3,Fd=(Nd>>1)-1,Un,Ud=Symbol("kFastTimer"),Mn=[],Md=-2,Ld=-1,LC=0,MC=1;function _d(){ai+=Fd;let t=0,e=Mn.length;for(;t<e;){let n=Mn[t];n._state===LC?(n._idleStart=ai-Fd,n._state=MC):n._state===MC&&ai>=n._idleStart+n._idleTimeout&&(n._state=Ld,n._idleStart=-1,n._onTimeout(n._timerArg)),n._state===Ld?(n._state=Md,--e!==0&&(Mn[t]=Mn[e])):++t}Mn.length=e,Mn.length!==0&&_C()}o(_d,"onTick");function _C(){Un?Un.refresh():(clearTimeout(Un),Un=setTimeout(_d,Fd),Un.unref&&Un.unref())}o(_C,"refreshTimeout");var LA=class{static{o(this,"FastTimer")}[Ud]=!0;_state=Md;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,n,r){this._onTimeout=e,this._idleTimeout=n,this._timerArg=r,this.refresh()}refresh(){this._state===Md&&Mn.push(this),(!Un||Mn.length===1)&&_C(),this._state=LC}clear(){this._state=Ld,this._idleStart=-1}};PC.exports={setTimeout(t,e,n){return e<=Nd?setTimeout(t,e,n):new LA(t,e,n)},clearTimeout(t){t[Ud]?t.clear():clearTimeout(t)},setFastTimeout(t,e,n){return new LA(t,e,n)},clearFastTimeout(t){t.clear()},now(){return ai},tick(t=0){ai+=t-Nd+1,_d(),_d()},reset(){ai=0,Mn.length=0,clearTimeout(Un),Un=null},kFastTimer:Ud}});var Mo=T((lK,HC)=>{"use strict";var IT=require("node:net"),OC=require("node:assert"),YC=ue(),{InvalidArgumentError:yT,ConnectTimeoutError:QT}=pe(),_A=Pd();function GC(){}o(GC,"noop");var Od,Gd;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Gd=class{static{o(this,"WeakSessionCache")}constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(n=>{if(this._sessionCache.size<this._maxCachedSessions)return;let r=this._sessionCache.get(n);r!==void 0&&r.deref()===void 0&&this._sessionCache.delete(n)})}get(e){let n=this._sessionCache.get(e);return n?n.deref():null}set(e,n){this._maxCachedSessions!==0&&(this._sessionCache.set(e,new WeakRef(n)),this._sessionRegistry.register(n,e))}}:Gd=class{static{o(this,"SimpleSessionCache")}constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map}get(e){return this._sessionCache.get(e)}set(e,n){if(this._maxCachedSessions!==0){if(this._sessionCache.size>=this._maxCachedSessions){let{value:r}=this._sessionCache.keys().next();this._sessionCache.delete(r)}this._sessionCache.set(e,n)}}};function BT({allowH2:t,maxCachedSessions:e,socketPath:n,timeout:r,session:s,...i}){if(e!=null&&(!Number.isInteger(e)||e<0))throw new yT("maxCachedSessions must be a positive integer or zero");let a={path:n,...i},c=new Gd(e??100);return r=r??1e4,t=t??!1,o(function({hostname:d,host:g,protocol:h,port:f,servername:m,localAddress:C,httpSocket:y},v){let Q;if(h==="https:"){Od||(Od=require("node:tls")),m=m||a.servername||YC.getServerName(g)||null;let G=m||d;OC(G);let P=s||c.get(G)||null;f=f||443,Q=Od.connect({highWaterMark:16384,...a,servername:m,session:P,localAddress:C,ALPNProtocols:t?["http/1.1","h2"]:["http/1.1"],socket:y,port:f,host:d}),Q.on("session",function(ae){c.set(G,ae)})}else OC(!y,"httpSocket can only be sent on TLS update"),f=f||80,Q=IT.connect({highWaterMark:64*1024,...a,localAddress:C,port:f,host:d});if(a.keepAlive==null||a.keepAlive){let G=a.keepAliveInitialDelay===void 0?6e4:a.keepAliveInitialDelay;Q.setKeepAlive(!0,G)}let x=wT(new WeakRef(Q),{timeout:r,hostname:d,port:f});return Q.setNoDelay(!0).once(h==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(x),v){let G=v;v=null,G(null,this)}}).on("error",function(G){if(queueMicrotask(x),v){let P=v;v=null,P(G)}}),Q},"connect")}o(BT,"buildConnector");var wT=process.platform==="win32"?(t,e)=>{if(!e.timeout)return GC;let n=null,r=null,s=_A.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>$C(t.deref(),e))})},e.timeout);return()=>{_A.clearFastTimeout(s),clearImmediate(n),clearImmediate(r)}}:(t,e)=>{if(!e.timeout)return GC;let n=null,r=_A.setFastTimeout(()=>{n=setImmediate(()=>{$C(t.deref(),e)})},e.timeout);return()=>{_A.clearFastTimeout(r),clearImmediate(n)}};function $C(t,e){if(t==null)return;let n="Connect Timeout Error";Array.isArray(t.autoSelectFamilyAttemptedAddresses)?n+=` (attempted addresses: ${t.autoSelectFamilyAttemptedAddresses.join(", ")},`:n+=` (attempted address: ${e.hostname}:${e.port},`,n+=` timeout: ${e.timeout}ms)`,YC.destroy(t,new QT(n))}o($C,"onConnectTimeout");HC.exports=BT});var VC=T(PA=>{"use strict";Object.defineProperty(PA,"__esModule",{value:!0});PA.enumToMap=void 0;function bT(t){let e={};return Object.keys(t).forEach(n=>{let r=t[n];typeof r=="number"&&(e[n]=r)}),e}o(bT,"enumToMap");PA.enumToMap=bT});var JC=T(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.SPECIAL_HEADERS=L.HEADER_STATE=L.MINOR=L.MAJOR=L.CONNECTION_TOKEN_CHARS=L.HEADER_CHARS=L.TOKEN=L.STRICT_TOKEN=L.HEX=L.URL_CHAR=L.STRICT_URL_CHAR=L.USERINFO_CHARS=L.MARK=L.ALPHANUM=L.NUM=L.HEX_MAP=L.NUM_MAP=L.ALPHA=L.FINISH=L.H_METHOD_MAP=L.METHOD_MAP=L.METHODS_RTSP=L.METHODS_ICE=L.METHODS_HTTP=L.METHODS=L.LENIENT_FLAGS=L.FLAGS=L.TYPE=L.ERROR=void 0;var RT=VC(),kT;(function(t){t[t.OK=0]="OK",t[t.INTERNAL=1]="INTERNAL",t[t.STRICT=2]="STRICT",t[t.LF_EXPECTED=3]="LF_EXPECTED",t[t.UNEXPECTED_CONTENT_LENGTH=4]="UNEXPECTED_CONTENT_LENGTH",t[t.CLOSED_CONNECTION=5]="CLOSED_CONNECTION",t[t.INVALID_METHOD=6]="INVALID_METHOD",t[t.INVALID_URL=7]="INVALID_URL",t[t.INVALID_CONSTANT=8]="INVALID_CONSTANT",t[t.INVALID_VERSION=9]="INVALID_VERSION",t[t.INVALID_HEADER_TOKEN=10]="INVALID_HEADER_TOKEN",t[t.INVALID_CONTENT_LENGTH=11]="INVALID_CONTENT_LENGTH",t[t.INVALID_CHUNK_SIZE=12]="INVALID_CHUNK_SIZE",t[t.INVALID_STATUS=13]="INVALID_STATUS",t[t.INVALID_EOF_STATE=14]="INVALID_EOF_STATE",t[t.INVALID_TRANSFER_ENCODING=15]="INVALID_TRANSFER_ENCODING",t[t.CB_MESSAGE_BEGIN=16]="CB_MESSAGE_BEGIN",t[t.CB_HEADERS_COMPLETE=17]="CB_HEADERS_COMPLETE",t[t.CB_MESSAGE_COMPLETE=18]="CB_MESSAGE_COMPLETE",t[t.CB_CHUNK_HEADER=19]="CB_CHUNK_HEADER",t[t.CB_CHUNK_COMPLETE=20]="CB_CHUNK_COMPLETE",t[t.PAUSED=21]="PAUSED",t[t.PAUSED_UPGRADE=22]="PAUSED_UPGRADE",t[t.PAUSED_H2_UPGRADE=23]="PAUSED_H2_UPGRADE",t[t.USER=24]="USER"})(kT=L.ERROR||(L.ERROR={}));var ST;(function(t){t[t.BOTH=0]="BOTH",t[t.REQUEST=1]="REQUEST",t[t.RESPONSE=2]="RESPONSE"})(ST=L.TYPE||(L.TYPE={}));var vT;(function(t){t[t.CONNECTION_KEEP_ALIVE=1]="CONNECTION_KEEP_ALIVE",t[t.CONNECTION_CLOSE=2]="CONNECTION_CLOSE",t[t.CONNECTION_UPGRADE=4]="CONNECTION_UPGRADE",t[t.CHUNKED=8]="CHUNKED",t[t.UPGRADE=16]="UPGRADE",t[t.CONTENT_LENGTH=32]="CONTENT_LENGTH",t[t.SKIPBODY=64]="SKIPBODY",t[t.TRAILING=128]="TRAILING",t[t.TRANSFER_ENCODING=512]="TRANSFER_ENCODING"})(vT=L.FLAGS||(L.FLAGS={}));var xT;(function(t){t[t.HEADERS=1]="HEADERS",t[t.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",t[t.KEEP_ALIVE=4]="KEEP_ALIVE"})(xT=L.LENIENT_FLAGS||(L.LENIENT_FLAGS={}));var W;(function(t){t[t.DELETE=0]="DELETE",t[t.GET=1]="GET",t[t.HEAD=2]="HEAD",t[t.POST=3]="POST",t[t.PUT=4]="PUT",t[t.CONNECT=5]="CONNECT",t[t.OPTIONS=6]="OPTIONS",t[t.TRACE=7]="TRACE",t[t.COPY=8]="COPY",t[t.LOCK=9]="LOCK",t[t.MKCOL=10]="MKCOL",t[t.MOVE=11]="MOVE",t[t.PROPFIND=12]="PROPFIND",t[t.PROPPATCH=13]="PROPPATCH",t[t.SEARCH=14]="SEARCH",t[t.UNLOCK=15]="UNLOCK",t[t.BIND=16]="BIND",t[t.REBIND=17]="REBIND",t[t.UNBIND=18]="UNBIND",t[t.ACL=19]="ACL",t[t.REPORT=20]="REPORT",t[t.MKACTIVITY=21]="MKACTIVITY",t[t.CHECKOUT=22]="CHECKOUT",t[t.MERGE=23]="MERGE",t[t["M-SEARCH"]=24]="M-SEARCH",t[t.NOTIFY=25]="NOTIFY",t[t.SUBSCRIBE=26]="SUBSCRIBE",t[t.UNSUBSCRIBE=27]="UNSUBSCRIBE",t[t.PATCH=28]="PATCH",t[t.PURGE=29]="PURGE",t[t.MKCALENDAR=30]="MKCALENDAR",t[t.LINK=31]="LINK",t[t.UNLINK=32]="UNLINK",t[t.SOURCE=33]="SOURCE",t[t.PRI=34]="PRI",t[t.DESCRIBE=35]="DESCRIBE",t[t.ANNOUNCE=36]="ANNOUNCE",t[t.SETUP=37]="SETUP",t[t.PLAY=38]="PLAY",t[t.PAUSE=39]="PAUSE",t[t.TEARDOWN=40]="TEARDOWN",t[t.GET_PARAMETER=41]="GET_PARAMETER",t[t.SET_PARAMETER=42]="SET_PARAMETER",t[t.REDIRECT=43]="REDIRECT",t[t.RECORD=44]="RECORD",t[t.FLUSH=45]="FLUSH"})(W=L.METHODS||(L.METHODS={}));L.METHODS_HTTP=[W.DELETE,W.GET,W.HEAD,W.POST,W.PUT,W.CONNECT,W.OPTIONS,W.TRACE,W.COPY,W.LOCK,W.MKCOL,W.MOVE,W.PROPFIND,W.PROPPATCH,W.SEARCH,W.UNLOCK,W.BIND,W.REBIND,W.UNBIND,W.ACL,W.REPORT,W.MKACTIVITY,W.CHECKOUT,W.MERGE,W["M-SEARCH"],W.NOTIFY,W.SUBSCRIBE,W.UNSUBSCRIBE,W.PATCH,W.PURGE,W.MKCALENDAR,W.LINK,W.UNLINK,W.PRI,W.SOURCE];L.METHODS_ICE=[W.SOURCE];L.METHODS_RTSP=[W.OPTIONS,W.DESCRIBE,W.ANNOUNCE,W.SETUP,W.PLAY,W.PAUSE,W.TEARDOWN,W.GET_PARAMETER,W.SET_PARAMETER,W.REDIRECT,W.RECORD,W.FLUSH,W.GET,W.POST];L.METHOD_MAP=RT.enumToMap(W);L.H_METHOD_MAP={};Object.keys(L.METHOD_MAP).forEach(t=>{/^H/.test(t)&&(L.H_METHOD_MAP[t]=L.METHOD_MAP[t])});var DT;(function(t){t[t.SAFE=0]="SAFE",t[t.SAFE_WITH_CB=1]="SAFE_WITH_CB",t[t.UNSAFE=2]="UNSAFE"})(DT=L.FINISH||(L.FINISH={}));L.ALPHA=[];for(let t=65;t<=90;t++)L.ALPHA.push(String.fromCharCode(t)),L.ALPHA.push(String.fromCharCode(t+32));L.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};L.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};L.NUM=["0","1","2","3","4","5","6","7","8","9"];L.ALPHANUM=L.ALPHA.concat(L.NUM);L.MARK=["-","_",".","!","~","*","'","(",")"];L.USERINFO_CHARS=L.ALPHANUM.concat(L.MARK).concat(["%",";",":","&","=","+","$",","]);L.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(L.ALPHANUM);L.URL_CHAR=L.STRICT_URL_CHAR.concat([" ","\f"]);for(let t=128;t<=255;t++)L.URL_CHAR.push(t);L.HEX=L.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);L.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(L.ALPHANUM);L.TOKEN=L.STRICT_TOKEN.concat([" "]);L.HEADER_CHARS=[" "];for(let t=32;t<=255;t++)t!==127&&L.HEADER_CHARS.push(t);L.CONNECTION_TOKEN_CHARS=L.HEADER_CHARS.filter(t=>t!==44);L.MAJOR=L.NUM_MAP;L.MINOR=L.MAJOR;var Ai;(function(t){t[t.GENERAL=0]="GENERAL",t[t.CONNECTION=1]="CONNECTION",t[t.CONTENT_LENGTH=2]="CONTENT_LENGTH",t[t.TRANSFER_ENCODING=3]="TRANSFER_ENCODING",t[t.UPGRADE=4]="UPGRADE",t[t.CONNECTION_KEEP_ALIVE=5]="CONNECTION_KEEP_ALIVE",t[t.CONNECTION_CLOSE=6]="CONNECTION_CLOSE",t[t.CONNECTION_UPGRADE=7]="CONNECTION_UPGRADE",t[t.TRANSFER_ENCODING_CHUNKED=8]="TRANSFER_ENCODING_CHUNKED"})(Ai=L.HEADER_STATE||(L.HEADER_STATE={}));L.SPECIAL_HEADERS={connection:Ai.CONNECTION,"content-length":Ai.CONTENT_LENGTH,"proxy-connection":Ai.CONNECTION,"transfer-encoding":Ai.TRANSFER_ENCODING,upgrade:Ai.UPGRADE}});var $d=T((fK,qC)=>{"use strict";var{Buffer:TT}=require("node:buffer");qC.exports=TT.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVuaWVudF9oZWFkZXJzACEhbGxodHRwX3NldF9sZW5pZW50X2NodW5rZWRfbGVuZ3RoACIdbGxodHRwX3NldF9sZW5pZW50X2tlZXBfYWxpdmUAIyRsbGh0dHBfc2V0X2xlbmllbnRfdHJhbnNmZXJfZW5jb2RpbmcAJBhsbGh0dHBfbWVzc2FnZV9uZWVkc19lb2YALgkXAQBBAQsRAQIDBAUKBgcrLSwqKSglJyYK07MCLBYAQYjQACgCAARAAAtBiNAAQQE2AgALFAAgABAwIAAgAjYCOCAAIAE6ACgLFAAgACAALwEyIAAtAC4gABAvEAALHgEBf0HAABAyIgEQMCABQYAINgI4IAEgADoAKCABC48MAQd/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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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var WC=T((mK,jC)=>{"use strict";var{Buffer:NT}=require("node:buffer");jC.exports=NT.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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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxBACEDDKIBCyACQeQANgIcIAIgATYCFCACQeMXNgIQIAJBFTYCDEEAIQMMoQELIAJBADYCACAGQQFqIQEgAi0AKSIAQSNrQQtJDQQCQCAAQQZLDQBBASAAdEHKAHFFDQAMBQtBACEDIAJBADYCHCACIAE2AhQgAkH3CTYCECACQQg2AgwMoAELIAJBADYCACAGQQFqIQEgAi0AKUEhRg0DIAJBADYCHCACIAE2AhQgAkGbCjYCECACQQg2AgxBACEDDJ8BCyACQQA2AgALQQAhAyACQQA2AhwgAiABNgIUIAJBkDM2AhAgAkEINgIMDJ0BCyACQQA2AgAgBkEBaiEBIAItAClBI0kNACACQQA2AhwgAiABNgIUIAJB0wk2AhAgAkEINgIMQQAhAwycAQtB0QAhAwyCAQsgAS0AAEEwayIAQf8BcUEKSQRAIAIgADoAKiABQQFqIQFBzwAhAwyCAQsgAigCBCEAIAJBADYCBCACIAAgARAoIgBFDYYBIAJB3gA2AhwgAiABNgIUIAIgADYCDEEAIQMMmgELIAIoAgQhACACQQA2AgQgAiAAIAEQKCIARQ2GASACQdwANgIcIAIgATYCFCACIAA2AgxBACEDDJkBCyACKAIEIQAgAkEANgIEIAIgACAFECgiAEUEQCAFIQEMhwELIAJB2gA2AhwgAiAFNgIUIAIgADYCDAyYAQtBACEBQQEhAwsgAiADOgArIAVBAWohAwJAAkACQCACLQAtQRBxDQACQAJAAkAgAi0AKg4DAQACBAsgBkUNAwwCCyAADQEMAgsgAUUNAQsgAigCBCEAIAJBADYCBCACIAAgAxAoIgBFBEAgAyEBDAILIAJB2AA2AhwgAiADNgIUIAIgADYCDEEAIQMMmAELIAIoAgQhACACQQA2AgQgAiAAIAMQKCIARQRAIAMhAQyHAQsgAkHZADYCHCACIAM2AhQgAiAANgIMQQAhAwyXAQtBzAAhAwx9CyAAQRVHBEAgAkEANgIcIAIgATYCFCACQZQNNgIQIAJBITYCDEEAIQMMlgELIAJB1wA2AhwgAiABNgIUIAJByRc2AhAgAkEVNgIMQQAhAwyVAQtBACEDIAJBADYCHCACIAE2AhQgAkGAETYCECACQQk2AgwMlAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0AIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMkwELQckAIQMMeQsgAkEANgIcIAIgATYCFCACQcEoNgIQIAJBBzYCDCACQQA2AgBBACEDDJEBCyACKAIEIQBBACEDIAJBADYCBCACIAAgARAlIgBFDQAgAkHSADYCHCACIAE2AhQgAiAANgIMDJABC0HIACEDDHYLIAJBADYCACAFIQELIAJBgBI7ASogAUEBaiEBQQAhAAJAIAIoAjgiA0UNACADKAIwIgNFDQAgAiADEQAAIQALIAANAQtBxwAhAwxzCyAAQRVGBEAgAkHRADYCHCACIAE2AhQgAkHjFzYCECACQRU2AgxBACEDDIwBC0EAIQMgAkEANgIcIAIgATYCFCACQbkNNgIQIAJBGjYCDAyLAQtBACEDIAJBADYCHCACIAE2AhQgAkGgGTYCECACQR42AgwMigELIAEtAABBOkYEQCACKAIEIQBBACEDIAJBADYCBCACIAAgARApIgBFDQEgAkHDADYCHCACIAA2AgwgAiABQQFqNgIUDIoBC0EAIQMgAkEANgIcIAIgATYCFCACQbERNgIQIAJBCjYCDAyJAQsgAUEBaiEBQTshAwxvCyACQcMANgIcIAIgADYCDCACIAFBAWo2AhQMhwELQQAhAyACQQA2AhwgAiABNgIUIAJB8A42AhAgAkEcNgIMDIYBCyACIAIvATBBEHI7ATAMZgsCQCACLwEwIgBBCHFFDQAgAi0AKEEBRw0AIAItAC1BCHFFDQMLIAIgAEH3+wNxQYAEcjsBMAwECyABIARHBEACQANAIAEtAABBMGsiAEH/AXFBCk8EQEE1IQMMbgsgAikDICIKQpmz5syZs+bMGVYNASACIApCCn4iCjcDICAKIACtQv8BgyILQn+FVg0BIAIgCiALfDcDICAEIAFBAWoiAUcNAAtBOSEDDIUBCyACKAIEIQBBACEDIAJBADYCBCACIAAgAUEBaiIBECoiAA0MDHcLQTkhAwyDAQsgAi0AMEEgcQ0GQcUBIQMMaQtBACEDIAJBADYCBCACIAEgARAqIgBFDQQgAkE6NgIcIAIgADYCDCACIAFBAWo2AhQMgQELIAItAChBAUcNACACLQAtQQhxRQ0BC0E3IQMMZgsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQKiIABEAgAkE7NgIcIAIgADYCDCACIAFBAWo2AhQMfwsgAUEBaiEBDG4LIAJBCDoALAwECyABQQFqIQEMbQtBACEDIAJBADYCHCACIAE2AhQgAkHkEjYCECACQQQ2AgwMewsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQKiIARQ1sIAJBNzYCHCACIAE2AhQgAiAANgIMDHoLIAIgAi8BMEEgcjsBMAtBMCEDDF8LIAJBNjYCHCACIAE2AhQgAiAANgIMDHcLIABBLEcNASABQQFqIQBBASEBAkACQAJAAkACQCACLQAsQQVrDgQDAQIEAAsgACEBDAQLQQIhAQwBC0EEIQELIAJBAToALCACIAIvATAgAXI7ATAgACEBDAELIAIgAi8BMEEIcjsBMCAAIQELQTkhAwxcCyACQQA6ACwLQTQhAwxaCyABIARGBEBBLSEDDHMLAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0EtIQMMdAsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQKiIARQ0CIAJBLDYCHCACIAE2AhQgAiAANgIMDHMLIAIoAgQhAEEAIQMgAkEANgIEIAIgACABECoiAEUEQCABQQFqIQEMAgsgAkEsNgIcIAIgADYCDCACIAFBAWo2AhQMcgsgAS0AAEENRgRAIAIoAgQhAEEAIQMgAkEANgIEIAIgACABECoiAEUEQCABQQFqIQEMAgsgAkEsNgIcIAIgADYCDCACIAFBAWo2AhQMcgsgAi0ALUEBcQRAQcQBIQMMWQsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQKiIADQEMZQtBLyEDDFcLIAJBLjYCHCACIAE2AhQgAiAANgIMDG8LQQAhAyACQQA2AhwgAiABNgIUIAJB8BQ2AhAgAkEDNgIMDG4LQQEhAwJAAkACQAJAIAItACxBBWsOBAMBAgAECyACIAIvATBBCHI7ATAMAwtBAiEDDAELQQQhAwsgAkEBOgAsIAIgAi8BMCADcjsBMAtBKiEDDFMLQQAhAyACQQA2AhwgAiABNgIUIAJB4Q82AhAgAkEKNgIMDGsLQQEhAwJAAkACQAJAAkACQCACLQAsQQJrDgcFBAQDAQIABAsgAiACLwEwQQhyOwEwDAMLQQIhAwwBC0EEIQMLIAJBAToALCACIAIvATAgA3I7ATALQSshAwxSC0EAIQMgAkEANgIcIAIgATYCFCACQasSNgIQIAJBCzYCDAxqC0EAIQMgAkEANgIcIAIgATYCFCACQf0NNgIQIAJBHTYCDAxpCyABIARHBEADQCABLQAAQSBHDUggBCABQQFqIgFHDQALQSUhAwxpC0ElIQMMaAsgAi0ALUEBcQRAQcMBIQMMTwsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQKSIABEAgAkEmNgIcIAIgADYCDCACIAFBAWo2AhQMaAsgAUEBaiEBDFwLIAFBAWohASACLwEwIgBBgAFxBEBBACEAAkAgAigCOCIDRQ0AIAMoAlQiA0UNACACIAMRAAAhAAsgAEUNBiAAQRVHDR8gAkEFNgIcIAIgATYCFCACQfkXNgIQIAJBFTYCDEEAIQMMZwsCQCAAQaAEcUGgBEcNACACLQAtQQJxDQBBACEDIAJBADYCHCACIAE2AhQgAkGWEzYCECACQQQ2AgwMZwsgAgJ/IAIvATBBFHFBFEYEQEEBIAItAChBAUYNARogAi8BMkHlAEYMAQsgAi0AKUEFRgs6AC5BACEAAkAgAigCOCIDRQ0AIAMoAiQiA0UNACACIAMRAAAhAAsCQAJAAkACQAJAIAAOFgIBAAQEBAQEBAQEBAQEBAQEBAQEBAMECyACQQE6AC4LIAIgAi8BMEHAAHI7ATALQSchAwxPCyACQSM2AhwgAiABNgIUIAJBpRY2AhAgAkEVNgIMQQAhAwxnC0EAIQMgAkEANgIcIAIgATYCFCACQdULNgIQIAJBETYCDAxmC0EAIQACQCACKAI4IgNFDQAgAygCLCIDRQ0AIAIgAxEAACEACyAADQELQQ4hAwxLCyAAQRVGBEAgAkECNgIcIAIgATYCFCACQbAYNgIQIAJBFTYCDEEAIQMMZAtBACEDIAJBADYCHCACIAE2AhQgAkGnDjYCECACQRI2AgwMYwtBACEDIAJBADYCHCACIAE2AhQgAkGqHDYCECACQQ82AgwMYgsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEgCqdqIgEQKyIARQ0AIAJBBTYCHCACIAE2AhQgAiAANgIMDGELQQ8hAwxHC0EAIQMgAkEANgIcIAIgATYCFCACQc0TNgIQIAJBDDYCDAxfC0IBIQoLIAFBAWohAQJAIAIpAyAiC0L//////////w9YBEAgAiALQgSGIAqENwMgDAELQQAhAyACQQA2AhwgAiABNgIUIAJBrQk2AhAgAkEMNgIMDF4LQSQhAwxEC0EAIQMgAkEANgIcIAIgATYCFCACQc0TNgIQIAJBDDYCDAxcCyACKAIEIQBBACEDIAJBADYCBCACIAAgARAsIgBFBEAgAUEBaiEBDFILIAJBFzYCHCACIAA2AgwgAiABQQFqNgIUDFsLIAIoAgQhAEEAIQMgAkEANgIEAkAgAiAAIAEQLCIARQRAIAFBAWohAQwBCyACQRY2AhwgAiAANgIMIAIgAUEBajYCFAxbC0EfIQMMQQtBACEDIAJBADYCHCACIAE2AhQgAkGaDzYCECACQSI2AgwMWQsgAigCBCEAQQAhAyACQQA2AgQgAiAAIAEQLSIARQRAIAFBAWohAQxQCyACQRQ2AhwgAiAANgIMIAIgAUEBajYCFAxYCyACKAIEIQBBACEDIAJBADYCBAJAIAIgACABEC0iAEUEQCABQQFqIQEMAQsgAkETNgIcIAIgADYCDCACIAFBAWo2AhQMWAtBHiEDDD4LQQAhAyACQQA2AhwgAiABNgIUIAJBxgw2AhAgAkEjNgIMDFYLIAIoAgQhAEEAIQMgAkEANgIEIAIgACABEC0iAEUEQCABQQFqIQEMTgsgAkERNgIcIAIgADYCDCACIAFBAWo2AhQMVQsgAkEQNgIcIAIgATYCFCACIAA2AgwMVAtBACEDIAJBADYCHCACIAE2AhQgAkHGDDYCECACQSM2AgwMUwtBACEDIAJBADYCHCACIAE2AhQgAkHAFTYCECACQQI2AgwMUgsgAigCBCEAQQAhAyACQQA2AgQCQCACIAAgARAtIgBFBEAgAUEBaiEBDAELIAJBDjYCHCACIAA2AgwgAiABQQFqNgIUDFILQRshAww4C0EAIQMgAkEANgIcIAIgATYCFCACQcYMNgIQIAJBIzYCDAxQCyACKAIEIQBBACEDIAJBADYCBAJAIAIgACABECwiAEUEQCABQQFqIQEMAQsgAkENNgIcIAIgADYCDCACIAFBAWo2AhQMUAtBGiEDDDYLQQAhAyACQQA2AhwgAiABNgIUIAJBmg82AhAgAkEiNgIMDE4LIAIoAgQhAEEAIQMgAkEANgIEAkAgAiAAIAEQLCIARQRAIAFBAWohAQwBCyACQQw2AhwgAiAANgIMIAIgAUEBajYCFAxOC0EZIQMMNAtBACEDIAJBADYCHCACIAE2AhQgAkGaDzYCECACQSI2AgwMTAsgAEEVRwRAQQAhAyACQQA2AhwgAiABNgIUIAJBgww2AhAgAkETNgIMDEwLIAJBCjYCHCACIAE2AhQgAkHkFjYCECACQRU2AgxBACEDDEsLIAIoAgQhAEEAIQMgAkEANgIEIAIgACABIAqnaiIBECsiAARAIAJBBzYCHCACIAE2AhQgAiAANgIMDEsLQRMhAwwxCyAAQRVHBEBBACEDIAJBADYCHCACIAE2AhQgAkHaDTYCECACQRQ2AgwMSgsgAkEeNgIcIAIgATYCFCACQfkXNgIQIAJBFTYCDEEAIQMMSQtBACEAAkAgAigCOCIDRQ0AIAMoAiwiA0UNACACIAMRAAAhAAsgAEUNQSAAQRVGBEAgAkEDNgIcIAIgATYCFCACQbAYNgIQIAJBFTYCDEEAIQMMSQtBACEDIAJBADYCHCACIAE2AhQgAkGnDjYCECACQRI2AgwMSAtBACEDIAJBADYCHCACIAE2AhQgAkHaDTYCECACQRQ2AgwMRwtBACEDIAJBADYCHCACIAE2AhQgAkGnDjYCECACQRI2AgwMRgsgAkEAOgAvIAItAC1BBHFFDT8LIAJBADoALyACQQE6ADRBACEDDCsLQQAhAyACQQA2AhwgAkHkETYCECACQQc2AgwgAiABQQFqNgIUDEMLAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB3QEhAwxDCwJAAkAgAi0ANEEBRw0AQQAhAAJAIAIoAjgiA0UNACADKAJYIgNFDQAgAiADEQAAIQALIABFDQAgAEEVRw0BIAJB3AE2AhwgAiABNgIUIAJB1RY2AhAgAkEVNgIMQQAhAwxEC0HBASEDDCoLIAJBADYCHCACIAE2AhQgAkHpCzYCECACQR82AgxBACEDDEILAkACQCACLQAoQQFrDgIEAQALQcABIQMMKQtBuQEhAwwoCyACQQI6AC9BACEAAkAgAigCOCIDRQ0AIAMoAgAiA0UNACACIAMRAAAhAAsgAEUEQEHCASEDDCgLIABBFUcEQCACQQA2AhwgAiABNgIUIAJBpAw2AhAgAkEQNgIMQQAhAwxBCyACQdsBNgIcIAIgATYCFCACQfoWNgIQIAJBFTYCDEEAIQMMQAsgASAERgRAQdoBIQMMQAsgAS0AAEHIAEYNASACQQE6ACgLQawBIQMMJQtBvwEhAwwkCyABIARHBEAgAkEQNgIIIAIgATYCBEG+ASEDDCQLQdkBIQMMPAsgASAERgRAQdgBIQMMPAsgAS0AAEHIAEcNBCABQQFqIQFBvQEhAwwiCyABIARGBEBB1wEhAww7CwJAAkAgAS0AAEHFAGsOEAAFBQUFBQUFBQUFBQUFBQEFCyABQQFqIQFBuwEhAwwiCyABQQFqIQFBvAEhAwwhC0HWASEDIAEgBEYNOSACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGD0ABqLQAARw0DIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAw6CyACKAIEIQAgAkIANwMAIAIgACAGQQFqIgEQJyIARQRAQcYBIQMMIQsgAkHVATYCHCACIAE2AhQgAiAANgIMQQAhAww5C0HUASEDIAEgBEYNOCACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGB0ABqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAw5CyACQYEEOwEoIAIoAgQhACACQgA3AwAgAiAAIAZBAWoiARAnIgANAwwCCyACQQA2AgALQQAhAyACQQA2AhwgAiABNgIUIAJB2Bs2AhAgAkEINgIMDDYLQboBIQMMHAsgAkHTATYCHCACIAE2AhQgAiAANgIMQQAhAww0C0EAIQACQCACKAI4IgNFDQAgAygCOCIDRQ0AIAIgAxEAACEACyAARQ0AIABBFUYNASACQQA2AhwgAiABNgIUIAJBzA42AhAgAkEgNgIMQQAhAwwzC0HkACEDDBkLIAJB+AA2AhwgAiABNgIUIAJByhg2AhAgAkEVNgIMQQAhAwwxC0HSASEDIAQgASIARg0wIAQgAWsgAigCACIBaiEFIAAgAWtBBGohBgJAA0AgAC0AACABQfzPAGotAABHDQEgAUEERg0DIAFBAWohASAEIABBAWoiAEcNAAsgAiAFNgIADDELIAJBADYCHCACIAA2AhQgAkGQMzYCECACQQg2AgwgAkEANgIAQQAhAwwwCyABIARHBEAgAkEONgIIIAIgATYCBEG3ASEDDBcLQdEBIQMMLwsgAkEANgIAIAZBAWohAQtBuAEhAwwUCyABIARGBEBB0AEhAwwtCyABLQAAQTBrIgBB/wFxQQpJBEAgAiAAOgAqIAFBAWohAUG2ASEDDBQLIAIoAgQhACACQQA2AgQgAiAAIAEQKCIARQ0UIAJBzwE2AhwgAiABNgIUIAIgADYCDEEAIQMMLAsgASAERgRAQc4BIQMMLAsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAIoAgQhACACQQA2AgQgAiAAIAEQKCIARQ0VIAJBzQE2AhwgAiABNgIUIAIgADYCDEEAIQMMLAtBtQEhAwwSCyAEIAEiBUYEQEHMASEDDCsLQQAhAEEBIQFBASEGQQAhAwJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAUtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyEDQQAhAUEAIQYMAgtBCSEDQQEhAEEAIQFBACEGDAELQQAhAUEBIQMLIAIgAzoAKyAFQQFqIQMCQAJAIAItAC1BEHENAAJAAkACQCACLQAqDgMBAAIECyAGRQ0DDAILIAANAQwCCyABRQ0BCyACKAIEIQAgAkEANgIEIAIgACADECgiAEUEQCADIQEMAwsgAkHJATYCHCACIAM2AhQgAiAANgIMQQAhAwwtCyACKAIEIQAgAkEANgIEIAIgACADECgiAEUEQCADIQEMGAsgAkHKATYCHCACIAM2AhQgAiAANgIMQQAhAwwsCyACKAIEIQAgAkEANgIEIAIgACAFECgiAEUEQCAFIQEMFgsgAkHLATYCHCACIAU2AhQgAiAANgIMDCsLQbQBIQMMEQtBACEAAkAgAigCOCIDRQ0AIAMoAjwiA0UNACACIAMRAAAhAAsCQCAABEAgAEEVRg0BIAJBADYCHCACIAE2AhQgAkGUDTYCECACQSE2AgxBACEDDCsLQbIBIQMMEQsgAkHIATYCHCACIAE2AhQgAkHJFzYCECACQRU2AgxBACEDDCkLIAJBADYCACAGQQFqIQFB9QAhAwwPCyACLQApQQVGBEBB4wAhAwwPC0HiACEDDA4LIAAhASACQQA2AgALIAJBADoALEEJIQMMDAsgAkEANgIAIAdBAWohAUHAACEDDAsLQQELOgAsIAJBADYCACAGQQFqIQELQSkhAwwIC0E4IQMMBwsCQCABIARHBEADQCABLQAAQYA+ai0AACIAQQFHBEAgAEECRw0DIAFBAWohAQwFCyAEIAFBAWoiAUcNAAtBPiEDDCELQT4hAwwgCwsgAkEAOgAsDAELQQshAwwEC0E6IQMMAwsgAUEBaiEBQS0hAwwCCyACIAE6ACwgAkEANgIAIAZBAWohAUEMIQMMAQsgAkEANgIAIAZBAWohAUEKIQMMAAsAC0EAIQMgAkEANgIcIAIgATYCFCACQc0QNgIQIAJBCTYCDAwXC0EAIQMgAkEANgIcIAIgATYCFCACQekKNgIQIAJBCTYCDAwWC0EAIQMgAkEANgIcIAIgATYCFCACQbcQNgIQIAJBCTYCDAwVC0EAIQMgAkEANgIcIAIgATYCFCACQZwRNgIQIAJBCTYCDAwUC0EAIQMgAkEANgIcIAIgATYCFCACQc0QNgIQIAJBCTYCDAwTC0EAIQMgAkEANgIcIAIgATYCFCACQekKNgIQIAJBCTYCDAwSC0EAIQMgAkEANgIcIAIgATYCFCACQbcQNgIQIAJBCTYCDAwRC0EAIQMgAkEANgIcIAIgATYCFCACQZwRNgIQIAJBCTYCDAwQC0EAIQMgAkEANgIcIAIgATYCFCACQZcVNgIQIAJBDzYCDAwPC0EAIQMgAkEANgIcIAIgATYCFCACQZcVNgIQIAJBDzYCDAwOC0EAIQMgAkEANgIcIAIgATYCFCACQcASNgIQIAJBCzYCDAwNC0EAIQMgAkEANgIcIAIgATYCFCACQZUJNgIQIAJBCzYCDAwMC0EAIQMgAkEANgIcIAIgATYCFCACQeEPNgIQIAJBCjYCDAwLC0EAIQMgAkEANgIcIAIgATYCFCACQfsPNgIQIAJBCjYCDAwKC0EAIQMgAkEANgIcIAIgATYCFCACQfEZNgIQIAJBAjYCDAwJC0EAIQMgAkEANgIcIAIgATYCFCACQcQUNgIQIAJBAjYCDAwIC0EAIQMgAkEANgIcIAIgATYCFCACQfIVNgIQIAJBAjYCDAwHCyACQQI2AhwgAiABNgIUIAJBnBo2AhAgAkEWNgIMQQAhAwwGC0EBIQMMBQtB1AAhAyABIARGDQQgCEEIaiEJIAIoAgAhBQJAAkAgASAERwRAIAVB2MIAaiEHIAQgBWogAWshACAFQX9zQQpqIgUgAWohBgNAIAEtAAAgBy0AAEcEQEECIQcMAwsgBUUEQEEAIQcgBiEBDAMLIAVBAWshBSAHQQFqIQcgBCABQQFqIgFHDQALIAAhBSAEIQELIAlBATYCACACIAU2AgAMAQsgAkEANgIAIAkgBzYCAAsgCSABNgIEIAgoAgwhACAIKAIIDgMBBAIACwALIAJBADYCHCACQbUaNgIQIAJBFzYCDCACIABBAWo2AhRBACEDDAILIAJBADYCHCACIAA2AhQgAkHKGjYCECACQQk2AgxBACEDDAELIAEgBEYEQEEiIQMMAQsgAkEJNgIIIAIgATYCBEEhIQMLIAhBEGokACADRQRAIAIoAgwhAAwBCyACIAM2AhxBACEAIAIoAgQiAUUNACACIAEgBCACKAIIEQEAIgFFDQAgAiAENgIUIAIgATYCDCABIQALIAALvgIBAn8gAEEAOgAAIABB3ABqIgFBAWtBADoAACAAQQA6AAIgAEEAOgABIAFBA2tBADoAACABQQJrQQA6AAAgAEEAOgADIAFBBGtBADoAAEEAIABrQQNxIgEgAGoiAEEANgIAQdwAIAFrQXxxIgIgAGoiAUEEa0EANgIAAkAgAkEJSQ0AIABBADYCCCAAQQA2AgQgAUEIa0EANgIAIAFBDGtBADYCACACQRlJDQAgAEEANgIYIABBADYCFCAAQQA2AhAgAEEANgIMIAFBEGtBADYCACABQRRrQQA2AgAgAUEYa0EANgIAIAFBHGtBADYCACACIABBBHFBGHIiAmsiAUEgSQ0AIAAgAmohAANAIABCADcDGCAAQgA3AxAgAEIANwMIIABCADcDACAAQSBqIQAgAUEgayIBQR9LDQALCwtWAQF/AkAgACgCDA0AAkACQAJAAkAgAC0ALw4DAQADAgsgACgCOCIBRQ0AIAEoAiwiAUUNACAAIAERAAAiAQ0DC0EADwsACyAAQcMWNgIQQQ4hAQsgAQsaACAAKAIMRQRAIABB0Rs2AhAgAEEVNgIMCwsUACAAKAIMQRVGBEAgAEEANgIMCwsUACAAKAIMQRZGBEAgAEEANgIMCwsHACAAKAIMCwcAIAAoAhALCQAgACABNgIQCwcAIAAoAhQLFwAgAEEkTwRAAAsgAEECdEGgM2ooAgALFwAgAEEuTwRAAAsgAEECdEGwNGooAgALvwkBAX9B6yghAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Lo=T((EK,rI)=>{"use strict";var zC=["GET","HEAD","POST"],FT=new Set(zC),UT=[101,204,205,304],ZC=[301,302,303,307,308],MT=new Set(ZC),KC=["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"],LT=new Set(KC),XC=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],_T=new Set(XC),PT=["follow","manual","error"],eI=["GET","HEAD","OPTIONS","TRACE"],OT=new Set(eI),GT=["navigate","same-origin","no-cors","cors"],$T=["omit","same-origin","include"],YT=["default","no-store","reload","no-cache","force-cache","only-if-cached"],HT=["content-encoding","content-language","content-location","content-type","content-length"],VT=["half"],tI=["CONNECT","TRACE","TRACK"],JT=new Set(tI),nI=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],qT=new Set(nI);rI.exports={subresource:nI,forbiddenMethods:tI,requestBodyHeader:HT,referrerPolicy:XC,requestRedirect:PT,requestMode:GT,requestCredentials:$T,requestCache:YT,redirectStatus:ZC,corsSafeListedMethods:zC,nullBodyStatus:UT,safeMethods:eI,badPorts:KC,requestDuplex:VT,subresourceSet:qT,badPortsSet:LT,redirectStatusSet:MT,corsSafeListedMethodsSet:FT,safeMethodsSet:OT,forbiddenMethodsSet:JT,referrerPolicySet:_T}});var Hd=T((CK,sI)=>{"use strict";var Yd=Symbol.for("undici.globalOrigin.1");function jT(){return globalThis[Yd]}o(jT,"getGlobalOrigin");function WT(t){if(t===void 0){Object.defineProperty(globalThis,Yd,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let e=new URL(t);if(e.protocol!=="http:"&&e.protocol!=="https:")throw new TypeError(`Only http & https urls are allowed, received ${e.protocol}`);Object.defineProperty(globalThis,Yd,{value:e,writable:!0,enumerable:!1,configurable:!1})}o(WT,"setGlobalOrigin");sI.exports={getGlobalOrigin:jT,setGlobalOrigin:WT}});var gt=T((yK,lI)=>{"use strict";var GA=require("node:assert"),zT=new TextEncoder,_o=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,ZT=/[\u000A\u000D\u0009\u0020]/,KT=/[\u0009\u000A\u000C\u000D\u0020]/g,XT=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function eN(t){GA(t.protocol==="data:");let e=aI(t,!0);e=e.slice(5);let n={position:0},r=ci(",",e,n),s=r.length;if(r=oN(r,!0,!0),n.position>=e.length)return"failure";n.position++;let i=e.slice(s+1),a=AI(i);if(/;(\u0020){0,}base64$/i.test(r)){let l=uI(a);if(a=nN(l),a==="failure")return"failure";r=r.slice(0,-6),r=r.replace(/(\u0020)+$/,""),r=r.slice(0,-1)}r.startsWith(";")&&(r="text/plain"+r);let c=Vd(r);return c==="failure"&&(c=Vd("text/plain;charset=US-ASCII")),{mimeType:c,body:a}}o(eN,"dataURLProcessor");function aI(t,e=!1){if(!e)return t.href;let n=t.href,r=t.hash.length,s=r===0?n:n.substring(0,n.length-r);return!r&&n.endsWith("#")?s.slice(0,-1):s}o(aI,"URLSerializer");function $A(t,e,n){let r="";for(;n.position<e.length&&t(e[n.position]);)r+=e[n.position],n.position++;return r}o($A,"collectASequenceOfCodePoints");function ci(t,e,n){let r=e.indexOf(t,n.position),s=n.position;return r===-1?(n.position=e.length,e.slice(s)):(n.position=r,e.slice(s,n.position))}o(ci,"collectASequenceOfCodePointsFast");function AI(t){let e=zT.encode(t);return tN(e)}o(AI,"stringPercentDecode");function iI(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}o(iI,"isHexCharByte");function oI(t){return t>=48&&t<=57?t-48:(t&223)-55}o(oI,"hexByteToNumber");function tN(t){let e=t.length,n=new Uint8Array(e),r=0;for(let s=0;s<e;++s){let i=t[s];i!==37?n[r++]=i:i===37&&!(iI(t[s+1])&&iI(t[s+2]))?n[r++]=37:(n[r++]=oI(t[s+1])<<4|oI(t[s+2]),s+=2)}return e===r?n:n.subarray(0,r)}o(tN,"percentDecode");function Vd(t){t=OA(t,!0,!0);let e={position:0},n=ci("/",t,e);if(n.length===0||!_o.test(n)||e.position>t.length)return"failure";e.position++;let r=ci(";",t,e);if(r=OA(r,!1,!0),r.length===0||!_o.test(r))return"failure";let s=n.toLowerCase(),i=r.toLowerCase(),a={type:s,subtype:i,parameters:new Map,essence:`${s}/${i}`};for(;e.position<t.length;){e.position++,$A(d=>ZT.test(d),t,e);let c=$A(d=>d!==";"&&d!=="=",t,e);if(c=c.toLowerCase(),e.position<t.length){if(t[e.position]===";")continue;e.position++}if(e.position>t.length)break;let l=null;if(t[e.position]==='"')l=cI(t,e,!0),ci(";",t,e);else if(l=ci(";",t,e),l=OA(l,!1,!0),l.length===0)continue;c.length!==0&&_o.test(c)&&(l.length===0||XT.test(l))&&!a.parameters.has(c)&&a.parameters.set(c,l)}return a}o(Vd,"parseMIMEType");function nN(t){t=t.replace(KT,"");let e=t.length;if(e%4===0&&t.charCodeAt(e-1)===61&&(--e,t.charCodeAt(e-1)===61&&--e),e%4===1||/[^+/0-9A-Za-z]/.test(t.length===e?t:t.substring(0,e)))return"failure";let n=Buffer.from(t,"base64");return new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}o(nN,"forgivingBase64");function cI(t,e,n){let r=e.position,s="";for(GA(t[e.position]==='"'),e.position++;s+=$A(a=>a!=='"'&&a!=="\\",t,e),!(e.position>=t.length);){let i=t[e.position];if(e.position++,i==="\\"){if(e.position>=t.length){s+="\\";break}s+=t[e.position],e.position++}else{GA(i==='"');break}}return n?s:t.slice(r,e.position)}o(cI,"collectAnHTTPQuotedString");function rN(t){GA(t!=="failure");let{parameters:e,essence:n}=t,r=n;for(let[s,i]of e.entries())r+=";",r+=s,r+="=",_o.test(i)||(i=i.replace(/(\\|")/g,"\\$1"),i='"'+i,i+='"'),r+=i;return r}o(rN,"serializeAMimeType");function sN(t){return t===13||t===10||t===9||t===32}o(sN,"isHTTPWhiteSpace");function OA(t,e=!0,n=!0){return Jd(t,e,n,sN)}o(OA,"removeHTTPWhitespace");function iN(t){return t===13||t===10||t===9||t===12||t===32}o(iN,"isASCIIWhitespace");function oN(t,e=!0,n=!0){return Jd(t,e,n,iN)}o(oN,"removeASCIIWhitespace");function Jd(t,e,n,r){let s=0,i=t.length-1;if(e)for(;s<t.length&&r(t.charCodeAt(s));)s++;if(n)for(;i>0&&r(t.charCodeAt(i));)i--;return s===0&&i===t.length-1?t:t.slice(s,i+1)}o(Jd,"removeChars");function uI(t){let e=t.length;if(65535>e)return String.fromCharCode.apply(null,t);let n="",r=0,s=65535;for(;r<e;)r+s>e&&(s=e-r),n+=String.fromCharCode.apply(null,t.subarray(r,r+=s));return n}o(uI,"isomorphicDecode");function aN(t){switch(t.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 t.subtype.endsWith("+json")?"application/json":t.subtype.endsWith("+xml")?"application/xml":""}o(aN,"minimizeSupportedMimeType");lI.exports={dataURLProcessor:eN,URLSerializer:aI,collectASequenceOfCodePoints:$A,collectASequenceOfCodePointsFast:ci,stringPercentDecode:AI,parseMIMEType:Vd,collectAnHTTPQuotedString:cI,serializeAMimeType:rN,removeChars:Jd,removeHTTPWhitespace:OA,minimizeSupportedMimeType:aN,HTTP_TOKEN_CODEPOINTS:_o,isomorphicDecode:uI}});var je=T((BK,dI)=>{"use strict";var{types:dn,inspect:AN}=require("node:util"),{markAsUncloneable:cN}=require("node:worker_threads"),{toUSVString:uN}=ue(),U={};U.converters={};U.util={};U.errors={};U.errors.exception=function(t){return new TypeError(`${t.header}: ${t.message}`)};U.errors.conversionFailed=function(t){let e=t.types.length===1?"":" one of",n=`${t.argument} could not be converted to${e}: ${t.types.join(", ")}.`;return U.errors.exception({header:t.prefix,message:n})};U.errors.invalidArgument=function(t){return U.errors.exception({header:t.prefix,message:`"${t.value}" is an invalid ${t.type}.`})};U.brandCheck=function(t,e,n){if(n?.strict!==!1){if(!(t instanceof e)){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}}else if(t?.[Symbol.toStringTag]!==e.prototype[Symbol.toStringTag]){let r=new TypeError("Illegal invocation");throw r.code="ERR_INVALID_THIS",r}};U.argumentLengthCheck=function({length:t},e,n){if(t<e)throw U.errors.exception({message:`${e} argument${e!==1?"s":""} required, but${t?" only":""} ${t} found.`,header:n})};U.illegalConstructor=function(){throw U.errors.exception({header:"TypeError",message:"Illegal constructor"})};U.util.Type=function(t){switch(typeof t){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 t===null?"Null":"Object"}};U.util.markAsUncloneable=cN||(()=>{});U.util.ConvertToInt=function(t,e,n,r){let s,i;e===64?(s=Math.pow(2,53)-1,n==="unsigned"?i=0:i=Math.pow(-2,53)+1):n==="unsigned"?(i=0,s=Math.pow(2,e)-1):(i=Math.pow(-2,e)-1,s=Math.pow(2,e-1)-1);let a=Number(t);if(a===0&&(a=0),r?.enforceRange===!0){if(Number.isNaN(a)||a===Number.POSITIVE_INFINITY||a===Number.NEGATIVE_INFINITY)throw U.errors.exception({header:"Integer conversion",message:`Could not convert ${U.util.Stringify(t)} to an integer.`});if(a=U.util.IntegerPart(a),a<i||a>s)throw U.errors.exception({header:"Integer conversion",message:`Value must be between ${i}-${s}, got ${a}.`});return a}return!Number.isNaN(a)&&r?.clamp===!0?(a=Math.min(Math.max(a,i),s),Math.floor(a)%2===0?a=Math.floor(a):a=Math.ceil(a),a):Number.isNaN(a)||a===0&&Object.is(0,a)||a===Number.POSITIVE_INFINITY||a===Number.NEGATIVE_INFINITY?0:(a=U.util.IntegerPart(a),a=a%Math.pow(2,e),n==="signed"&&a>=Math.pow(2,e)-1?a-Math.pow(2,e):a)};U.util.IntegerPart=function(t){let e=Math.floor(Math.abs(t));return t<0?-1*e:e};U.util.Stringify=function(t){switch(U.util.Type(t)){case"Symbol":return`Symbol(${t.description})`;case"Object":return AN(t);case"String":return`"${t}"`;default:return`${t}`}};U.sequenceConverter=function(t){return(e,n,r,s)=>{if(U.util.Type(e)!=="Object")throw U.errors.exception({header:n,message:`${r} (${U.util.Stringify(e)}) is not iterable.`});let i=typeof s=="function"?s():e?.[Symbol.iterator]?.(),a=[],c=0;if(i===void 0||typeof i.next!="function")throw U.errors.exception({header:n,message:`${r} is not iterable.`});for(;;){let{done:l,value:d}=i.next();if(l)break;a.push(t(d,n,`${r}[${c++}]`))}return a}};U.recordConverter=function(t,e){return(n,r,s)=>{if(U.util.Type(n)!=="Object")throw U.errors.exception({header:r,message:`${s} ("${U.util.Type(n)}") is not an Object.`});let i={};if(!dn.isProxy(n)){let c=[...Object.getOwnPropertyNames(n),...Object.getOwnPropertySymbols(n)];for(let l of c){let d=t(l,r,s),g=e(n[l],r,s);i[d]=g}return i}let a=Reflect.ownKeys(n);for(let c of a)if(Reflect.getOwnPropertyDescriptor(n,c)?.enumerable){let d=t(c,r,s),g=e(n[c],r,s);i[d]=g}return i}};U.interfaceConverter=function(t){return(e,n,r,s)=>{if(s?.strict!==!1&&!(e instanceof t))throw U.errors.exception({header:n,message:`Expected ${r} ("${U.util.Stringify(e)}") to be an instance of ${t.name}.`});return e}};U.dictionaryConverter=function(t){return(e,n,r)=>{let s=U.util.Type(e),i={};if(s==="Null"||s==="Undefined")return i;if(s!=="Object")throw U.errors.exception({header:n,message:`Expected ${e} to be one of: Null, Undefined, Object.`});for(let a of t){let{key:c,defaultValue:l,required:d,converter:g}=a;if(d===!0&&!Object.hasOwn(e,c))throw U.errors.exception({header:n,message:`Missing required key "${c}".`});let h=e[c],f=Object.hasOwn(a,"defaultValue");if(f&&h!==null&&(h??=l()),d||f||h!==void 0){if(h=g(h,n,`${r}.${c}`),a.allowedValues&&!a.allowedValues.includes(h))throw U.errors.exception({header:n,message:`${h} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});i[c]=h}}return i}};U.nullableConverter=function(t){return(e,n,r)=>e===null?e:t(e,n,r)};U.converters.DOMString=function(t,e,n,r){if(t===null&&r?.legacyNullToEmptyString)return"";if(typeof t=="symbol")throw U.errors.exception({header:e,message:`${n} is a symbol, which cannot be converted to a DOMString.`});return String(t)};U.converters.ByteString=function(t,e,n){let r=U.converters.DOMString(t,e,n);for(let s=0;s<r.length;s++)if(r.charCodeAt(s)>255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${s} has a value of ${r.charCodeAt(s)} which is greater than 255.`);return r};U.converters.USVString=uN;U.converters.boolean=function(t){return!!t};U.converters.any=function(t){return t};U.converters["long long"]=function(t,e,n){return U.util.ConvertToInt(t,64,"signed",void 0,e,n)};U.converters["unsigned long long"]=function(t,e,n){return U.util.ConvertToInt(t,64,"unsigned",void 0,e,n)};U.converters["unsigned long"]=function(t,e,n){return U.util.ConvertToInt(t,32,"unsigned",void 0,e,n)};U.converters["unsigned short"]=function(t,e,n,r){return U.util.ConvertToInt(t,16,"unsigned",r,e,n)};U.converters.ArrayBuffer=function(t,e,n,r){if(U.util.Type(t)!=="Object"||!dn.isAnyArrayBuffer(t))throw U.errors.conversionFailed({prefix:e,argument:`${n} ("${U.util.Stringify(t)}")`,types:["ArrayBuffer"]});if(r?.allowShared===!1&&dn.isSharedArrayBuffer(t))throw U.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.resizable||t.growable)throw U.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};U.converters.TypedArray=function(t,e,n,r,s){if(U.util.Type(t)!=="Object"||!dn.isTypedArray(t)||t.constructor.name!==e.name)throw U.errors.conversionFailed({prefix:n,argument:`${r} ("${U.util.Stringify(t)}")`,types:[e.name]});if(s?.allowShared===!1&&dn.isSharedArrayBuffer(t.buffer))throw U.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw U.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};U.converters.DataView=function(t,e,n,r){if(U.util.Type(t)!=="Object"||!dn.isDataView(t))throw U.errors.exception({header:e,message:`${n} is not a DataView.`});if(r?.allowShared===!1&&dn.isSharedArrayBuffer(t.buffer))throw U.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw U.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};U.converters.BufferSource=function(t,e,n,r){if(dn.isAnyArrayBuffer(t))return U.converters.ArrayBuffer(t,e,n,{...r,allowShared:!1});if(dn.isTypedArray(t))return U.converters.TypedArray(t,t.constructor,e,n,{...r,allowShared:!1});if(dn.isDataView(t))return U.converters.DataView(t,e,n,{...r,allowShared:!1});throw U.errors.conversionFailed({prefix:e,argument:`${n} ("${U.util.Stringify(t)}")`,types:["BufferSource"]})};U.converters["sequence<ByteString>"]=U.sequenceConverter(U.converters.ByteString);U.converters["sequence<sequence<ByteString>>"]=U.sequenceConverter(U.converters["sequence<ByteString>"]);U.converters["record<ByteString, ByteString>"]=U.recordConverter(U.converters.ByteString,U.converters.ByteString);dI.exports={webidl:U}});var Qt=T((wK,RI)=>{"use strict";var{Transform:lN}=require("node:stream"),gI=require("node:zlib"),{redirectStatusSet:dN,referrerPolicySet:gN,badPortsSet:hN}=Lo(),{getGlobalOrigin:hI}=Hd(),{collectASequenceOfCodePoints:ns,collectAnHTTPQuotedString:pN,removeChars:fN,parseMIMEType:mN}=gt(),{performance:EN}=require("node:perf_hooks"),{isBlobLike:CN,ReadableStreamFrom:IN,isValidHTTPToken:pI,normalizedMethodRecordsBase:yN}=ue(),rs=require("node:assert"),{isUint8Array:QN}=require("node:util/types"),{webidl:Po}=je(),fI=[],HA;try{HA=require("node:crypto");let t=["sha256","sha384","sha512"];fI=HA.getHashes().filter(e=>t.includes(e))}catch{}function mI(t){let e=t.urlList,n=e.length;return n===0?null:e[n-1].toString()}o(mI,"responseURL");function BN(t,e){if(!dN.has(t.status))return null;let n=t.headersList.get("location",!0);return n!==null&&CI(n)&&(EI(n)||(n=wN(n)),n=new URL(n,mI(t))),n&&!n.hash&&(n.hash=e),n}o(BN,"responseLocationURL");function EI(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n>126||n<32)return!1}return!0}o(EI,"isValidEncodedURL");function wN(t){return Buffer.from(t,"binary").toString("utf8")}o(wN,"normalizeBinaryStringToUtf8");function Go(t){return t.urlList[t.urlList.length-1]}o(Go,"requestCurrentURL");function bN(t){let e=Go(t);return wI(e)&&hN.has(e.port)?"blocked":"allowed"}o(bN,"requestBadPort");function RN(t){return t instanceof Error||t?.constructor?.name==="Error"||t?.constructor?.name==="DOMException"}o(RN,"isErrorLike");function kN(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(!(n===9||n>=32&&n<=126||n>=128&&n<=255))return!1}return!0}o(kN,"isValidReasonPhrase");var SN=pI;function CI(t){return(t[0]===" "||t[0]===" "||t[t.length-1]===" "||t[t.length-1]===" "||t.includes(`
3
+ `)||t.includes("\r")||t.includes("\0"))===!1}o(CI,"isValidHeaderValue");function vN(t,e){let{headersList:n}=e,r=(n.get("referrer-policy",!0)??"").split(","),s="";if(r.length>0)for(let i=r.length;i!==0;i--){let a=r[i-1].trim();if(gN.has(a)){s=a;break}}s!==""&&(t.referrerPolicy=s)}o(vN,"setRequestReferrerPolicyOnRedirect");function xN(){return"allowed"}o(xN,"crossOriginResourcePolicyCheck");function DN(){return"success"}o(DN,"corsCheck");function TN(){return"success"}o(TN,"TAOCheck");function NN(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}o(NN,"appendFetchMetadata");function FN(t){let e=t.origin;if(!(e==="client"||e===void 0)){if(t.responseTainting==="cors"||t.mode==="websocket")t.headersList.append("origin",e,!0);else if(t.method!=="GET"&&t.method!=="HEAD"){switch(t.referrerPolicy){case"no-referrer":e=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":t.origin&&jd(t.origin)&&!jd(Go(t))&&(e=null);break;case"same-origin":VA(t,Go(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}o(FN,"appendRequestOriginHeader");function ui(t,e){return t}o(ui,"coarsenTime");function UN(t,e,n){return!t?.startTime||t.startTime<e?{domainLookupStartTime:e,domainLookupEndTime:e,connectionStartTime:e,connectionEndTime:e,secureConnectionStartTime:e,ALPNNegotiatedProtocol:t?.ALPNNegotiatedProtocol}:{domainLookupStartTime:ui(t.domainLookupStartTime,n),domainLookupEndTime:ui(t.domainLookupEndTime,n),connectionStartTime:ui(t.connectionStartTime,n),connectionEndTime:ui(t.connectionEndTime,n),secureConnectionStartTime:ui(t.secureConnectionStartTime,n),ALPNNegotiatedProtocol:t.ALPNNegotiatedProtocol}}o(UN,"clampAndCoarsenConnectionTimingInfo");function MN(t){return ui(EN.now(),t)}o(MN,"coarsenedSharedCurrentTime");function LN(t){return{startTime:t.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:t.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}}o(LN,"createOpaqueTimingInfo");function II(){return{referrerPolicy:"strict-origin-when-cross-origin"}}o(II,"makePolicyContainer");function _N(t){return{referrerPolicy:t.referrerPolicy}}o(_N,"clonePolicyContainer");function PN(t){let e=t.referrerPolicy;rs(e);let n=null;if(t.referrer==="client"){let c=hI();if(!c||c.origin==="null")return"no-referrer";n=new URL(c)}else t.referrer instanceof URL&&(n=t.referrer);let r=qd(n),s=qd(n,!0);r.toString().length>4096&&(r=s);let i=VA(t,r),a=Oo(r)&&!Oo(t.url);switch(e){case"origin":return s??qd(n,!0);case"unsafe-url":return r;case"same-origin":return i?s:"no-referrer";case"origin-when-cross-origin":return i?r:s;case"strict-origin-when-cross-origin":{let c=Go(t);return VA(r,c)?r:Oo(r)&&!Oo(c)?"no-referrer":s}default:return a?"no-referrer":s}}o(PN,"determineRequestsReferrer");function qd(t,e){return rs(t instanceof URL),t=new URL(t),t.protocol==="file:"||t.protocol==="about:"||t.protocol==="blank:"?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}o(qd,"stripURLForReferrer");function Oo(t){if(!(t instanceof URL))return!1;if(t.href==="about:blank"||t.href==="about:srcdoc"||t.protocol==="data:"||t.protocol==="file:")return!0;return e(t.origin);function e(n){if(n==null||n==="null")return!1;let r=new URL(n);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"))}}o(Oo,"isURLPotentiallyTrustworthy");function ON(t,e){if(HA===void 0)return!0;let n=yI(e);if(n==="no metadata"||n.length===0)return!0;let r=$N(n),s=YN(n,r);for(let i of s){let a=i.algo,c=i.hash,l=HA.createHash(a).update(t).digest("base64");if(l[l.length-1]==="="&&(l[l.length-2]==="="?l=l.slice(0,-2):l=l.slice(0,-1)),HN(l,c))return!0}return!1}o(ON,"bytesMatch");var GN=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function yI(t){let e=[],n=!0;for(let r of t.split(" ")){n=!1;let s=GN.exec(r);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let i=s.groups.algo.toLowerCase();fI.includes(i)&&e.push(s.groups)}return n===!0?"no metadata":e}o(yI,"parseMetadata");function $N(t){let e=t[0].algo;if(e[3]==="5")return e;for(let n=1;n<t.length;++n){let r=t[n];if(r.algo[3]==="5"){e="sha512";break}else{if(e[3]==="3")continue;r.algo[3]==="3"&&(e="sha384")}}return e}o($N,"getStrongestMetadata");function YN(t,e){if(t.length===1)return t;let n=0;for(let r=0;r<t.length;++r)t[r].algo===e&&(t[n++]=t[r]);return t.length=n,t}o(YN,"filterMetadataListByAlgorithm");function HN(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;++n)if(t[n]!==e[n]){if(t[n]==="+"&&e[n]==="-"||t[n]==="/"&&e[n]==="_")continue;return!1}return!0}o(HN,"compareBase64Mixed");function VN(t){}o(VN,"tryUpgradeRequestToAPotentiallyTrustworthyURL");function VA(t,e){return t.origin===e.origin&&t.origin==="null"||t.protocol===e.protocol&&t.hostname===e.hostname&&t.port===e.port}o(VA,"sameOrigin");function JN(){let t,e;return{promise:new Promise((r,s)=>{t=r,e=s}),resolve:t,reject:e}}o(JN,"createDeferredPromise");function qN(t){return t.controller.state==="aborted"}o(qN,"isAborted");function jN(t){return t.controller.state==="aborted"||t.controller.state==="terminated"}o(jN,"isCancelled");function WN(t){return yN[t.toLowerCase()]??t}o(WN,"normalizeMethod");function zN(t){let e=JSON.stringify(t);if(e===void 0)throw new TypeError("Value is not JSON serializable");return rs(typeof e=="string"),e}o(zN,"serializeJavascriptValueToJSONString");var ZN=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function QI(t,e,n=0,r=1){class s{static{o(this,"FastIterableIterator")}#e;#t;#n;constructor(a,c){this.#e=a,this.#t=c,this.#n=0}next(){if(typeof this!="object"||this===null||!(#e in this))throw new TypeError(`'next' called on an object that does not implement interface ${t} Iterator.`);let a=this.#n,c=this.#e[e],l=c.length;if(a>=l)return{value:void 0,done:!0};let{[n]:d,[r]:g}=c[a];this.#n=a+1;let h;switch(this.#t){case"key":h=d;break;case"value":h=g;break;case"key+value":h=[d,g];break}return{value:h,done:!1}}}return delete s.prototype.constructor,Object.setPrototypeOf(s.prototype,ZN),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${t} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(i,a){return new s(i,a)}}o(QI,"createIterator");function KN(t,e,n,r=0,s=1){let i=QI(t,n,r,s),a={keys:{writable:!0,enumerable:!0,configurable:!0,value:o(function(){return Po.brandCheck(this,e),i(this,"key")},"keys")},values:{writable:!0,enumerable:!0,configurable:!0,value:o(function(){return Po.brandCheck(this,e),i(this,"value")},"values")},entries:{writable:!0,enumerable:!0,configurable:!0,value:o(function(){return Po.brandCheck(this,e),i(this,"key+value")},"entries")},forEach:{writable:!0,enumerable:!0,configurable:!0,value:o(function(l,d=globalThis){if(Po.brandCheck(this,e),Po.argumentLengthCheck(arguments,1,`${t}.forEach`),typeof l!="function")throw new TypeError(`Failed to execute 'forEach' on '${t}': parameter 1 is not of type 'Function'.`);for(let{0:g,1:h}of i(this,"key+value"))l.call(d,h,g,this)},"forEach")}};return Object.defineProperties(e.prototype,{...a,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:a.entries.value}})}o(KN,"iteratorMixin");async function XN(t,e,n){let r=e,s=n,i;try{i=t.stream.getReader()}catch(a){s(a);return}try{r(await BI(i))}catch(a){s(a)}}o(XN,"fullyReadBody");function eF(t){return t instanceof ReadableStream||t[Symbol.toStringTag]==="ReadableStream"&&typeof t.tee=="function"}o(eF,"isReadableStreamLike");function tF(t){try{t.close(),t.byobRequest?.respond(0)}catch(e){if(!e.message.includes("Controller is already closed")&&!e.message.includes("ReadableStream is already closed"))throw e}}o(tF,"readableStreamClose");var nF=/[^\x00-\xFF]/;function YA(t){return rs(!nF.test(t)),t}o(YA,"isomorphicEncode");async function BI(t){let e=[],n=0;for(;;){let{done:r,value:s}=await t.read();if(r)return Buffer.concat(e,n);if(!QN(s))throw new TypeError("Received non-Uint8Array chunk");e.push(s),n+=s.length}}o(BI,"readAllBytes");function rF(t){rs("protocol"in t);let e=t.protocol;return e==="about:"||e==="blob:"||e==="data:"}o(rF,"urlIsLocal");function jd(t){return typeof t=="string"&&t[5]===":"&&t[0]==="h"&&t[1]==="t"&&t[2]==="t"&&t[3]==="p"&&t[4]==="s"||t.protocol==="https:"}o(jd,"urlHasHttpsScheme");function wI(t){rs("protocol"in t);let e=t.protocol;return e==="http:"||e==="https:"}o(wI,"urlIsHttpHttpsScheme");function sF(t,e){let n=t;if(!n.startsWith("bytes"))return"failure";let r={position:5};if(e&&ns(l=>l===" "||l===" ",n,r),n.charCodeAt(r.position)!==61)return"failure";r.position++,e&&ns(l=>l===" "||l===" ",n,r);let s=ns(l=>{let d=l.charCodeAt(0);return d>=48&&d<=57},n,r),i=s.length?Number(s):null;if(e&&ns(l=>l===" "||l===" ",n,r),n.charCodeAt(r.position)!==45)return"failure";r.position++,e&&ns(l=>l===" "||l===" ",n,r);let a=ns(l=>{let d=l.charCodeAt(0);return d>=48&&d<=57},n,r),c=a.length?Number(a):null;return r.position<n.length||c===null&&i===null||i>c?"failure":{rangeStartValue:i,rangeEndValue:c}}o(sF,"simpleRangeHeaderValue");function iF(t,e,n){let r="bytes ";return r+=YA(`${t}`),r+="-",r+=YA(`${e}`),r+="/",r+=YA(`${n}`),r}o(iF,"buildContentRange");var Wd=class extends lN{static{o(this,"InflateStream")}#e;constructor(e){super(),this.#e=e}_transform(e,n,r){if(!this._inflateStream){if(e.length===0){r();return}this._inflateStream=(e[0]&15)===8?gI.createInflate(this.#e):gI.createInflateRaw(this.#e),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",s=>this.destroy(s))}this._inflateStream.write(e,n,r)}_final(e){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),e()}};function oF(t){return new Wd(t)}o(oF,"createInflate");function aF(t){let e=null,n=null,r=null,s=bI("content-type",t);if(s===null)return"failure";for(let i of s){let a=mN(i);a==="failure"||a.essence==="*/*"||(r=a,r.essence!==n?(e=null,r.parameters.has("charset")&&(e=r.parameters.get("charset")),n=r.essence):!r.parameters.has("charset")&&e!==null&&r.parameters.set("charset",e))}return r??"failure"}o(aF,"extractMimeType");function AF(t){let e=t,n={position:0},r=[],s="";for(;n.position<e.length;){if(s+=ns(i=>i!=='"'&&i!==",",e,n),n.position<e.length)if(e.charCodeAt(n.position)===34){if(s+=pN(e,n),n.position<e.length)continue}else rs(e.charCodeAt(n.position)===44),n.position++;s=fN(s,!0,!0,i=>i===9||i===32),r.push(s),s=""}return r}o(AF,"gettingDecodingSplitting");function bI(t,e){let n=e.get(t,!0);return n===null?null:AF(n)}o(bI,"getDecodeSplit");var cF=new TextDecoder;function uF(t){return t.length===0?"":(t[0]===239&&t[1]===187&&t[2]===191&&(t=t.subarray(3)),cF.decode(t))}o(uF,"utf8DecodeBytes");var zd=class{static{o(this,"EnvironmentSettingsObjectBase")}get baseUrl(){return hI()}get origin(){return this.baseUrl?.origin}policyContainer=II()},Zd=class{static{o(this,"EnvironmentSettingsObject")}settingsObject=new zd},lF=new Zd;RI.exports={isAborted:qN,isCancelled:jN,isValidEncodedURL:EI,createDeferredPromise:JN,ReadableStreamFrom:IN,tryUpgradeRequestToAPotentiallyTrustworthyURL:VN,clampAndCoarsenConnectionTimingInfo:UN,coarsenedSharedCurrentTime:MN,determineRequestsReferrer:PN,makePolicyContainer:II,clonePolicyContainer:_N,appendFetchMetadata:NN,appendRequestOriginHeader:FN,TAOCheck:TN,corsCheck:DN,crossOriginResourcePolicyCheck:xN,createOpaqueTimingInfo:LN,setRequestReferrerPolicyOnRedirect:vN,isValidHTTPToken:pI,requestBadPort:bN,requestCurrentURL:Go,responseURL:mI,responseLocationURL:BN,isBlobLike:CN,isURLPotentiallyTrustworthy:Oo,isValidReasonPhrase:kN,sameOrigin:VA,normalizeMethod:WN,serializeJavascriptValueToJSONString:zN,iteratorMixin:KN,createIterator:QI,isValidHeaderName:SN,isValidHeaderValue:CI,isErrorLike:RN,fullyReadBody:XN,bytesMatch:ON,isReadableStreamLike:eF,readableStreamClose:tF,isomorphicEncode:YA,urlIsLocal:rF,urlHasHttpsScheme:jd,urlIsHttpHttpsScheme:wI,readAllBytes:BI,simpleRangeHeaderValue:sF,buildContentRange:iF,parseMetadata:yI,createInflate:oF,extractMimeType:aF,getDecodeSplit:bI,utf8DecodeBytes:uF,environmentSettingsObject:lF}});var ur=T((RK,kI)=>{"use strict";kI.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var Xd=T((kK,SI)=>{"use strict";var{Blob:dF,File:gF}=require("node:buffer"),{kState:Ln}=ur(),{webidl:gn}=je(),Kd=class t{static{o(this,"FileLike")}constructor(e,n,r={}){let s=n,i=r.type,a=r.lastModified??Date.now();this[Ln]={blobLike:e,name:s,type:i,lastModified:a}}stream(...e){return gn.brandCheck(this,t),this[Ln].blobLike.stream(...e)}arrayBuffer(...e){return gn.brandCheck(this,t),this[Ln].blobLike.arrayBuffer(...e)}slice(...e){return gn.brandCheck(this,t),this[Ln].blobLike.slice(...e)}text(...e){return gn.brandCheck(this,t),this[Ln].blobLike.text(...e)}get size(){return gn.brandCheck(this,t),this[Ln].blobLike.size}get type(){return gn.brandCheck(this,t),this[Ln].blobLike.type}get name(){return gn.brandCheck(this,t),this[Ln].name}get lastModified(){return gn.brandCheck(this,t),this[Ln].lastModified}get[Symbol.toStringTag](){return"File"}};gn.converters.Blob=gn.interfaceConverter(dF);function hF(t){return t instanceof gF||t&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&t[Symbol.toStringTag]==="File"}o(hF,"isFileLike");SI.exports={FileLike:Kd,isFileLike:hF}});var Yo=T((vK,NI)=>{"use strict";var{isBlobLike:JA,iteratorMixin:pF}=Qt(),{kState:st}=ur(),{kEnumerableProperty:li}=ue(),{FileLike:vI,isFileLike:fF}=Xd(),{webidl:we}=je(),{File:TI}=require("node:buffer"),xI=require("node:util"),DI=globalThis.File??TI,$o=class t{static{o(this,"FormData")}constructor(e){if(we.util.markAsUncloneable(this),e!==void 0)throw we.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[st]=[]}append(e,n,r=void 0){we.brandCheck(this,t);let s="FormData.append";if(we.argumentLengthCheck(arguments,2,s),arguments.length===3&&!JA(n))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");e=we.converters.USVString(e,s,"name"),n=JA(n)?we.converters.Blob(n,s,"value",{strict:!1}):we.converters.USVString(n,s,"value"),r=arguments.length===3?we.converters.USVString(r,s,"filename"):void 0;let i=eg(e,n,r);this[st].push(i)}delete(e){we.brandCheck(this,t);let n="FormData.delete";we.argumentLengthCheck(arguments,1,n),e=we.converters.USVString(e,n,"name"),this[st]=this[st].filter(r=>r.name!==e)}get(e){we.brandCheck(this,t);let n="FormData.get";we.argumentLengthCheck(arguments,1,n),e=we.converters.USVString(e,n,"name");let r=this[st].findIndex(s=>s.name===e);return r===-1?null:this[st][r].value}getAll(e){we.brandCheck(this,t);let n="FormData.getAll";return we.argumentLengthCheck(arguments,1,n),e=we.converters.USVString(e,n,"name"),this[st].filter(r=>r.name===e).map(r=>r.value)}has(e){we.brandCheck(this,t);let n="FormData.has";return we.argumentLengthCheck(arguments,1,n),e=we.converters.USVString(e,n,"name"),this[st].findIndex(r=>r.name===e)!==-1}set(e,n,r=void 0){we.brandCheck(this,t);let s="FormData.set";if(we.argumentLengthCheck(arguments,2,s),arguments.length===3&&!JA(n))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");e=we.converters.USVString(e,s,"name"),n=JA(n)?we.converters.Blob(n,s,"name",{strict:!1}):we.converters.USVString(n,s,"name"),r=arguments.length===3?we.converters.USVString(r,s,"name"):void 0;let i=eg(e,n,r),a=this[st].findIndex(c=>c.name===e);a!==-1?this[st]=[...this[st].slice(0,a),i,...this[st].slice(a+1).filter(c=>c.name!==e)]:this[st].push(i)}[xI.inspect.custom](e,n){let r=this[st].reduce((i,a)=>(i[a.name]?Array.isArray(i[a.name])?i[a.name].push(a.value):i[a.name]=[i[a.name],a.value]:i[a.name]=a.value,i),{__proto__:null});n.depth??=e,n.colors??=!0;let s=xI.formatWithOptions(n,r);return`FormData ${s.slice(s.indexOf("]")+2)}`}};pF("FormData",$o,st,"name","value");Object.defineProperties($o.prototype,{append:li,delete:li,get:li,getAll:li,has:li,set:li,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function eg(t,e,n){if(typeof e!="string"){if(fF(e)||(e=e instanceof Blob?new DI([e],"blob",{type:e.type}):new vI(e,"blob",{type:e.type})),n!==void 0){let r={type:e.type,lastModified:e.lastModified};e=e instanceof TI?new DI([e],n,r):new vI(e,n,r)}}return{name:t,value:e}}o(eg,"makeEntry");NI.exports={FormData:$o,makeEntry:eg}});var PI=T((DK,_I)=>{"use strict";var{isUSVString:FI,bufferToLowerCasedHeaderName:mF}=ue(),{utf8DecodeBytes:EF}=Qt(),{HTTP_TOKEN_CODEPOINTS:CF,isomorphicDecode:UI}=gt(),{isFileLike:IF}=Xd(),{makeEntry:yF}=Yo(),qA=require("node:assert"),{File:QF}=require("node:buffer"),BF=globalThis.File??QF,wF=Buffer.from('form-data; name="'),MI=Buffer.from("; filename"),bF=Buffer.from("--"),RF=Buffer.from(`--\r
4
+ `);function kF(t){for(let e=0;e<t.length;++e)if((t.charCodeAt(e)&-128)!==0)return!1;return!0}o(kF,"isAsciiString");function SF(t){let e=t.length;if(e<27||e>70)return!1;for(let n=0;n<e;++n){let r=t.charCodeAt(n);if(!(r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122||r===39||r===45||r===95))return!1}return!0}o(SF,"validateBoundary");function vF(t,e){qA(e!=="failure"&&e.essence==="multipart/form-data");let n=e.parameters.get("boundary");if(n===void 0)return"failure";let r=Buffer.from(`--${n}`,"utf8"),s=[],i={position:0};for(;t[i.position]===13&&t[i.position+1]===10;)i.position+=2;let a=t.length;for(;t[a-1]===10&&t[a-2]===13;)a-=2;for(a!==t.length&&(t=t.subarray(0,a));;){if(t.subarray(i.position,i.position+r.length).equals(r))i.position+=r.length;else return"failure";if(i.position===t.length-2&&jA(t,bF,i)||i.position===t.length-4&&jA(t,RF,i))return s;if(t[i.position]!==13||t[i.position+1]!==10)return"failure";i.position+=2;let c=xF(t,i);if(c==="failure")return"failure";let{name:l,filename:d,contentType:g,encoding:h}=c;i.position+=2;let f;{let C=t.indexOf(r.subarray(2),i.position);if(C===-1)return"failure";f=t.subarray(i.position,C-4),i.position+=f.length,h==="base64"&&(f=Buffer.from(f.toString(),"base64"))}if(t[i.position]!==13||t[i.position+1]!==10)return"failure";i.position+=2;let m;d!==null?(g??="text/plain",kF(g)||(g=""),m=new BF([f],d,{type:g})):m=EF(Buffer.from(f)),qA(FI(l)),qA(typeof m=="string"&&FI(m)||IF(m)),s.push(yF(l,m,d))}}o(vF,"multipartFormDataParser");function xF(t,e){let n=null,r=null,s=null,i=null;for(;;){if(t[e.position]===13&&t[e.position+1]===10)return n===null?"failure":{name:n,filename:r,contentType:s,encoding:i};let a=di(c=>c!==10&&c!==13&&c!==58,t,e);if(a=tg(a,!0,!0,c=>c===9||c===32),!CF.test(a.toString())||t[e.position]!==58)return"failure";switch(e.position++,di(c=>c===32||c===9,t,e),mF(a)){case"content-disposition":{if(n=r=null,!jA(t,wF,e)||(e.position+=17,n=LI(t,e),n===null))return"failure";if(jA(t,MI,e)){let c=e.position+MI.length;if(t[c]===42&&(e.position+=1,c+=1),t[c]!==61||t[c+1]!==34||(e.position+=12,r=LI(t,e),r===null))return"failure"}break}case"content-type":{let c=di(l=>l!==10&&l!==13,t,e);c=tg(c,!1,!0,l=>l===9||l===32),s=UI(c);break}case"content-transfer-encoding":{let c=di(l=>l!==10&&l!==13,t,e);c=tg(c,!1,!0,l=>l===9||l===32),i=UI(c);break}default:di(c=>c!==10&&c!==13,t,e)}if(t[e.position]!==13&&t[e.position+1]!==10)return"failure";e.position+=2}}o(xF,"parseMultipartFormDataHeaders");function LI(t,e){qA(t[e.position-1]===34);let n=di(r=>r!==10&&r!==13&&r!==34,t,e);return t[e.position]!==34?null:(e.position++,n=new TextDecoder().decode(n).replace(/%0A/ig,`
5
+ `).replace(/%0D/ig,"\r").replace(/%22/g,'"'),n)}o(LI,"parseMultipartFormDataName");function di(t,e,n){let r=n.position;for(;r<e.length&&t(e[r]);)++r;return e.subarray(n.position,n.position=r)}o(di,"collectASequenceOfBytes");function tg(t,e,n,r){let s=0,i=t.length-1;if(e)for(;s<t.length&&r(t[s]);)s++;if(n)for(;i>0&&r(t[i]);)i--;return s===0&&i===t.length-1?t:t.subarray(s,i+1)}o(tg,"removeChars");function jA(t,e,n){if(t.length<e.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[n.position+r])return!1;return!0}o(jA,"bufferStartsWith");_I.exports={multipartFormDataParser:vF,validateBoundary:SF}});var pi=T((NK,WI)=>{"use strict";var Ho=ue(),{ReadableStreamFrom:DF,isBlobLike:OI,isReadableStreamLike:TF,readableStreamClose:NF,createDeferredPromise:FF,fullyReadBody:UF,extractMimeType:MF,utf8DecodeBytes:YI}=Qt(),{FormData:GI}=Yo(),{kState:hi}=ur(),{webidl:LF}=je(),{Blob:_F}=require("node:buffer"),ng=require("node:assert"),{isErrored:HI,isDisturbed:PF}=require("node:stream"),{isArrayBuffer:OF}=require("node:util/types"),{serializeAMimeType:GF}=gt(),{multipartFormDataParser:$F}=PI(),rg;try{let t=require("node:crypto");rg=o(e=>t.randomInt(0,e),"random")}catch{rg=o(t=>Math.floor(Math.random(t)),"random")}var WA=new TextEncoder;function YF(){}o(YF,"noop");var VI=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,JI;VI&&(JI=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!PF(e)&&!HI(e)&&e.cancel("Response object has been garbage collected").catch(YF)}));function qI(t,e=!1){let n=null;t instanceof ReadableStream?n=t:OI(t)?n=t.stream():n=new ReadableStream({async pull(l){let d=typeof s=="string"?WA.encode(s):s;d.byteLength&&l.enqueue(d),queueMicrotask(()=>NF(l))},start(){},type:"bytes"}),ng(TF(n));let r=null,s=null,i=null,a=null;if(typeof t=="string")s=t,a="text/plain;charset=UTF-8";else if(t instanceof URLSearchParams)s=t.toString(),a="application/x-www-form-urlencoded;charset=UTF-8";else if(OF(t))s=new Uint8Array(t.slice());else if(ArrayBuffer.isView(t))s=new Uint8Array(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength));else if(Ho.isFormDataLike(t)){let l=`----formdata-undici-0${`${rg(1e11)}`.padStart(11,"0")}`,d=`--${l}\r
6
+ Content-Disposition: form-data`;let g=o(v=>v.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),"escape"),h=o(v=>v.replace(/\r?\n|\r/g,`\r
7
+ `),"normalizeLinefeeds"),f=[],m=new Uint8Array([13,10]);i=0;let C=!1;for(let[v,Q]of t)if(typeof Q=="string"){let x=WA.encode(d+`; name="${g(h(v))}"\r
8
+ \r
9
+ ${h(Q)}\r
10
+ `);f.push(x),i+=x.byteLength}else{let x=WA.encode(`${d}; name="${g(h(v))}"`+(Q.name?`; filename="${g(Q.name)}"`:"")+`\r
11
+ Content-Type: ${Q.type||"application/octet-stream"}\r
12
+ \r
13
+ `);f.push(x,Q,m),typeof Q.size=="number"?i+=x.byteLength+Q.size+m.byteLength:C=!0}let y=WA.encode(`--${l}--\r
14
+ `);f.push(y),i+=y.byteLength,C&&(i=null),s=t,r=o(async function*(){for(let v of f)v.stream?yield*v.stream():yield v},"action"),a=`multipart/form-data; boundary=${l}`}else if(OI(t))s=t,i=t.size,t.type&&(a=t.type);else if(typeof t[Symbol.asyncIterator]=="function"){if(e)throw new TypeError("keepalive");if(Ho.isDisturbed(t)||t.locked)throw new TypeError("Response body object should not be disturbed or locked");n=t instanceof ReadableStream?t:DF(t)}if((typeof s=="string"||Ho.isBuffer(s))&&(i=Buffer.byteLength(s)),r!=null){let l;n=new ReadableStream({async start(){l=r(t)[Symbol.asyncIterator]()},async pull(d){let{value:g,done:h}=await l.next();if(h)queueMicrotask(()=>{d.close(),d.byobRequest?.respond(0)});else if(!HI(n)){let f=new Uint8Array(g);f.byteLength&&d.enqueue(f)}return d.desiredSize>0},async cancel(d){await l.return()},type:"bytes"})}return[{stream:n,source:s,length:i},a]}o(qI,"extractBody");function HF(t,e=!1){return t instanceof ReadableStream&&(ng(!Ho.isDisturbed(t),"The body has already been consumed."),ng(!t.locked,"The stream is locked.")),qI(t,e)}o(HF,"safelyExtractBody");function VF(t,e){let[n,r]=e.stream.tee();return e.stream=n,{stream:r,length:e.length,source:e.source}}o(VF,"cloneBody");function JF(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}o(JF,"throwIfAborted");function qF(t){return{blob(){return gi(this,n=>{let r=$I(this);return r===null?r="":r&&(r=GF(r)),new _F([n],{type:r})},t)},arrayBuffer(){return gi(this,n=>new Uint8Array(n).buffer,t)},text(){return gi(this,YI,t)},json(){return gi(this,WF,t)},formData(){return gi(this,n=>{let r=$I(this);if(r!==null)switch(r.essence){case"multipart/form-data":{let s=$F(n,r);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let i=new GI;return i[hi]=s,i}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(n.toString()),i=new GI;for(let[a,c]of s)i.append(a,c);return i}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},t)},bytes(){return gi(this,n=>new Uint8Array(n),t)}}}o(qF,"bodyMixinMethods");function jF(t){Object.assign(t.prototype,qF(t))}o(jF,"mixinBody");async function gi(t,e,n){if(LF.brandCheck(t,n),jI(t))throw new TypeError("Body is unusable: Body has already been read");JF(t[hi]);let r=FF(),s=o(a=>r.reject(a),"errorSteps"),i=o(a=>{try{r.resolve(e(a))}catch(c){s(c)}},"successSteps");return t[hi].body==null?(i(Buffer.allocUnsafe(0)),r.promise):(await UF(t[hi].body,i,s),r.promise)}o(gi,"consumeBody");function jI(t){let e=t[hi].body;return e!=null&&(e.stream.locked||Ho.isDisturbed(e.stream))}o(jI,"bodyUnusable");function WF(t){return JSON.parse(YI(t))}o(WF,"parseJSONFromBytes");function $I(t){let e=t[hi].headersList,n=MF(e);return n==="failure"?null:n}o($I,"bodyMimeType");WI.exports={extractBody:qI,safelyExtractBody:HF,cloneBody:VF,mixinBody:jF,streamRegistry:JI,hasFinalizationRegistry:VI,bodyUnusable:jI}});var ly=T((UK,uy)=>{"use strict";var j=require("node:assert"),J=ue(),{channels:zI}=ni(),sg=Pd(),{RequestContentLengthMismatchError:ss,ResponseContentLengthMismatchError:ZI,RequestAbortedError:iy,InvalidArgumentError:zF,HeadersTimeoutError:ZF,HeadersOverflowError:KF,SocketError:fi,InformationalError:is,BodyTimeoutError:XF,HTTPParserError:eU,ResponseExceededMaxSizeError:tU}=pe(),{kUrl:oy,kReset:ht,kClient:XA,kParser:Re,kBlocking:qo,kRunning:_e,kPending:ay,kSize:KI,kWriting:lr,kQueue:Wt,kNoRef:Vo,kKeepAliveDefaultTimeout:nU,kHostHeader:rU,kPendingIdx:sU,kRunningIdx:Pt,kError:it,kPipelining:ec,kSocket:os,kKeepAliveTimeoutValue:nc,kMaxHeadersSize:ig,kKeepAliveMaxTimeout:iU,kKeepAliveTimeoutThreshold:oU,kHeadersTimeout:aU,kBodyTimeout:AU,kStrictContentLength:Ag,kMaxRequests:XI,kCounter:cU,kMaxResponseSize:uU,kOnError:ey,kResume:_n,kHTTPContext:Ay}=Se(),Bt=JC(),ty=Buffer.alloc(0),zA=Buffer[Symbol.species],ZA=J.addListener,lU=J.removeAllListeners,as=Symbol("kIdleSocketValidation"),mi=Symbol("kIdleSocketValidationTimeout"),dg=Symbol("kSocketUsed"),og;async function dU(){let t=process.env.JEST_WORKER_ID?$d():void 0,e;try{e=await WebAssembly.compile(WC())}catch{e=await WebAssembly.compile(t||$d())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:o((n,r,s)=>0,"wasm_on_url"),wasm_on_status:o((n,r,s)=>{j(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onStatus(new zA(hn.buffer,i,s))||0},"wasm_on_status"),wasm_on_message_begin:o(n=>(j(Fe.ptr===n),Fe.onMessageBegin()||0),"wasm_on_message_begin"),wasm_on_header_field:o((n,r,s)=>{j(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onHeaderField(new zA(hn.buffer,i,s))||0},"wasm_on_header_field"),wasm_on_header_value:o((n,r,s)=>{j(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onHeaderValue(new zA(hn.buffer,i,s))||0},"wasm_on_header_value"),wasm_on_headers_complete:o((n,r,s,i)=>(j(Fe.ptr===n),Fe.onHeadersComplete(r,!!s,!!i)||0),"wasm_on_headers_complete"),wasm_on_body:o((n,r,s)=>{j(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onBody(new zA(hn.buffer,i,s))||0},"wasm_on_body"),wasm_on_message_complete:o(n=>(j(Fe.ptr===n),Fe.onMessageComplete()||0),"wasm_on_message_complete")}})}o(dU,"lazyllhttp");var ag=null,cg=dU();cg.catch();var Fe=null,hn=null,KA=0,pn=null,gU=0,Jo=1,Ei=2|Jo,tc=4|Jo,ug=8|gU,lg=class{static{o(this,"Parser")}constructor(e,n,{exports:r}){j(Number.isFinite(e[ig])&&e[ig]>0),this.llhttp=r,this.ptr=this.llhttp.llhttp_alloc(Bt.TYPE.RESPONSE),this.client=e,this.socket=n,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=null,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=e[ig],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=e[uU]}setTimeout(e,n){e!==this.timeoutValue||n&Jo^this.timeoutType&Jo?(this.timeout&&(sg.clearTimeout(this.timeout),this.timeout=null),e&&(n&Jo?this.timeout=sg.setFastTimeout(ny,e,new WeakRef(this)):(this.timeout=setTimeout(ny,e,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=n}resume(){this.socket.destroyed||!this.paused||(j(this.ptr!=null),j(Fe==null),this.llhttp.llhttp_resume(this.ptr),j(this.timeoutType===tc),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||ty),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){j(this.ptr!=null),j(Fe==null),j(!this.paused);let{socket:n,llhttp:r}=this;e.length>KA&&(pn&&r.free(pn),KA=Math.ceil(e.length/4096)*4096,pn=r.malloc(KA)),new Uint8Array(r.memory.buffer,pn,KA).set(e);try{let s;try{hn=e,Fe=this,s=r.llhttp_execute(this.ptr,pn,e.length)}catch(a){throw a}finally{Fe=null,hn=null}let i=r.llhttp_get_error_pos(this.ptr)-pn;if(s!==Bt.ERROR.OK){let a=e.subarray(i);if(s===Bt.ERROR.PAUSED_UPGRADE)this.onUpgrade(a);else if(s===Bt.ERROR.PAUSED)this.paused=!0,n.unshift(a);else throw this.createError(s,a)}}catch(s){J.destroy(n,s)}}finish(){j(Fe===null),j(this.ptr!=null),j(!this.paused);let{llhttp:e}=this,n;try{Fe=this,n=e.llhttp_finish(this.ptr)}finally{Fe=null}return n===Bt.ERROR.OK?null:n===Bt.ERROR.PAUSED||n===Bt.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(n,ty)}createError(e,n){let{llhttp:r,contentLength:s,bytesRead:i}=this;if(s&&i!==parseInt(s,10))return new ZI;let a=r.llhttp_get_error_reason(this.ptr),c="";if(a){let l=new Uint8Array(r.memory.buffer,a).indexOf(0);c="Response does not match the HTTP/1.1 protocol ("+Buffer.from(r.memory.buffer,a,l).toString()+")"}return new eU(c,Bt.ERROR[e],n)}destroy(){j(this.ptr!=null),j(Fe==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&sg.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(e){this.statusText=e.toString()}onMessageBegin(){let{socket:e,client:n}=this;if(e.destroyed)return-1;if(n[_e]===0)return J.destroy(e,new fi("bad response",J.getSocketInfo(e))),-1;let r=n[Wt][n[Pt]];if(!r)return-1;r.onResponseStarted()}onHeaderField(e){let n=this.headers.length;(n&1)===0?this.headers.push(e):this.headers[n-1]=Buffer.concat([this.headers[n-1],e]),this.trackHeader(e.length)}onHeaderValue(e){let n=this.headers.length;(n&1)===1?(this.headers.push(e),n+=1):this.headers[n-1]=Buffer.concat([this.headers[n-1],e]);let r=this.headers[n-2];if(r.length===10){let s=J.bufferToLowerCasedHeaderName(r);s==="keep-alive"?this.keepAlive+=e.toString():s==="connection"&&(this.connection+=e.toString())}else r.length===14&&J.bufferToLowerCasedHeaderName(r)==="content-length"&&(this.contentLength+=e.toString());this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&J.destroy(this.socket,new KF)}onUpgrade(e){let{upgrade:n,client:r,socket:s,headers:i,statusCode:a,statusText:c}=this;j(n),j(r[os]===s),j(!s.destroyed),j(!this.paused),j((i.length&1)===0);let l=r[Wt][r[Pt]];j(l),j(l.upgrade||l.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,s.unshift(e),s[Re].destroy(),s[Re]=null,s[XA]=null,s[it]=null,lU(s),r[os]=null,r[Ay]=null,r[Wt][r[Pt]++]=null,r.emit("disconnect",r[oy],[r],new is("upgrade"));try{l.onUpgrade(a,i,s,c)}catch(d){J.errorRequest(r,l,d),J.destroy(s,d)}r[_n]()}onHeadersComplete(e,n,r){let{client:s,socket:i,headers:a,statusText:c}=this;if(i.destroyed)return-1;if(s[_e]===0)return J.destroy(i,new fi("bad response",J.getSocketInfo(i))),-1;let l=s[Wt][s[Pt]];if(!l)return-1;if(j(!this.upgrade),j(this.statusCode<200),e===100)return J.destroy(i,new fi("bad response",J.getSocketInfo(i))),-1;if(n&&!l.upgrade)return J.destroy(i,new fi("bad upgrade",J.getSocketInfo(i))),-1;if(j(this.timeoutType===Ei),this.statusCode=e,this.shouldKeepAlive=r||l.method==="HEAD"&&!i[ht]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let g=l.bodyTimeout!=null?l.bodyTimeout:s[AU];this.setTimeout(g,tc)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method==="CONNECT")return j(s[_e]===1),this.upgrade=!0,2;if(n)return j(s[_e]===1),this.upgrade=!0,2;if(j((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&s[ec]){let g=this.keepAlive?J.parseKeepAliveTimeout(this.keepAlive):null;if(g!=null){let h=Math.min(g-s[oU],s[iU]);h<=0?i[ht]=!0:s[nc]=h}else s[nc]=s[nU]}else i[ht]=!0;let d=l.onHeaders(e,a,this.resume,c)===!1;return l.aborted?-1:l.method==="HEAD"||e<200?1:(i[qo]&&(i[qo]=!1,s[_n]()),d?Bt.ERROR.PAUSED:0)}onBody(e){let{client:n,socket:r,statusCode:s,maxResponseSize:i}=this;if(r.destroyed)return-1;let a=n[Wt][n[Pt]];if(j(a),j(this.timeoutType===tc),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),j(s>=200),i>-1&&this.bytesRead+e.length>i)return J.destroy(r,new tU),-1;if(this.bytesRead+=e.length,a.onData(e)===!1)return Bt.ERROR.PAUSED}onMessageComplete(){let{client:e,socket:n,statusCode:r,upgrade:s,headers:i,contentLength:a,bytesRead:c,shouldKeepAlive:l}=this;if(n.destroyed&&(!r||l))return-1;if(s)return;j(r>=100),j((this.headers.length&1)===0);let d=e[Wt][e[Pt]];if(j(d),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(r<200)){if(d.method!=="HEAD"&&a&&c!==parseInt(a,10))return J.destroy(n,new ZI),-1;if(d.onComplete(i),e[Wt][e[Pt]++]=null,n[dg]=!0,n[lr])return j(e[_e]===0),J.destroy(n,new is("reset")),Bt.ERROR.PAUSED;if(l){if(n[ht]&&e[_e]===0)return J.destroy(n,new is("reset")),Bt.ERROR.PAUSED;e[ec]==null||e[ec]===1?setImmediate(()=>e[_n]()):e[_n]()}else return J.destroy(n,new is("reset")),Bt.ERROR.PAUSED}}};function ny(t){let{socket:e,timeoutType:n,client:r,paused:s}=t.deref();n===Ei?(!e[lr]||e.writableNeedDrain||r[_e]>1)&&(j(!s,"cannot be paused while waiting for headers"),J.destroy(e,new ZF)):n===tc?s||J.destroy(e,new XF):n===ug&&(j(r[_e]===0&&r[nc]),J.destroy(e,new is("socket idle timeout")))}o(ny,"onParserTimeout");async function hU(t,e){t[os]=e,ag||(ag=await cg,cg=null),e[Vo]=!1,e[lr]=!1,e[ht]=!1,e[qo]=!1,e[as]=0,e[mi]=null,e[dg]=!1,e[Re]=new lg(t,e,ag),ZA(e,"error",function(r){j(r.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let s=this[Re];if(r.code==="ECONNRESET"&&s.statusCode&&!s.shouldKeepAlive){let i=s.finish();i&&(this[it]=i,this[XA][ey](i));return}this[it]=r,this[XA][ey](r)}),ZA(e,"readable",function(){let r=this[Re];r&&r.readMore()}),ZA(e,"end",function(){let r=this[Re];if(r.statusCode&&!r.shouldKeepAlive){let s=r.finish();s&&J.destroy(this,s);return}J.destroy(this,new fi("other side closed",J.getSocketInfo(this)))}),ZA(e,"close",function(){let r=this[XA],s=this[Re];cy(this),s&&(!this[it]&&s.statusCode&&!s.shouldKeepAlive&&(this[it]=s.finish()||this[it]),this[Re].destroy(),this[Re]=null);let i=this[it]||new fi("closed",J.getSocketInfo(this));if(r[os]=null,r[Ay]=null,r.destroyed){j(r[ay]===0);let a=r[Wt].splice(r[Pt]);for(let c=0;c<a.length;c++){let l=a[c];J.errorRequest(r,l,i)}}else if(r[_e]>0&&i.code!=="UND_ERR_INFO"){let a=r[Wt][r[Pt]];r[Wt][r[Pt]++]=null,J.errorRequest(r,a,i)}r[sU]=r[Pt],j(r[_e]===0),r.emit("disconnect",r[oy],[r],i),r[_n]()});let n=!1;return e.on("close",()=>{n=!0}),{version:"h1",defaultPipelining:1,write(...r){return EU(t,...r)},resume(){fU(t)},destroy(r,s){n?queueMicrotask(s):e.destroy(r).on("close",s)},get destroyed(){return e.destroyed},busy(r){return!!(e[lr]||e[ht]||e[qo]||e[as]===1||r&&(t[_e]>0&&!r.idempotent||t[_e]>0&&(r.upgrade||r.method==="CONNECT")||t[_e]>0&&J.bodyLength(r.body)!==0&&(J.isStream(r.body)||J.isAsyncIterable(r.body)||J.isFormDataLike(r.body))))}}}o(hU,"connectH1");function cy(t){t[mi]&&(clearImmediate(t[mi]),t[mi]=null),t[as]=0}o(cy,"clearIdleSocketValidation");function pU(t,e){e[as]=1,e[mi]=setImmediate(()=>{e[mi]=null,e[as]=2,t[os]===e&&!e.destroyed&&t[_n]()})}o(pU,"scheduleIdleSocketValidation");function fU(t){let e=t[os];if(e&&!e.destroyed){if(t[KI]===0?!e[Vo]&&e.unref&&(e.unref(),e[Vo]=!0):e[Vo]&&e.ref&&(e.ref(),e[Vo]=!1),t[_e]===0&&t[ay]>0&&e[dg]){if(e[as]===0)return pU(t,e),e[Re].readMore(),e.destroyed,void 0;if(e[as]===1)return e[Re].readMore(),e.destroyed,void 0}if(t[_e]===0&&(e[Re].readMore(),e.destroyed))return;if(t[KI]===0)e[Re].timeoutType!==ug&&e[Re].setTimeout(t[nc],ug);else if(t[_e]>0&&e[Re].statusCode<200&&e[Re].timeoutType!==Ei){let n=t[Wt][t[Pt]],r=n.headersTimeout!=null?n.headersTimeout:t[aU];e[Re].setTimeout(r,Ei)}}}o(fU,"resumeH1");function mU(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}o(mU,"shouldSendContentLength");function EU(t,e){let{method:n,path:r,host:s,upgrade:i,blocking:a,reset:c}=e,{body:l,headers:d,contentLength:g}=e,h=n==="PUT"||n==="POST"||n==="PATCH"||n==="QUERY"||n==="PROPFIND"||n==="PROPPATCH";if(J.isFormDataLike(l)){og||(og=pi().extractBody);let[v,Q]=og(l);e.contentType==null&&d.push("content-type",Q),l=v.stream,g=v.length}else if(J.isBlobLike(l)&&e.contentType==null){let v=l.type;if(v){let Q=`${v}`;if(!J.isValidHeaderValue(Q))return J.errorRequest(t,e,new zF("invalid content-type header")),!1;d.push("content-type",Q)}}l&&typeof l.read=="function"&&l.read(0);let f=J.bodyLength(l);if(g=f??g,g===null&&(g=e.contentLength),g===0&&!h&&(g=null),mU(n)&&g>0&&e.contentLength!==null&&e.contentLength!==g){if(t[Ag])return J.errorRequest(t,e,new ss),!1;process.emitWarning(new ss)}let m=t[os];cy(m);let C=o(v=>{if(!e.aborted){if(e.completed){(e.upgrade||e.method==="CONNECT")&&J.destroy(m,new is("aborted"));return}J.errorRequest(t,e,v||new iy),J.destroy(l),J.destroy(m,new is("aborted"))}},"abort");try{e.onConnect(C)}catch(v){J.errorRequest(t,e,v)}if(e.aborted)return!1;n==="HEAD"&&(m[ht]=!0),(i||n==="CONNECT")&&(m[ht]=!0),c!=null&&(m[ht]=c),t[XI]&&m[cU]++>=t[XI]&&(m[ht]=!0),a&&(m[qo]=!0);let y=`${n} ${r} HTTP/1.1\r
15
+ `;if(typeof s=="string"?y+=`host: ${s}\r
16
+ `:y+=t[rU],i?y+=`connection: upgrade\r
17
+ upgrade: ${i}\r
18
+ `:t[ec]&&!m[ht]?y+=`connection: keep-alive\r
19
+ `:y+=`connection: close\r
20
+ `,Array.isArray(d))for(let v=0;v<d.length;v+=2){let Q=d[v+0],x=d[v+1];if(Array.isArray(x))for(let G=0;G<x.length;G++)y+=`${Q}: ${x[G]}\r
21
+ `;else y+=`${Q}: ${x}\r
22
+ `}return zI.sendHeaders.hasSubscribers&&zI.sendHeaders.publish({request:e,headers:y,socket:m}),!l||f===0?ry(C,null,t,e,m,g,y,h):J.isBuffer(l)?ry(C,l,t,e,m,g,y,h):J.isBlobLike(l)?typeof l.stream=="function"?sy(C,l.stream(),t,e,m,g,y,h):IU(C,l,t,e,m,g,y,h):J.isStream(l)?CU(C,l,t,e,m,g,y,h):J.isIterable(l)?sy(C,l,t,e,m,g,y,h):j(!1),!0}o(EU,"writeH1");function CU(t,e,n,r,s,i,a,c){j(i!==0||n[_e]===0,"stream body cannot be pipelined");let l=!1,d=new rc({abort:t,socket:s,request:r,contentLength:i,client:n,expectsPayload:c,header:a}),g=o(function(C){if(!l)try{!d.write(C)&&this.pause&&this.pause()}catch(y){J.destroy(this,y)}},"onData"),h=o(function(){l||e.resume&&e.resume()},"onDrain"),f=o(function(){if(queueMicrotask(()=>{e.removeListener("error",m)}),!l){let C=new iy;queueMicrotask(()=>m(C))}},"onClose"),m=o(function(C){if(!l){if(l=!0,j(s.destroyed||s[lr]&&n[_e]<=1),s.off("drain",h).off("error",m),e.removeListener("data",g).removeListener("end",m).removeListener("close",f),!C)try{d.end()}catch(y){C=y}d.destroy(C),C&&(C.code!=="UND_ERR_INFO"||C.message!=="reset")?J.destroy(e,C):J.destroy(e)}},"onFinished");e.on("data",g).on("end",m).on("error",m).on("close",f),e.resume&&e.resume(),s.on("drain",h).on("error",m),e.errorEmitted??e.errored?setImmediate(()=>m(e.errored)):(e.endEmitted??e.readableEnded)&&setImmediate(()=>m(null)),(e.closeEmitted??e.closed)&&setImmediate(f)}o(CU,"writeStream");function ry(t,e,n,r,s,i,a,c){try{e?J.isBuffer(e)&&(j(i===e.byteLength,"buffer body must have content length"),s.cork(),s.write(`${a}content-length: ${i}\r
23
+ \r
24
+ `,"latin1"),s.write(e),s.uncork(),r.onBodySent(e),!c&&r.reset!==!1&&(s[ht]=!0)):i===0?s.write(`${a}content-length: 0\r
25
+ \r
26
+ `,"latin1"):(j(i===null,"no body must not have content length"),s.write(`${a}\r
27
+ `,"latin1")),r.onRequestSent(),n[_n]()}catch(l){t(l)}}o(ry,"writeBuffer");async function IU(t,e,n,r,s,i,a,c){j(i===e.size,"blob body must have content length");try{if(i!=null&&i!==e.size)throw new ss;let l=Buffer.from(await e.arrayBuffer());s.cork(),s.write(`${a}content-length: ${i}\r
28
+ \r
29
+ `,"latin1"),s.write(l),s.uncork(),r.onBodySent(l),r.onRequestSent(),!c&&r.reset!==!1&&(s[ht]=!0),n[_n]()}catch(l){t(l)}}o(IU,"writeBlob");async function sy(t,e,n,r,s,i,a,c){j(i!==0||n[_e]===0,"iterator body cannot be pipelined");let l=null;function d(){if(l){let f=l;l=null,f()}}o(d,"onDrain");let g=o(()=>new Promise((f,m)=>{j(l===null),s[it]?m(s[it]):l=f}),"waitForDrain");s.on("close",d).on("drain",d);let h=new rc({abort:t,socket:s,request:r,contentLength:i,client:n,expectsPayload:c,header:a});try{for await(let f of e){if(s[it])throw s[it];h.write(f)||await g()}h.end()}catch(f){h.destroy(f)}finally{s.off("close",d).off("drain",d)}}o(sy,"writeIterable");var rc=class{static{o(this,"AsyncWriter")}constructor({abort:e,socket:n,request:r,contentLength:s,client:i,expectsPayload:a,header:c}){this.socket=n,this.request=r,this.contentLength=s,this.client=i,this.bytesWritten=0,this.expectsPayload=a,this.header=c,this.abort=e,n[lr]=!0}write(e){let{socket:n,request:r,contentLength:s,client:i,bytesWritten:a,expectsPayload:c,header:l}=this;if(n[it])throw n[it];if(n.destroyed)return!1;let d=Buffer.byteLength(e);if(!d)return!0;if(s!==null&&a+d>s){if(i[Ag])throw new ss;process.emitWarning(new ss)}n.cork(),a===0&&(!c&&r.reset!==!1&&(n[ht]=!0),s===null?n.write(`${l}transfer-encoding: chunked\r
30
+ `,"latin1"):n.write(`${l}content-length: ${s}\r
31
+ \r
32
+ `,"latin1")),s===null&&n.write(`\r
33
+ ${d.toString(16)}\r
34
+ `,"latin1"),this.bytesWritten+=d;let g=n.write(e);return n.uncork(),r.onBodySent(e),g||n[Re].timeout&&n[Re].timeoutType===Ei&&n[Re].timeout.refresh&&n[Re].timeout.refresh(),g}end(){let{socket:e,contentLength:n,client:r,bytesWritten:s,expectsPayload:i,header:a,request:c}=this;if(c.onRequestSent(),e[lr]=!1,e[it])throw e[it];if(!e.destroyed){if(s===0?i?e.write(`${a}content-length: 0\r
35
+ \r
36
+ `,"latin1"):e.write(`${a}\r
37
+ `,"latin1"):n===null&&e.write(`\r
38
+ 0\r
39
+ \r
40
+ `,"latin1"),n!==null&&s!==n){if(r[Ag])throw new ss;process.emitWarning(new ss)}e[Re].timeout&&e[Re].timeoutType===Ei&&e[Re].timeout.refresh&&e[Re].timeout.refresh(),r[_n]()}}destroy(e){let{socket:n,client:r,abort:s}=this;n[lr]=!1,e&&(j(r[_e]<=1,"pipeline should only contain this request"),s(e))}};uy.exports=hU});var Cy=T((LK,Ey)=>{"use strict";var Ot=require("node:assert"),{errorMonitor:gg}=require("node:events"),{pipeline:yU}=require("node:stream"),de=ue(),{RequestContentLengthMismatchError:pg,RequestAbortedError:hg,SocketError:jo,InformationalError:sc}=pe(),{kUrl:ic,kReset:ac,kClient:Ci,kRunning:Ac,kPending:QU,kQueue:As,kPendingIdx:mg,kRunningIdx:fn,kError:Zt,kSocket:Ye,kStrictContentLength:BU,kOnError:Eg,kMaxConcurrentStreams:fy,kHTTP2Session:zt,kResume:gr,kSize:wU,kHTTPContext:bU}=Se(),dr=Symbol("open streams"),dy,gy=!1,oc;try{oc=require("node:http2")}catch{oc={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:RU,HTTP2_HEADER_METHOD:kU,HTTP2_HEADER_PATH:SU,HTTP2_HEADER_SCHEME:vU,HTTP2_HEADER_CONTENT_LENGTH:xU,HTTP2_HEADER_EXPECT:DU,HTTP2_HEADER_STATUS:fg}}=oc;function my(t){let e=[];for(let[n,r]of Object.entries(t))if(Array.isArray(r))for(let s of r)e.push(Buffer.from(n),Buffer.from(s));else e.push(Buffer.from(n),Buffer.from(r));return e}o(my,"parseH2Headers");function TU(t){let{[fg]:e,...n}=t;return my(n)}o(TU,"parseH2ResponseHeaders");async function NU(t,e){t[Ye]=e,gy||(gy=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let n=oc.connect(t[ic],{createConnection:o(()=>e,"createConnection"),peerMaxConcurrentStreams:t[fy]});n[dr]=0,n[Ci]=t,n[Ye]=e,de.addListener(n,"error",UU),de.addListener(n,"frameError",MU),de.addListener(n,"end",LU),de.addListener(n,"goaway",_U),de.addListener(n,"close",function(){let{[Ci]:s}=this,{[Ye]:i}=s,a=this[Ye][Zt]||this[Zt]||new jo("closed",de.getSocketInfo(i));if(s[zt]=null,s.destroyed){Ot(s[QU]===0);let c=s[As].splice(s[fn]);for(let l=0;l<c.length;l++){let d=c[l];de.errorRequest(s,d,a)}}}),n.unref(),t[zt]=n,e[zt]=n,de.addListener(e,"error",function(s){Ot(s.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Zt]=s,this[Ci][Eg](s)}),de.addListener(e,"end",function(){de.destroy(this,new jo("other side closed",de.getSocketInfo(this)))}),de.addListener(e,"close",function(){let s=this[Zt]||new jo("closed",de.getSocketInfo(this));t[Ye]=null,this[zt]!=null&&this[zt].destroy(s),t[mg]=t[fn],Ot(t[Ac]===0),t.emit("disconnect",t[ic],[t],s),t[gr]()});let r=!1;return e.on("close",()=>{r=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return OU(t,...s)},resume(){FU(t)},destroy(s,i){r?queueMicrotask(i):e.destroy(s).on("close",i)},get destroyed(){return e.destroyed},busy(){return!1}}}o(NU,"connectH2");function FU(t){let e=t[Ye];e?.destroyed===!1&&(t[wU]===0&&t[fy]===0?(e.unref(),t[zt].unref()):(e.ref(),t[zt].ref()))}o(FU,"resumeH2");function UU(t){Ot(t.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[Ye][Zt]=t,this[Ci][Eg](t)}o(UU,"onHttp2SessionError");function MU(t,e,n){if(n===0){let r=new sc(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[Ye][Zt]=r,this[Ci][Eg](r)}}o(MU,"onHttp2FrameError");function LU(){let t=new jo("other side closed",de.getSocketInfo(this[Ye]));this.destroy(t),de.destroy(this[Ye],t)}o(LU,"onHttp2SessionEnd");function _U(t){let e=this[Zt]||new jo(`HTTP/2: "GOAWAY" frame received with code ${t}`,de.getSocketInfo(this)),n=this[Ci];if(n[Ye]=null,n[bU]=null,this[zt]!=null&&(this[zt].destroy(e),this[zt]=null),de.destroy(this[Ye],e),n[fn]<n[As].length){let r=n[As][n[fn]];n[As][n[fn]++]=null,de.errorRequest(n,r,e),n[mg]=n[fn]}Ot(n[Ac]===0),n.emit("disconnect",n[ic],[n],e),n[gr]()}o(_U,"onHTTP2GoAway");function PU(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}o(PU,"shouldSendContentLength");function OU(t,e){let n=t[zt],{method:r,path:s,host:i,upgrade:a,expectContinue:c,signal:l,headers:d}=e,{body:g}=e;if(a)return de.errorRequest(t,e,new Error("Upgrade not supported for H2")),!1;let h={};for(let P=0;P<d.length;P+=2){let ae=d[P+0],Ee=d[P+1];if(Array.isArray(Ee))for(let Ce=0;Ce<Ee.length;Ce++)h[ae]?h[ae]+=`,${Ee[Ce]}`:h[ae]=Ee[Ce];else h[ae]=Ee}let f,{hostname:m,port:C}=t[ic];h[RU]=i||`${m}${C?`:${C}`:""}`,h[kU]=r;let y=o(P=>{if(!e.aborted){if(e.completed){r==="CONNECT"&&f!=null&&de.destroy(f,P||new hg);return}P=P||new hg,de.errorRequest(t,e,P),f!=null&&de.destroy(f,P),de.destroy(g,P),t[As][t[fn]++]=null,t[gr]()}},"abort");try{e.onConnect(y)}catch(P){de.errorRequest(t,e,P)}if(e.aborted)return!1;if(r==="CONNECT"){n.ref(),f=n.request(h,{endStream:!1,signal:l});let P=!1,ae=o(De=>{P=!0,f.off(gg,Ee),e.onUpgradeResponse(Number(De[fg]),De,TU)},"onResponse"),Ee=o(De=>{P=!0,f.off("response",ae),e.onUpgradeError(De)},"onUpgradeError"),Ce=o(()=>{try{e.onUpgrade(null,null,f)}catch(De){f.off("response",ae),y(De);return}e.aborted||(f.off("error",y),f.once(gg,Ee),t[As][t[fn]++]=null)},"onReady");return f.once("response",ae),f.once("error",y),++n[dr],Ce(),f.once("close",()=>{!P&&e.completed&&(f.off("response",ae),f.off(gg,Ee),e.onUpgradeError(new sc(`HTTP/2: "stream error" received - code ${f.rstCode}`))),n[dr]-=1,n[dr]===0&&n.unref()}),!0}h[SU]=s,h[vU]="https";let v=r==="PUT"||r==="POST"||r==="PATCH";g&&typeof g.read=="function"&&g.read(0);let Q=de.bodyLength(g);if(de.isFormDataLike(g)){dy??=pi().extractBody;let[P,ae]=dy(g);h["content-type"]=ae,g=P.stream,Q=P.length}if(Q==null&&(Q=e.contentLength),(Q===0||!v)&&(Q=null),PU(r)&&Q>0&&e.contentLength!=null&&e.contentLength!==Q){if(t[BU])return de.errorRequest(t,e,new pg),!1;process.emitWarning(new pg)}Q!=null&&(Ot(g,"no body must not have content length"),h[xU]=`${Q}`),n.ref();let x=r==="GET"||r==="HEAD"||g===null;return c?(h[DU]="100-continue",f=n.request(h,{endStream:x,signal:l}),f.once("continue",G)):(f=n.request(h,{endStream:x,signal:l}),G()),++n[dr],f.once("response",P=>{let{[fg]:ae,...Ee}=P;if(e.onResponseStarted(),e.aborted){let Ce=new hg;de.errorRequest(t,e,Ce),de.destroy(f,Ce);return}e.onHeaders(Number(ae),my(Ee),f.resume.bind(f),"")===!1&&f.pause(),f.on("data",Ce=>{e.onData(Ce)===!1&&f.pause()})}),f.once("end",()=>{(f.state?.state==null||f.state.state<6)&&e.onComplete([]),n[dr]===0&&n.unref(),y(new sc("HTTP/2: stream half-closed (remote)")),t[As][t[fn]++]=null,t[mg]=t[fn],t[gr]()}),f.once("close",()=>{n[dr]-=1,n[dr]===0&&n.unref()}),f.once("error",function(P){y(P)}),f.once("frameError",(P,ae)=>{y(new sc(`HTTP/2: "frameError" received - type ${P}, code ${ae}`))}),!0;function G(){!g||Q===0?hy(y,f,null,t,e,t[Ye],Q,v):de.isBuffer(g)?hy(y,f,g,t,e,t[Ye],Q,v):de.isBlobLike(g)?typeof g.stream=="function"?py(y,f,g.stream(),t,e,t[Ye],Q,v):$U(y,f,g,t,e,t[Ye],Q,v):de.isStream(g)?GU(y,t[Ye],v,f,g,t,e,Q):de.isIterable(g)?py(y,f,g,t,e,t[Ye],Q,v):Ot(!1)}o(G,"writeBodyH2")}o(OU,"writeH2");function hy(t,e,n,r,s,i,a,c){try{n!=null&&de.isBuffer(n)&&(Ot(a===n.byteLength,"buffer body must have content length"),e.cork(),e.write(n),e.uncork(),e.end(),s.onBodySent(n)),c||(i[ac]=!0),s.onRequestSent(),r[gr]()}catch(l){t(l)}}o(hy,"writeBuffer");function GU(t,e,n,r,s,i,a,c){Ot(c!==0||i[Ac]===0,"stream body cannot be pipelined");let l=yU(s,r,g=>{g?(de.destroy(l,g),t(g)):(de.removeAllListeners(l),a.onRequestSent(),n||(e[ac]=!0),i[gr]())});de.addListener(l,"data",d);function d(g){a.onBodySent(g)}o(d,"onPipeData")}o(GU,"writeStream");async function $U(t,e,n,r,s,i,a,c){Ot(a===n.size,"blob body must have content length");try{if(a!=null&&a!==n.size)throw new pg;let l=Buffer.from(await n.arrayBuffer());e.cork(),e.write(l),e.uncork(),e.end(),s.onBodySent(l),s.onRequestSent(),c||(i[ac]=!0),r[gr]()}catch(l){t(l)}}o($U,"writeBlob");async function py(t,e,n,r,s,i,a,c){Ot(a!==0||r[Ac]===0,"iterator body cannot be pipelined");let l=null;function d(){if(l){let h=l;l=null,h()}}o(d,"onDrain");let g=o(()=>new Promise((h,f)=>{Ot(l===null),i[Zt]?f(i[Zt]):l=h}),"waitForDrain");e.on("close",d).on("drain",d);try{for await(let h of n){if(i[Zt])throw i[Zt];let f=e.write(h);s.onBodySent(h),f||await g()}e.end(),s.onRequestSent(),c||(i[ac]=!0),r[gr]()}catch(h){t(h)}finally{e.off("close",d).off("drain",d)}}o(py,"writeIterable");Ey.exports=NU});var uc=T((PK,Qy)=>{"use strict";var mn=ue(),{kBodyUsed:Wo}=Se(),Ig=require("node:assert"),{InvalidArgumentError:YU}=pe(),HU=require("node:events"),VU=[300,301,302,303,307,308],Iy=Symbol("body"),cc=class{static{o(this,"BodyAsyncIterable")}constructor(e){this[Iy]=e,this[Wo]=!1}async*[Symbol.asyncIterator](){Ig(!this[Wo],"disturbed"),this[Wo]=!0,yield*this[Iy]}},Cg=class{static{o(this,"RedirectHandler")}constructor(e,n,r,s){if(n!=null&&(!Number.isInteger(n)||n<0))throw new YU("maxRedirections must be a positive number");mn.validateHandler(s,r.method,r.upgrade),this.dispatch=e,this.location=null,this.abort=null,this.opts={...r,maxRedirections:0},this.maxRedirections=n,this.handler=s,this.history=[],this.redirectionLimitReached=!1,mn.isStream(this.opts.body)?(mn.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Ig(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[Wo]=!1,HU.prototype.on.call(this.opts.body,"data",function(){this[Wo]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new cc(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&mn.isIterable(this.opts.body)&&(this.opts.body=new cc(this.opts.body))}onConnect(e){this.abort=e,this.handler.onConnect(e,{history:this.history})}onUpgrade(e,n,r){this.handler.onUpgrade(e,n,r)}onError(e){this.handler.onError(e)}onHeaders(e,n,r,s){if(this.location=this.history.length>=this.maxRedirections||mn.isDisturbed(this.opts.body)?null:JU(e,n),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(e,n,r,s);let{origin:i,pathname:a,search:c}=mn.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),l=c?`${a}${c}`:a;this.opts.headers=qU(this.opts.headers,e===303,this.opts.origin!==i),this.opts.path=l,this.opts.origin=i,this.opts.maxRedirections=0,this.opts.query=null,e===303&&this.opts.method!=="HEAD"&&(this.opts.method="GET",this.opts.body=null)}onData(e){if(!this.location)return this.handler.onData(e)}onComplete(e){this.location?(this.location=null,this.abort=null,this.dispatch(this.opts,this)):this.handler.onComplete(e)}onBodySent(e){this.handler.onBodySent&&this.handler.onBodySent(e)}};function JU(t,e){if(VU.indexOf(t)===-1)return null;for(let n=0;n<e.length;n+=2)if(e[n].length===8&&mn.headerNameToString(e[n])==="location")return e[n+1]}o(JU,"parseLocation");function yy(t,e,n){if(t.length===4)return mn.headerNameToString(t)==="host";if(e&&mn.headerNameToString(t).startsWith("content-"))return!0;if(n&&(t.length===13||t.length===6||t.length===19)){let r=mn.headerNameToString(t);return r==="authorization"||r==="cookie"||r==="proxy-authorization"}return!1}o(yy,"shouldRemoveHeader");function qU(t,e,n){let r=[];if(Array.isArray(t))for(let s=0;s<t.length;s+=2)yy(t[s],e,n)||r.push(t[s],t[s+1]);else if(t&&typeof t=="object")for(let s of Object.keys(t))yy(s,e,n)||r.push(s,t[s]);else Ig(t==null,"headers must be an object or an array");return r}o(qU,"cleanRequestHeaders");Qy.exports=Cg});var lc=T((GK,By)=>{"use strict";var jU=uc();function WU({maxRedirections:t}){return e=>o(function(r,s){let{maxRedirections:i=t}=r;if(!i)return e(r,s);let a=new jU(e,i,r,s);return r={...r,maxRedirections:0},e(r,a)},"Intercept")}o(WU,"createRedirectInterceptor");By.exports=WU});var Qi=T((YK,Ny)=>{"use strict";var Pn=require("node:assert"),vy=require("node:net"),zU=require("node:http"),cs=ue(),{channels:Ii}=ni(),ZU=NC(),KU=oi(),{InvalidArgumentError:Ue,InformationalError:XU,ClientDestroyedError:eM}=pe(),tM=Mo(),{kUrl:En,kServerName:hr,kClient:nM,kBusy:yg,kConnect:rM,kResuming:us,kRunning:ea,kPending:ta,kSize:Xo,kQueue:Kt,kConnected:sM,kConnecting:yi,kNeedDrain:fr,kKeepAliveDefaultTimeout:wy,kHostHeader:iM,kPendingIdx:Xt,kRunningIdx:On,kError:oM,kPipelining:dc,kKeepAliveTimeoutValue:aM,kMaxHeadersSize:AM,kKeepAliveMaxTimeout:cM,kKeepAliveTimeoutThreshold:uM,kHeadersTimeout:lM,kBodyTimeout:dM,kStrictContentLength:gM,kConnector:zo,kMaxRedirections:hM,kMaxRequests:Qg,kCounter:pM,kClose:fM,kDestroy:mM,kDispatch:EM,kInterceptors:by,kLocalAddress:Zo,kMaxResponseSize:CM,kOnError:IM,kHTTPContext:Me,kMaxConcurrentStreams:yM,kResume:Ko}=Se(),QM=ly(),BM=Cy(),Ry=!1,pr=Symbol("kClosedResolve"),ky=o(()=>{},"noop");function xy(t){return t[dc]??t[Me]?.defaultPipelining??1}o(xy,"getPipelining");var Bg=class extends KU{static{o(this,"Client")}constructor(e,{interceptors:n,maxHeaderSize:r,headersTimeout:s,socketTimeout:i,requestTimeout:a,connectTimeout:c,bodyTimeout:l,idleTimeout:d,keepAlive:g,keepAliveTimeout:h,maxKeepAliveTimeout:f,keepAliveMaxTimeout:m,keepAliveTimeoutThreshold:C,socketPath:y,pipelining:v,tls:Q,strictContentLength:x,maxCachedSessions:G,maxRedirections:P,connect:ae,maxRequestsPerClient:Ee,localAddress:Ce,maxResponseSize:De,autoSelectFamily:et,autoSelectFamilyAttemptTimeout:sn,maxConcurrentStreams:At,allowH2:Ge,webSocket:Tt}={}){if(super({webSocket:Tt}),g!==void 0)throw new Ue("unsupported keepAlive, use pipelining=0 instead");if(i!==void 0)throw new Ue("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(a!==void 0)throw new Ue("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(d!==void 0)throw new Ue("unsupported idleTimeout, use keepAliveTimeout instead");if(f!==void 0)throw new Ue("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(r!=null&&!Number.isFinite(r))throw new Ue("invalid maxHeaderSize");if(y!=null&&typeof y!="string")throw new Ue("invalid socketPath");if(c!=null&&(!Number.isFinite(c)||c<0))throw new Ue("invalid connectTimeout");if(h!=null&&(!Number.isFinite(h)||h<=0))throw new Ue("invalid keepAliveTimeout");if(m!=null&&(!Number.isFinite(m)||m<=0))throw new Ue("invalid keepAliveMaxTimeout");if(C!=null&&!Number.isFinite(C))throw new Ue("invalid keepAliveTimeoutThreshold");if(s!=null&&(!Number.isInteger(s)||s<0))throw new Ue("headersTimeout must be a positive integer or zero");if(l!=null&&(!Number.isInteger(l)||l<0))throw new Ue("bodyTimeout must be a positive integer or zero");if(ae!=null&&typeof ae!="function"&&typeof ae!="object")throw new Ue("connect must be a function or an object");if(P!=null&&(!Number.isInteger(P)||P<0))throw new Ue("maxRedirections must be a positive number");if(Ee!=null&&(!Number.isInteger(Ee)||Ee<0))throw new Ue("maxRequestsPerClient must be a positive number");if(Ce!=null&&(typeof Ce!="string"||vy.isIP(Ce)===0))throw new Ue("localAddress must be valid string IP address");if(De!=null&&(!Number.isInteger(De)||De<-1))throw new Ue("maxResponseSize must be a positive number");if(sn!=null&&(!Number.isInteger(sn)||sn<-1))throw new Ue("autoSelectFamilyAttemptTimeout must be a positive number");if(Ge!=null&&typeof Ge!="boolean")throw new Ue("allowH2 must be a valid boolean value");if(At!=null&&(typeof At!="number"||At<1))throw new Ue("maxConcurrentStreams must be a positive integer, greater than 0");typeof ae!="function"&&(ae=tM({...Q,maxCachedSessions:G,allowH2:Ge,socketPath:y,timeout:c,...et?{autoSelectFamily:et,autoSelectFamilyAttemptTimeout:sn}:void 0,...ae})),n?.Client&&Array.isArray(n.Client)?(this[by]=n.Client,Ry||(Ry=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[by]=[wM({maxRedirections:P})],this[En]=cs.parseOrigin(e),this[zo]=ae,this[dc]=v??1,this[AM]=r||zU.maxHeaderSize,this[wy]=h??4e3,this[cM]=m??6e5,this[uM]=C??2e3,this[aM]=this[wy],this[hr]=null,this[Zo]=Ce??null,this[us]=0,this[fr]=0,this[iM]=`host: ${this[En].hostname}${this[En].port?`:${this[En].port}`:""}\r
41
+ `,this[dM]=l??3e5,this[lM]=s??3e5,this[gM]=x??!0,this[hM]=P,this[Qg]=Ee,this[pr]=null,this[CM]=De>-1?De:-1,this[yM]=At??100,this[Me]=null,this[Kt]=[],this[On]=0,this[Xt]=0,this[Ko]=be=>wg(this,be),this[IM]=be=>Dy(this,be)}get pipelining(){return this[dc]}set pipelining(e){this[dc]=e,this[Ko](!0)}get[ta](){return this[Kt].length-this[Xt]}get[ea](){return this[Xt]-this[On]}get[Xo](){return this[Kt].length-this[On]}get[sM](){return!!this[Me]&&!this[yi]&&!this[Me].destroyed}get[yg](){return!!(this[Me]?.busy(null)||this[Xo]>=(xy(this)||1)||this[ta]>0)}[rM](e){Ty(this),this.once("connect",e)}[EM](e,n){let r=e.origin||this[En].origin,s=new ZU(r,e,n);return this[Kt].push(s),this[us]||(cs.bodyLength(s.body)==null&&cs.isIterable(s.body)?(this[us]=1,queueMicrotask(()=>wg(this))):this[Ko](!0)),this[us]&&this[fr]!==2&&this[yg]&&(this[fr]=2),this[fr]<2}async[fM](){return new Promise(e=>{this[Xo]?this[pr]=e:e(null)})}async[mM](e){return new Promise(n=>{let r=this[Kt].splice(this[Xt]);for(let i=0;i<r.length;i++){let a=r[i];cs.errorRequest(this,a,e)}let s=o(()=>{this[pr]&&(this[pr](),this[pr]=null),n(null)},"callback");this[Me]?(this[Me].destroy(e,s),this[Me]=null):queueMicrotask(s),this[Ko]()})}},wM=lc();function Dy(t,e){if(t[ea]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){Pn(t[Xt]===t[On]);let n=t[Kt].splice(t[On]);for(let r=0;r<n.length;r++){let s=n[r];cs.errorRequest(t,s,e)}Pn(t[Xo]===0)}}o(Dy,"onError");async function Ty(t){Pn(!t[yi]),Pn(!t[Me]);let{host:e,hostname:n,protocol:r,port:s}=t[En];if(n[0]==="["){let i=n.indexOf("]");Pn(i!==-1);let a=n.substring(1,i);Pn(vy.isIP(a)),n=a}t[yi]=!0,Ii.beforeConnect.hasSubscribers&&Ii.beforeConnect.publish({connectParams:{host:e,hostname:n,protocol:r,port:s,version:t[Me]?.version,servername:t[hr],localAddress:t[Zo]},connector:t[zo]});try{let i=await new Promise((a,c)=>{t[zo]({host:e,hostname:n,protocol:r,port:s,servername:t[hr],localAddress:t[Zo]},(l,d)=>{l?c(l):a(d)})});if(t.destroyed){cs.destroy(i.on("error",ky),new eM);return}Pn(i);try{t[Me]=i.alpnProtocol==="h2"?await BM(t,i):await QM(t,i)}catch(a){throw i.destroy().on("error",ky),a}t[yi]=!1,i[pM]=0,i[Qg]=t[Qg],i[nM]=t,i[oM]=null,Ii.connected.hasSubscribers&&Ii.connected.publish({connectParams:{host:e,hostname:n,protocol:r,port:s,version:t[Me]?.version,servername:t[hr],localAddress:t[Zo]},connector:t[zo],socket:i}),t.emit("connect",t[En],[t])}catch(i){if(t.destroyed)return;if(t[yi]=!1,Ii.connectError.hasSubscribers&&Ii.connectError.publish({connectParams:{host:e,hostname:n,protocol:r,port:s,version:t[Me]?.version,servername:t[hr],localAddress:t[Zo]},connector:t[zo],error:i}),i.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(Pn(t[ea]===0);t[ta]>0&&t[Kt][t[Xt]].servername===t[hr];){let a=t[Kt][t[Xt]++];cs.errorRequest(t,a,i)}else Dy(t,i);t.emit("connectionError",t[En],[t],i)}t[Ko]()}o(Ty,"connect");function Sy(t){t[fr]=0,t.emit("drain",t[En],[t])}o(Sy,"emitDrain");function wg(t,e){t[us]!==2&&(t[us]=2,bM(t,e),t[us]=0,t[On]>256&&(t[Kt].splice(0,t[On]),t[Xt]-=t[On],t[On]=0))}o(wg,"resume");function bM(t,e){for(;;){if(t.destroyed){Pn(t[ta]===0);return}if(t[pr]&&!t[Xo]){t[pr](),t[pr]=null;return}if(t[Me]&&t[Me].resume(),t[yg])t[fr]=2;else if(t[fr]===2){e?(t[fr]=1,queueMicrotask(()=>Sy(t))):Sy(t);continue}if(t[ta]===0||t[ea]>=(xy(t)||1))return;let n=t[Kt][t[Xt]];if(t[En].protocol==="https:"&&t[hr]!==n.servername){if(t[ea]>0)return;t[hr]=n.servername,t[Me]?.destroy(new XU("servername changed"),()=>{t[Me]=null,wg(t)})}if(t[yi])return;if(!t[Me]){Ty(t);return}if(t[Me].destroyed||t[Me].busy(n))return;!n.aborted&&t[Me].write(n)?t[Xt]++:t[Kt].splice(t[Xt],1)}}o(bM,"_resume");Ny.exports=Bg});var bg=T((JK,Fy)=>{"use strict";var gc=class{static{o(this,"FixedCircularBuffer")}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(e){this.list[this.top]=e,this.top=this.top+1&2047}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,e)}};Fy.exports=class{static{o(this,"FixedQueue")}constructor(){this.head=this.tail=new gc}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new gc),this.head.push(e)}shift(){let e=this.tail,n=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),n}}});var My=T((jK,Uy)=>{var{kFree:RM,kConnected:kM,kPending:SM,kQueued:vM,kRunning:xM,kSize:DM}=Se(),ls=Symbol("pool"),Rg=class{static{o(this,"PoolStats")}constructor(e){this[ls]=e}get connected(){return this[ls][kM]}get free(){return this[ls][RM]}get pending(){return this[ls][SM]}get queued(){return this[ls][vM]}get running(){return this[ls][xM]}get size(){return this[ls][DM]}};Uy.exports=Rg});var Tg=T((zK,Jy)=>{"use strict";var TM=oi(),NM=bg(),{kConnected:kg,kSize:Ly,kRunning:_y,kPending:Py,kQueued:na,kBusy:FM,kFree:UM,kUrl:MM,kClose:LM,kDestroy:_M,kDispatch:PM}=Se(),OM=My(),pt=Symbol("clients"),ot=Symbol("needDrain"),ra=Symbol("queue"),Sg=Symbol("closed resolve"),vg=Symbol("onDrain"),Oy=Symbol("onConnect"),Gy=Symbol("onDisconnect"),$y=Symbol("onConnectionError"),xg=Symbol("get dispatcher"),Hy=Symbol("add client"),Vy=Symbol("remove client"),Yy=Symbol("stats"),Dg=class extends TM{static{o(this,"PoolBase")}constructor(e){super(e),this[ra]=new NM,this[pt]=[],this[na]=0;let n=this;this[vg]=o(function(s,i){let a=n[ra],c=!1;for(;!c;){let l=a.shift();if(!l)break;n[na]--,c=!this.dispatch(l.opts,l.handler)}this[ot]=c,!this[ot]&&n[ot]&&(n[ot]=!1,n.emit("drain",s,[n,...i])),n[Sg]&&a.isEmpty()&&Promise.all(n[pt].map(l=>l.close())).then(n[Sg])},"onDrain"),this[Oy]=(r,s)=>{n.emit("connect",r,[n,...s])},this[Gy]=(r,s,i)=>{n.emit("disconnect",r,[n,...s],i)},this[$y]=(r,s,i)=>{n.emit("connectionError",r,[n,...s],i)},this[Yy]=new OM(this)}get[FM](){return this[ot]}get[kg](){return this[pt].filter(e=>e[kg]).length}get[UM](){return this[pt].filter(e=>e[kg]&&!e[ot]).length}get[Py](){let e=this[na];for(let{[Py]:n}of this[pt])e+=n;return e}get[_y](){let e=0;for(let{[_y]:n}of this[pt])e+=n;return e}get[Ly](){let e=this[na];for(let{[Ly]:n}of this[pt])e+=n;return e}get stats(){return this[Yy]}async[LM](){this[ra].isEmpty()?await Promise.all(this[pt].map(e=>e.close())):await new Promise(e=>{this[Sg]=e})}async[_M](e){for(;;){let n=this[ra].shift();if(!n)break;n.handler.onError(e)}await Promise.all(this[pt].map(n=>n.destroy(e)))}[PM](e,n){let r=this[xg]();return r?r.dispatch(e,n)||(r[ot]=!0,this[ot]=!this[xg]()):(this[ot]=!0,this[ra].push({opts:e,handler:n}),this[na]++),!this[ot]}[Hy](e){return e.on("drain",this[vg]).on("connect",this[Oy]).on("disconnect",this[Gy]).on("connectionError",this[$y]),this[pt].push(e),this[ot]&&queueMicrotask(()=>{this[ot]&&this[vg](e[MM],[this,e])}),this}[Vy](e){e.close(()=>{let n=this[pt].indexOf(e);n!==-1&&this[pt].splice(n,1)}),this[ot]=this[pt].some(n=>!n[ot]&&n.closed!==!0&&n.destroyed!==!0)}};Jy.exports={PoolBase:Dg,kClients:pt,kNeedDrain:ot,kAddClient:Hy,kRemoveClient:Vy,kGetDispatcher:xg}});var Bi=T((KK,zy)=>{"use strict";var{PoolBase:GM,kClients:hc,kNeedDrain:$M,kAddClient:YM,kGetDispatcher:HM}=Tg(),VM=Qi(),{InvalidArgumentError:Ng}=pe(),qy=ue(),{kUrl:jy,kInterceptors:JM}=Se(),qM=Mo(),Fg=Symbol("options"),Ug=Symbol("connections"),Wy=Symbol("factory");function jM(t,e){return new VM(t,e)}o(jM,"defaultFactory");var Mg=class extends GM{static{o(this,"Pool")}constructor(e,{connections:n,factory:r=jM,connect:s,connectTimeout:i,tls:a,maxCachedSessions:c,socketPath:l,autoSelectFamily:d,autoSelectFamilyAttemptTimeout:g,allowH2:h,...f}={}){if(n!=null&&(!Number.isFinite(n)||n<0))throw new Ng("invalid connections");if(typeof r!="function")throw new Ng("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new Ng("connect must be a function or an object");typeof s!="function"&&(s=qM({...a,maxCachedSessions:c,allowH2:h,socketPath:l,timeout:i,...d?{autoSelectFamily:d,autoSelectFamilyAttemptTimeout:g}:void 0,...s})),super(f),this[JM]=f.interceptors?.Pool&&Array.isArray(f.interceptors.Pool)?f.interceptors.Pool:[],this[Ug]=n||null,this[jy]=qy.parseOrigin(e),this[Fg]={...qy.deepClone(f),connect:s,allowH2:h},this[Fg].interceptors=f.interceptors?{...f.interceptors}:void 0,this[Wy]=r,this.on("connectionError",(m,C,y)=>{for(let v of C){let Q=this[hc].indexOf(v);Q!==-1&&this[hc].splice(Q,1)}})}[HM](){for(let e of this[hc])if(!e[$M])return e;if(!this[Ug]||this[hc].length<this[Ug]){let e=this[Wy](this[jy],this[Fg]);return this[YM](e),e}}};zy.exports=Mg});var tQ=T((e8,eQ)=>{"use strict";var{BalancedPoolMissingUpstreamError:WM,InvalidArgumentError:zM}=pe(),{PoolBase:ZM,kClients:Ke,kNeedDrain:sa,kAddClient:KM,kRemoveClient:XM,kGetDispatcher:eL}=Tg(),tL=Bi(),{kUrl:Lg,kInterceptors:nL}=Se(),{parseOrigin:Zy}=ue(),Ky=Symbol("factory"),pc=Symbol("options"),Xy=Symbol("kGreatestCommonDivisor"),ds=Symbol("kCurrentWeight"),gs=Symbol("kIndex"),Gt=Symbol("kWeight"),fc=Symbol("kMaxWeightPerServer"),mc=Symbol("kErrorPenalty");function rL(t,e){if(t===0)return e;for(;e!==0;){let n=e;e=t%e,t=n}return t}o(rL,"getGreatestCommonDivisor");function sL(t,e){return new tL(t,e)}o(sL,"defaultFactory");var _g=class extends ZM{static{o(this,"BalancedPool")}constructor(e=[],{factory:n=sL,...r}={}){if(super(),this[pc]=r,this[gs]=-1,this[ds]=0,this[fc]=this[pc].maxWeightPerServer||100,this[mc]=this[pc].errorPenalty||15,Array.isArray(e)||(e=[e]),typeof n!="function")throw new zM("factory must be a function.");this[nL]=r.interceptors?.BalancedPool&&Array.isArray(r.interceptors.BalancedPool)?r.interceptors.BalancedPool:[],this[Ky]=n;for(let s of e)this.addUpstream(s);this._updateBalancedPoolStats()}addUpstream(e){let n=Zy(e).origin;if(this[Ke].find(s=>s[Lg].origin===n&&s.closed!==!0&&s.destroyed!==!0))return this;let r=this[Ky](n,Object.assign({},this[pc]));this[KM](r),r.on("connect",()=>{r[Gt]=Math.min(this[fc],r[Gt]+this[mc])}),r.on("connectionError",()=>{r[Gt]=Math.max(1,r[Gt]-this[mc]),this._updateBalancedPoolStats()}),r.on("disconnect",(...s)=>{let i=s[2];i&&i.code==="UND_ERR_SOCKET"&&(r[Gt]=Math.max(1,r[Gt]-this[mc]),this._updateBalancedPoolStats())});for(let s of this[Ke])s[Gt]=this[fc];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let n=0;n<this[Ke].length;n++)e=rL(this[Ke][n][Gt],e);this[Xy]=e}removeUpstream(e){let n=Zy(e).origin,r=this[Ke].find(s=>s[Lg].origin===n&&s.closed!==!0&&s.destroyed!==!0);return r&&this[XM](r),this}get upstreams(){return this[Ke].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[Lg].origin)}[eL](){if(this[Ke].length===0)throw new WM;if(!this[Ke].find(i=>!i[sa]&&i.closed!==!0&&i.destroyed!==!0)||this[Ke].map(i=>i[sa]).reduce((i,a)=>i&&a,!0))return;let r=0,s=this[Ke].findIndex(i=>!i[sa]);for(;r++<this[Ke].length;){this[gs]=(this[gs]+1)%this[Ke].length;let i=this[Ke][this[gs]];if(i[Gt]>this[Ke][s][Gt]&&!i[sa]&&(s=this[gs]),this[gs]===0&&(this[ds]=this[ds]-this[Xy],this[ds]<=0&&(this[ds]=this[fc])),i[Gt]>=this[ds]&&!i[sa])return i}return this[ds]=this[Ke][s][Gt],this[gs]=s,this[Ke][s]}};eQ.exports=_g});var wi=T((n8,AQ)=>{"use strict";var{InvalidArgumentError:Ec}=pe(),{kClients:mr,kRunning:nQ,kClose:iL,kDestroy:oL,kDispatch:aL,kInterceptors:AL}=Se(),cL=oi(),uL=Bi(),lL=Qi(),dL=ue(),gL=lc(),rQ=Symbol("onConnect"),sQ=Symbol("onDisconnect"),iQ=Symbol("onConnectionError"),hL=Symbol("maxRedirections"),oQ=Symbol("onDrain"),aQ=Symbol("factory"),Pg=Symbol("options");function pL(t,e){return e&&e.connections===1?new lL(t,e):new uL(t,e)}o(pL,"defaultFactory");var Og=class extends cL{static{o(this,"Agent")}constructor({factory:e=pL,maxRedirections:n=0,connect:r,...s}={}){if(typeof e!="function")throw new Ec("factory must be a function.");if(r!=null&&typeof r!="function"&&typeof r!="object")throw new Ec("connect must be a function or an object");if(!Number.isInteger(n)||n<0)throw new Ec("maxRedirections must be a positive number");super(s),r&&typeof r!="function"&&(r={...r}),this[AL]=s.interceptors?.Agent&&Array.isArray(s.interceptors.Agent)?s.interceptors.Agent:[gL({maxRedirections:n})],this[Pg]={...dL.deepClone(s),connect:r},this[Pg].interceptors=s.interceptors?{...s.interceptors}:void 0,this[hL]=n,this[aQ]=e,this[mr]=new Map,this[oQ]=(i,a)=>{this.emit("drain",i,[this,...a])},this[rQ]=(i,a)=>{this.emit("connect",i,[this,...a])},this[sQ]=(i,a,c)=>{this.emit("disconnect",i,[this,...a],c)},this[iQ]=(i,a,c)=>{this.emit("connectionError",i,[this,...a],c)}}get[nQ](){let e=0;for(let n of this[mr].values())e+=n[nQ];return e}[aL](e,n){let r;if(e.origin&&(typeof e.origin=="string"||e.origin instanceof URL))r=String(e.origin);else throw new Ec("opts.origin must be a non-empty string or URL.");let s=this[mr].get(r);return s||(s=this[aQ](e.origin,this[Pg]).on("drain",this[oQ]).on("connect",this[rQ]).on("disconnect",this[sQ]).on("connectionError",this[iQ]),this[mr].set(r,s)),s.dispatch(e,n)}async[iL](){let e=[];for(let n of this[mr].values())e.push(n.close());this[mr].clear(),await Promise.all(e)}async[oL](e){let n=[];for(let r of this[mr].values())n.push(r.destroy(e));this[mr].clear(),await Promise.all(n)}};AQ.exports=Og});var Vg=T((s8,CQ)=>{"use strict";var{kProxy:Gg,kClose:hQ,kDestroy:pQ,kDispatch:cQ,kInterceptors:fL}=Se(),{URL:hs}=require("node:url"),mL=wi(),fQ=Bi(),mQ=oi(),{InvalidArgumentError:bi,RequestAbortedError:EL,SecureProxyConnectionError:CL}=pe(),uQ=Mo(),EQ=Qi(),Cc=Symbol("proxy agent"),Ic=Symbol("proxy client"),Er=Symbol("proxy headers"),$g=Symbol("request tls settings"),lQ=Symbol("proxy tls settings"),dQ=Symbol("connect endpoint function"),gQ=Symbol("tunnel proxy");function IL(t){return t==="https:"?443:80}o(IL,"defaultProtocolPort");function yL(t,e){return new fQ(t,e)}o(yL,"defaultFactory");var QL=o(()=>{},"noop");function BL(t,e){return e.connections===1?new EQ(t,e):new fQ(t,e)}o(BL,"defaultAgentFactory");var Yg=class extends mQ{static{o(this,"Http1ProxyWrapper")}#e;constructor(e,{headers:n={},connect:r,factory:s}){if(super(),!e)throw new bi("Proxy URL is mandatory");this[Er]=n,s?this.#e=s(e,{connect:r}):this.#e=new EQ(e,{connect:r})}[cQ](e,n){let r=n.onHeaders;n.onHeaders=function(c,l,d){if(c===407){typeof n.onError=="function"&&n.onError(new bi("Proxy Authentication Required (407)"));return}r&&r.call(this,c,l,d)};let{origin:s,path:i="/",headers:a={}}=e;if(e.path=s+i,!("host"in a)&&!("Host"in a)){let{host:c}=new hs(s);a.host=c}return e.headers={...this[Er],...a},this.#e[cQ](e,n)}async[hQ](){return this.#e.close()}async[pQ](e){return this.#e.destroy(e)}},Hg=class extends mQ{static{o(this,"ProxyAgent")}constructor(e){if(super(),!e||typeof e=="object"&&!(e instanceof hs)&&!e.uri)throw new bi("Proxy uri is mandatory");let{clientFactory:n=yL}=e;if(typeof n!="function")throw new bi("Proxy opts.clientFactory must be a function.");let{proxyTunnel:r=!0}=e,s=this.#e(e),{href:i,origin:a,port:c,protocol:l,username:d,password:g,hostname:h}=s;if(this[Gg]={uri:i,protocol:l},this[fL]=e.interceptors?.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[],this[$g]=e.requestTls,this[lQ]=e.proxyTls,this[Er]=e.headers||{},this[gQ]=r,e.auth&&e.token)throw new bi("opts.auth cannot be used in combination with opts.token");e.auth?this[Er]["proxy-authorization"]=`Basic ${e.auth}`:e.token?this[Er]["proxy-authorization"]=e.token:d&&g&&(this[Er]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(d)}:${decodeURIComponent(g)}`).toString("base64")}`);let f=uQ({...e.proxyTls});this[dQ]=uQ({...e.requestTls});let m=e.factory||BL,C=o((y,v)=>{let{protocol:Q}=new hs(y);return!this[gQ]&&Q==="http:"&&this[Gg].protocol==="http:"?new Yg(this[Gg].uri,{headers:this[Er],connect:f,factory:m}):m(y,v)},"factory");this[Ic]=n(s,{connect:f}),this[Cc]=new mL({...e,factory:C,connect:o(async(y,v)=>{let Q=y.host;y.port||(Q+=`:${IL(y.protocol)}`);try{let{socket:x,statusCode:G}=await this[Ic].connect({origin:a,port:c,path:Q,signal:y.signal,headers:{...this[Er],host:y.host},servername:this[lQ]?.servername||h});if(G!==200&&(x.on("error",QL).destroy(),v(new EL(`Proxy response (${G}) !== 200 when HTTP Tunneling`))),y.protocol!=="https:"){v(null,x);return}let P;this[$g]?P=this[$g].servername:P=y.servername,this[dQ]({...y,servername:P,httpSocket:x},v)}catch(x){x.code==="ERR_TLS_CERT_ALTNAME_INVALID"?v(new CL(x)):v(x)}},"connect")})}dispatch(e,n){let r=wL(e.headers);if(bL(r),r&&!("host"in r)&&!("Host"in r)){let{host:s}=new hs(e.origin);r.host=s}return this[Cc].dispatch({...e,headers:r},n)}#e(e){return typeof e=="string"?new hs(e):e instanceof hs?e:new hs(e.uri)}async[hQ](){await this[Cc].close(),await this[Ic].close()}async[pQ](){await this[Cc].destroy(),await this[Ic].destroy()}};function wL(t){if(Array.isArray(t)){let e={};for(let n=0;n<t.length;n+=2)e[t[n]]=t[n+1];return e}return t}o(wL,"buildHeaders");function bL(t){if(t&&Object.keys(t).find(n=>n.toLowerCase()==="proxy-authorization"))throw new bi("Proxy-Authorization should be sent in ProxyAgent constructor")}o(bL,"throwIfProxyAuthIsSent");CQ.exports=Hg});var bQ=T((o8,wQ)=>{"use strict";var RL=oi(),{kClose:kL,kDestroy:SL,kClosed:IQ,kDestroyed:yQ,kDispatch:vL,kNoProxyAgent:ia,kHttpProxyAgent:Cr,kHttpsProxyAgent:ps}=Se(),QQ=Vg(),xL=wi(),DL={"http:":80,"https:":443},BQ=!1,Jg=class extends RL{static{o(this,"EnvHttpProxyAgent")}#e=null;#t=null;#n=null;constructor(e={}){super(),this.#n=e,BQ||(BQ=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:n,httpsProxy:r,noProxy:s,...i}=e;this[ia]=new xL(i);let a=n??process.env.http_proxy??process.env.HTTP_PROXY;a?this[Cr]=new QQ({...i,uri:a}):this[Cr]=this[ia];let c=r??process.env.https_proxy??process.env.HTTPS_PROXY;c?this[ps]=new QQ({...i,uri:c}):this[ps]=this[Cr],this.#r()}[vL](e,n){let r=new URL(e.origin);return this.#i(r).dispatch(e,n)}async[kL](){await this[ia].close(),this[Cr][IQ]||await this[Cr].close(),this[ps][IQ]||await this[ps].close()}async[SL](e){await this[ia].destroy(e),this[Cr][yQ]||await this[Cr].destroy(e),this[ps][yQ]||await this[ps].destroy(e)}#i(e){let{protocol:n,host:r,port:s}=e;return r=r.replace(/:\d*$/,"").toLowerCase(),s=Number.parseInt(s,10)||DL[n]||0,this.#s(r,s)?n==="https:"?this[ps]:this[Cr]:this[ia]}#s(e,n){if(this.#o&&this.#r(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let r=0;r<this.#t.length;r++){let s=this.#t[r];if(!(s.port&&s.port!==n)){if(/^[.*]/.test(s.hostname)){if(e.endsWith(s.hostname.replace(/^\*/,"")))return!1}else if(e===s.hostname)return!1}}return!0}#r(){let e=this.#n.noProxy??this.#a,n=e.split(/[,\s]/),r=[];for(let s=0;s<n.length;s++){let i=n[s];if(!i)continue;let a=i.match(/^(.+):(\d+)$/);r.push({hostname:(a?a[1]:i).toLowerCase(),port:a?Number.parseInt(a[2],10):0})}this.#e=e,this.#t=r}get#o(){return this.#n.noProxy!==void 0?!1:this.#e!==this.#a}get#a(){return process.env.no_proxy??process.env.NO_PROXY??""}};wQ.exports=Jg});var yc=T((A8,xQ)=>{"use strict";var oa=require("node:assert"),{kRetryHandlerDefaultRetry:RQ}=Se(),{RequestRetryError:fs}=pe(),{isDisturbed:kQ,parseHeaders:TL,parseRangeHeader:SQ,wrapRequestBody:NL}=ue();function FL(t){let e=Date.now();return new Date(t).getTime()-e}o(FL,"calculateRetryAfterHeader");function vQ(t,e,n,r){let s=t["content-length"];if(s==null||!Number.isFinite(e.start)||!Number.isFinite(e.end))return null;let i=Number(s),a=e.end-e.start+1;return!Number.isFinite(i)||i!==a?new fs("Content-Length mismatch",n,{headers:t,data:{count:r}}):null}o(vQ,"validatePartialResponseContentLength");var qg=class t{static{o(this,"RetryHandler")}constructor(e,n){let{retryOptions:r,...s}=e,{retry:i,maxRetries:a,maxTimeout:c,minTimeout:l,timeoutFactor:d,methods:g,errorCodes:h,retryAfter:f,statusCodes:m}=r??{};this.dispatch=n.dispatch,this.handler=n.handler,this.opts={...s,body:NL(e.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:i??t[RQ],retryAfter:f??!0,maxTimeout:c??30*1e3,minTimeout:l??500,timeoutFactor:d??2,maxRetries:a??5,methods:g??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:m??[500,502,503,504,429],errorCodes:h??["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.headersSent=!1,this.handler.onConnect(C=>{this.aborted=!0,this.abort?this.abort(C):this.reason=C})}checkpointResponseEnd(e,n){if(this.end==null&&this.opts.method!=="HEAD"){let r=e["content-length"];this.end=r!=null?Number(r)-1:null,oa(this.end==null||Number.isFinite(this.end),"invalid content-length")}this.resume=this.end!=null?n:null}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(e,n,r){this.handler.onUpgrade&&this.handler.onUpgrade(e,n,r)}onConnect(e){this.aborted?e(this.reason):this.abort=e}onBodySent(e){if(this.handler.onBodySent)return this.handler.onBodySent(e)}static[RQ](e,{state:n,opts:r},s){let{statusCode:i,code:a,headers:c}=e,{method:l,retryOptions:d}=r,{maxRetries:g,minTimeout:h,maxTimeout:f,timeoutFactor:m,statusCodes:C,errorCodes:y,methods:v}=d,{counter:Q}=n;if(a&&a!=="UND_ERR_REQ_RETRY"&&!y.includes(a)){s(e);return}if(Array.isArray(v)&&!v.includes(l)){s(e);return}if(i!=null&&Array.isArray(C)&&!C.includes(i)){s(e);return}if(Q>g){s(e);return}let x=c?.["retry-after"];x&&(x=Number(x),x=Number.isNaN(x)?FL(x):x*1e3);let G=x>0?Math.min(x,f):Math.min(h*m**(Q-1),f);setTimeout(()=>s(null),G)}onHeaders(e,n,r,s){let i=TL(n);if(this.retryCount+=1,e>=300)return!this.headersSent&&this.retryOpts.statusCodes.includes(e)===!1?(this.headersSent=!0,this.checkpointResponseEnd(i,r),this.handler.onHeaders(e,n,r,s)):(this.abort(new fs("Request failed",e,{headers:i,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,e!==206&&(this.start>0||e!==200))return this.abort(new fs("server does not support the range header and the payload was partially consumed",e,{headers:i,data:{count:this.retryCount}})),!1;let c=SQ(i["content-range"]);if(!c)return this.abort(new fs("Content-Range mismatch",e,{headers:i,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==i.etag)return this.abort(new fs("ETag mismatch",e,{headers:i,data:{count:this.retryCount}})),!1;let l=vQ(i,c,e,this.retryCount);if(l!=null)return this.abort(l),!1;let{start:d,size:g,end:h=g-1}=c;return this.start!==d||this.end!=null&&this.end!==h?(this.abort(new fs("Content-Range mismatch",e,{headers:i,data:{count:this.retryCount}})),!1):(this.resume=r,!0)}if(this.end==null){if(e===206){let c=SQ(i["content-range"]);if(c==null)return this.headersSent=!0,this.handler.onHeaders(e,n,r,s);let l=vQ(i,c,e,this.retryCount);if(l!=null)return this.abort(l),!1;let{start:d,size:g,end:h=g-1}=c;oa(d!=null&&Number.isFinite(d),"content-range mismatch"),oa(h!=null&&Number.isFinite(h),"invalid content-length"),this.start=d,this.end=h}if(this.end==null){let c=i["content-length"];this.end=c!=null?Number(c)-1:null}return oa(Number.isFinite(this.start)),oa(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=r,this.headersSent=!0,this.etag=i.etag!=null?i.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(e,n,r,s)}let a=new fs("Request failed",e,{headers:i,data:{count:this.retryCount}});return this.abort(a),!1}onData(e){return this.start+=e.length,this.handler.onData(e)}onComplete(e){return this.retryCount=0,this.handler.onComplete(e)}onError(e){if(this.aborted||kQ(this.opts.body)||this.headersSent&&this.resume==null)return this.handler.onError(e);this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(e,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},n.bind(this));function n(r){if(r!=null||this.aborted||kQ(this.opts.body))return this.handler.onError(r);if(this.start!==0){let s={range:`bytes=${this.start}-${this.end??""}`};this.etag!=null&&(s["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...s}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(s){this.handler.onError(s)}}o(n,"onRetry")}};xQ.exports=qg});var TQ=T((u8,DQ)=>{"use strict";var UL=Fo(),ML=yc(),jg=class extends UL{static{o(this,"RetryAgent")}#e=null;#t=null;constructor(e,n={}){super(n),this.#e=e,this.#t=n}dispatch(e,n){let r=new ML({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:n});return this.#e.dispatch(e,r)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};DQ.exports=jg});var eh=T((d8,GQ)=>{"use strict";var LQ=require("node:assert"),{Readable:LL}=require("node:stream"),{RequestAbortedError:_Q,NotSupportedError:_L,InvalidArgumentError:PL,AbortError:Wg}=pe(),PQ=ue(),{ReadableStreamFrom:OL}=ue(),wt=Symbol("kConsume"),aa=Symbol("kReading"),Ir=Symbol("kBody"),NQ=Symbol("kAbort"),OQ=Symbol("kContentType"),FQ=Symbol("kContentLength"),GL=o(()=>{},"noop"),zg=class extends LL{static{o(this,"BodyReadable")}constructor({resume:e,abort:n,contentType:r="",contentLength:s,highWaterMark:i=64*1024}){super({autoDestroy:!0,read:e,highWaterMark:i}),this._readableState.dataEmitted=!1,this[NQ]=n,this[wt]=null,this[Ir]=null,this[OQ]=r,this[FQ]=s,this[aa]=!1}destroy(e){return!e&&!this._readableState.endEmitted&&(e=new _Q),e&&this[NQ](),super.destroy(e)}_destroy(e,n){this[aa]?n(e):setImmediate(()=>{n(e)})}on(e,...n){return(e==="data"||e==="readable")&&(this[aa]=!0),super.on(e,...n)}addListener(e,...n){return this.on(e,...n)}off(e,...n){let r=super.off(e,...n);return(e==="data"||e==="readable")&&(this[aa]=this.listenerCount("data")>0||this.listenerCount("readable")>0),r}removeListener(e,...n){return this.off(e,...n)}push(e){return this[wt]&&e!==null?(Kg(this[wt],e),this[aa]?super.push(e):!0):super.push(e)}async text(){return Aa(this,"text")}async json(){return Aa(this,"json")}async blob(){return Aa(this,"blob")}async bytes(){return Aa(this,"bytes")}async arrayBuffer(){return Aa(this,"arrayBuffer")}async formData(){throw new _L}get bodyUsed(){return PQ.isDisturbed(this)}get body(){return this[Ir]||(this[Ir]=OL(this),this[wt]&&(this[Ir].getReader(),LQ(this[Ir].locked))),this[Ir]}async dump(e){let n=Number.isFinite(e?.limit)?e.limit:131072,r=e?.signal;if(r!=null&&(typeof r!="object"||!("aborted"in r)))throw new PL("signal must be an AbortSignal");return r?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((s,i)=>{this[FQ]>n&&this.destroy(new Wg);let a=o(()=>{this.destroy(r.reason??new Wg)},"onAbort");r?.addEventListener("abort",a),this.on("close",function(){r?.removeEventListener("abort",a),r?.aborted?i(r.reason??new Wg):s(null)}).on("error",GL).on("data",function(c){n-=c.length,n<=0&&this.destroy()}).resume()})}};function $L(t){return t[Ir]&&t[Ir].locked===!0||t[wt]}o($L,"isLocked");function YL(t){return PQ.isDisturbed(t)||$L(t)}o(YL,"isUnusable");async function Aa(t,e){return LQ(!t[wt]),new Promise((n,r)=>{if(YL(t)){let s=t._readableState;s.destroyed&&s.closeEmitted===!1?t.on("error",i=>{r(i)}).on("close",()=>{r(new TypeError("unusable"))}):r(s.errored??new TypeError("unusable"))}else queueMicrotask(()=>{t[wt]={type:e,stream:t,resolve:n,reject:r,length:0,body:[]},t.on("error",function(s){Xg(this[wt],s)}).on("close",function(){this[wt].body!==null&&Xg(this[wt],new _Q)}),HL(t[wt])})})}o(Aa,"consume");function HL(t){if(t.body===null)return;let{_readableState:e}=t.stream;if(e.bufferIndex){let n=e.bufferIndex,r=e.buffer.length;for(let s=n;s<r;s++)Kg(t,e.buffer[s])}else for(let n of e.buffer)Kg(t,n);for(e.endEmitted?MQ(this[wt]):t.stream.on("end",function(){MQ(this[wt])}),t.stream.resume();t.stream.read()!=null;);}o(HL,"consumeStart");function Zg(t,e){if(t.length===0||e===0)return"";let n=t.length===1?t[0]:Buffer.concat(t,e),r=n.length,s=r>2&&n[0]===239&&n[1]===187&&n[2]===191?3:0;return n.utf8Slice(s,r)}o(Zg,"chunksDecode");function UQ(t,e){if(t.length===0||e===0)return new Uint8Array(0);if(t.length===1)return new Uint8Array(t[0]);let n=new Uint8Array(Buffer.allocUnsafeSlow(e).buffer),r=0;for(let s=0;s<t.length;++s){let i=t[s];n.set(i,r),r+=i.length}return n}o(UQ,"chunksConcat");function MQ(t){let{type:e,body:n,resolve:r,stream:s,length:i}=t;try{e==="text"?r(Zg(n,i)):e==="json"?r(JSON.parse(Zg(n,i))):e==="arrayBuffer"?r(UQ(n,i).buffer):e==="blob"?r(new Blob(n,{type:s[OQ]})):e==="bytes"&&r(UQ(n,i)),Xg(t)}catch(a){s.destroy(a)}}o(MQ,"consumeEnd");function Kg(t,e){t.length+=e.length,t.body.push(e)}o(Kg,"consumePush");function Xg(t,e){t.body!==null&&(e?t.reject(e):t.resolve(),t.type=null,t.stream=null,t.resolve=null,t.reject=null,t.length=0,t.body=null)}o(Xg,"consumeFinish");GQ.exports={Readable:zg,chunksDecode:Zg}});var th=T((h8,JQ)=>{var VL=require("node:assert"),{ResponseStatusCodeError:$Q}=pe(),{chunksDecode:YQ}=eh(),JL=128*1024;async function qL({callback:t,body:e,contentType:n,statusCode:r,statusMessage:s,headers:i}){VL(e);let a=[],c=0;try{for await(let h of e)if(a.push(h),c+=h.length,c>JL){a=[],c=0;break}}catch{a=[],c=0}let l=`Response status code ${r}${s?`: ${s}`:""}`;if(r===204||!n||!c){queueMicrotask(()=>t(new $Q(l,r,i)));return}let d=Error.stackTraceLimit;Error.stackTraceLimit=0;let g;try{HQ(n)?g=JSON.parse(YQ(a,c)):VQ(n)&&(g=YQ(a,c))}catch{}finally{Error.stackTraceLimit=d}queueMicrotask(()=>t(new $Q(l,r,i,g)))}o(qL,"getResolveErrorBodyCallback");var HQ=o(t=>t.length>15&&t[11]==="/"&&t[0]==="a"&&t[1]==="p"&&t[2]==="p"&&t[3]==="l"&&t[4]==="i"&&t[5]==="c"&&t[6]==="a"&&t[7]==="t"&&t[8]==="i"&&t[9]==="o"&&t[10]==="n"&&t[12]==="j"&&t[13]==="s"&&t[14]==="o"&&t[15]==="n","isContentTypeApplicationJson"),VQ=o(t=>t.length>4&&t[4]==="/"&&t[0]==="t"&&t[1]==="e"&&t[2]==="x"&&t[3]==="t","isContentTypeText");JQ.exports={getResolveErrorBodyCallback:qL,isContentTypeApplicationJson:HQ,isContentTypeText:VQ}});var WQ=T((f8,nh)=>{"use strict";var jL=require("node:assert"),{Readable:WL}=eh(),{InvalidArgumentError:Ri,RequestAbortedError:qQ}=pe(),bt=ue(),{getResolveErrorBodyCallback:zL}=th(),{AsyncResource:ZL}=require("node:async_hooks"),Qc=class extends ZL{static{o(this,"RequestHandler")}constructor(e,n){if(!e||typeof e!="object")throw new Ri("invalid opts");let{signal:r,method:s,opaque:i,body:a,onInfo:c,responseHeaders:l,throwOnError:d,highWaterMark:g}=e;try{if(typeof n!="function")throw new Ri("invalid callback");if(g&&(typeof g!="number"||g<0))throw new Ri("invalid highWaterMark");if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new Ri("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new Ri("invalid method");if(c&&typeof c!="function")throw new Ri("invalid onInfo callback");super("UNDICI_REQUEST")}catch(h){throw bt.isStream(a)&&bt.destroy(a.on("error",bt.nop),h),h}this.method=s,this.responseHeaders=l||null,this.opaque=i||null,this.callback=n,this.res=null,this.abort=null,this.body=a,this.trailers={},this.context=null,this.onInfo=c||null,this.throwOnError=d,this.highWaterMark=g,this.signal=r,this.reason=null,this.removeAbortListener=null,bt.isStream(a)&&a.on("error",h=>{this.onError(h)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new qQ:this.removeAbortListener=bt.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new qQ,this.res?bt.destroy(this.res.on("error",bt.nop),this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(e,n){if(this.reason){e(this.reason);return}jL(this.callback),this.abort=e,this.context=n}onHeaders(e,n,r,s){let{callback:i,opaque:a,abort:c,context:l,responseHeaders:d,highWaterMark:g}=this,h=d==="raw"?bt.parseRawHeaders(n):bt.parseHeaders(n);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:h});return}let f=d==="raw"?bt.parseHeaders(n):h,m=f["content-type"],C=f["content-length"],y=new WL({resume:r,abort:c,contentType:m,contentLength:this.method!=="HEAD"&&C?Number(C):null,highWaterMark:g});this.removeAbortListener&&y.on("close",this.removeAbortListener),this.callback=null,this.res=y,i!==null&&(this.throwOnError&&e>=400?this.runInAsyncScope(zL,null,{callback:i,body:y,contentType:m,statusCode:e,statusMessage:s,headers:h}):this.runInAsyncScope(i,null,null,{statusCode:e,headers:h,trailers:this.trailers,opaque:a,body:y,context:l}))}onData(e){return this.res.push(e)}onComplete(e){bt.parseHeaders(e,this.trailers),this.res.push(null)}onError(e){let{res:n,callback:r,body:s,opaque:i}=this;r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:i})})),n&&(this.res=null,queueMicrotask(()=>{bt.destroy(n,e)})),s&&(this.body=null,bt.destroy(s,e)),this.removeAbortListener&&(n?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function jQ(t,e){if(e===void 0)return new Promise((n,r)=>{jQ.call(this,t,(s,i)=>s?r(s):n(i))});try{this.dispatch(t,new Qc(t,e))}catch(n){if(typeof e!="function")throw n;let r=t?.opaque;queueMicrotask(()=>e(n,{opaque:r}))}}o(jQ,"request");nh.exports=jQ;nh.exports.RequestHandler=Qc});var ca=T((E8,KQ)=>{var{addAbortListener:KL}=ue(),{RequestAbortedError:XL}=pe(),ki=Symbol("kListener"),Cn=Symbol("kSignal");function zQ(t){t.abort?t.abort(t[Cn]?.reason):t.reason=t[Cn]?.reason??new XL,ZQ(t)}o(zQ,"abort");function e_(t,e){if(t.reason=null,t[Cn]=null,t[ki]=null,!!e){if(e.aborted){zQ(t);return}t[Cn]=e,t[ki]=()=>{zQ(t)},KL(t[Cn],t[ki])}}o(e_,"addSignal");function ZQ(t){t[Cn]&&("removeEventListener"in t[Cn]?t[Cn].removeEventListener("abort",t[ki]):t[Cn].removeListener("abort",t[ki]),t[Cn]=null,t[ki]=null)}o(ZQ,"removeSignal");KQ.exports={addSignal:e_,removeSignal:ZQ}});var nB=T((I8,tB)=>{"use strict";var t_=require("node:assert"),{finished:n_,PassThrough:r_}=require("node:stream"),{InvalidArgumentError:Si,InvalidReturnValueError:s_}=pe(),en=ue(),{getResolveErrorBodyCallback:i_}=th(),{AsyncResource:o_}=require("node:async_hooks"),{addSignal:a_,removeSignal:XQ}=ca(),rh=class extends o_{static{o(this,"StreamHandler")}constructor(e,n,r){if(!e||typeof e!="object")throw new Si("invalid opts");let{signal:s,method:i,opaque:a,body:c,onInfo:l,responseHeaders:d,throwOnError:g}=e;try{if(typeof r!="function")throw new Si("invalid callback");if(typeof n!="function")throw new Si("invalid factory");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new Si("signal must be an EventEmitter or EventTarget");if(i==="CONNECT")throw new Si("invalid method");if(l&&typeof l!="function")throw new Si("invalid onInfo callback");super("UNDICI_STREAM")}catch(h){throw en.isStream(c)&&en.destroy(c.on("error",en.nop),h),h}this.responseHeaders=d||null,this.opaque=a||null,this.factory=n,this.callback=r,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=c,this.onInfo=l||null,this.throwOnError=g||!1,en.isStream(c)&&c.on("error",h=>{this.onError(h)}),a_(this,s)}onConnect(e,n){if(this.reason){e(this.reason);return}t_(this.callback),this.abort=e,this.context=n}onHeaders(e,n,r,s){let{factory:i,opaque:a,context:c,callback:l,responseHeaders:d}=this,g=d==="raw"?en.parseRawHeaders(n):en.parseHeaders(n);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:g});return}this.factory=null;let h;if(this.throwOnError&&e>=400){let C=(d==="raw"?en.parseHeaders(n):g)["content-type"];h=new r_,this.callback=null,this.runInAsyncScope(i_,null,{callback:l,body:h,contentType:C,statusCode:e,statusMessage:s,headers:g})}else{if(i===null)return;if(h=this.runInAsyncScope(i,null,{statusCode:e,headers:g,opaque:a,context:c}),!h||typeof h.write!="function"||typeof h.end!="function"||typeof h.on!="function")throw new s_("expected Writable");n_(h,{readable:!1},m=>{let{callback:C,res:y,opaque:v,trailers:Q,abort:x}=this;this.res=null,(m||!y.readable)&&en.destroy(y,m),this.callback=null,this.runInAsyncScope(C,null,m||null,{opaque:v,trailers:Q}),m&&x()})}return h.on("drain",r),this.res=h,(h.writableNeedDrain!==void 0?h.writableNeedDrain:h._writableState?.needDrain)!==!0}onData(e){let{res:n}=this;return n?n.write(e):!0}onComplete(e){let{res:n}=this;XQ(this),n&&(this.trailers=en.parseHeaders(e),n.end())}onError(e){let{res:n,callback:r,opaque:s,body:i}=this;XQ(this),this.factory=null,n?(this.res=null,en.destroy(n,e)):r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:s})})),i&&(this.body=null,en.destroy(i,e))}};function eB(t,e,n){if(n===void 0)return new Promise((r,s)=>{eB.call(this,t,e,(i,a)=>i?s(i):r(a))});try{this.dispatch(t,new rh(t,e,n))}catch(r){if(typeof n!="function")throw r;let s=t?.opaque;queueMicrotask(()=>n(r,{opaque:s}))}}o(eB,"stream");tB.exports=eB});var oB=T((Q8,iB)=>{"use strict";var{Readable:sB,Duplex:A_,PassThrough:c_}=require("node:stream"),{InvalidArgumentError:ua,InvalidReturnValueError:u_,RequestAbortedError:sh}=pe(),$t=ue(),{AsyncResource:l_}=require("node:async_hooks"),{addSignal:d_,removeSignal:g_}=ca(),rB=require("node:assert"),vi=Symbol("resume"),ih=class extends sB{static{o(this,"PipelineRequest")}constructor(){super({autoDestroy:!0}),this[vi]=null}_read(){let{[vi]:e}=this;e&&(this[vi]=null,e())}_destroy(e,n){this._read(),n(e)}},oh=class extends sB{static{o(this,"PipelineResponse")}constructor(e){super({autoDestroy:!0}),this[vi]=e}_read(){this[vi]()}_destroy(e,n){!e&&!this._readableState.endEmitted&&(e=new sh),n(e)}},ah=class extends l_{static{o(this,"PipelineHandler")}constructor(e,n){if(!e||typeof e!="object")throw new ua("invalid opts");if(typeof n!="function")throw new ua("invalid handler");let{signal:r,method:s,opaque:i,onInfo:a,responseHeaders:c}=e;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ua("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new ua("invalid method");if(a&&typeof a!="function")throw new ua("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=i||null,this.responseHeaders=c||null,this.handler=n,this.abort=null,this.context=null,this.onInfo=a||null,this.req=new ih().on("error",$t.nop),this.ret=new A_({readableObjectMode:e.objectMode,autoDestroy:!0,read:o(()=>{let{body:l}=this;l?.resume&&l.resume()},"read"),write:o((l,d,g)=>{let{req:h}=this;h.push(l,d)||h._readableState.destroyed?g():h[vi]=g},"write"),destroy:o((l,d)=>{let{body:g,req:h,res:f,ret:m,abort:C}=this;!l&&!m._readableState.endEmitted&&(l=new sh),C&&l&&C(),$t.destroy(g,l),$t.destroy(h,l),$t.destroy(f,l),g_(this),d(l)},"destroy")}).on("prefinish",()=>{let{req:l}=this;l.push(null)}),this.res=null,d_(this,r)}onConnect(e,n){let{ret:r,res:s}=this;if(this.reason){e(this.reason);return}rB(!s,"pipeline cannot be retried"),rB(!r.destroyed),this.abort=e,this.context=n}onHeaders(e,n,r){let{opaque:s,handler:i,context:a}=this;if(e<200){if(this.onInfo){let l=this.responseHeaders==="raw"?$t.parseRawHeaders(n):$t.parseHeaders(n);this.onInfo({statusCode:e,headers:l})}return}this.res=new oh(r);let c;try{this.handler=null;let l=this.responseHeaders==="raw"?$t.parseRawHeaders(n):$t.parseHeaders(n);c=this.runInAsyncScope(i,null,{statusCode:e,headers:l,opaque:s,body:this.res,context:a})}catch(l){throw this.res.on("error",$t.nop),l}if(!c||typeof c.on!="function")throw new u_("expected Readable");c.on("data",l=>{let{ret:d,body:g}=this;!d.push(l)&&g.pause&&g.pause()}).on("error",l=>{let{ret:d}=this;$t.destroy(d,l)}).on("end",()=>{let{ret:l}=this;l.push(null)}).on("close",()=>{let{ret:l}=this;l._readableState.ended||$t.destroy(l,new sh)}),this.body=c}onData(e){let{res:n}=this;return n.push(e)}onComplete(e){let{res:n}=this;n.push(null)}onError(e){let{ret:n}=this;this.handler=null,$t.destroy(n,e)}};function h_(t,e){try{let n=new ah(t,e);return this.dispatch({...t,body:n.req},n),n.ret}catch(n){return new c_().destroy(n)}}o(h_,"pipeline");iB.exports=h_});var dB=T((w8,lB)=>{"use strict";var{InvalidArgumentError:Ah,SocketError:p_}=pe(),{AsyncResource:f_}=require("node:async_hooks"),aB=ue(),{addSignal:m_,removeSignal:AB}=ca(),cB=require("node:assert"),ch=class extends f_{static{o(this,"UpgradeHandler")}constructor(e,n){if(!e||typeof e!="object")throw new Ah("invalid opts");if(typeof n!="function")throw new Ah("invalid callback");let{signal:r,opaque:s,responseHeaders:i}=e;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new Ah("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=i||null,this.opaque=s||null,this.callback=n,this.abort=null,this.context=null,m_(this,r)}onConnect(e,n){if(this.reason){e(this.reason);return}cB(this.callback),this.abort=e,this.context=null}onHeaders(){throw new p_("bad upgrade",null)}onUpgrade(e,n,r){cB(e===101);let{callback:s,opaque:i,context:a}=this;AB(this),this.callback=null;let c=this.responseHeaders==="raw"?aB.parseRawHeaders(n):aB.parseHeaders(n);this.runInAsyncScope(s,null,null,{headers:c,socket:r,opaque:i,context:a})}onError(e){let{callback:n,opaque:r}=this;AB(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})}))}};function uB(t,e){if(e===void 0)return new Promise((n,r)=>{uB.call(this,t,(s,i)=>s?r(s):n(i))});try{let n=new ch(t,e);this.dispatch({...t,method:t.method||"GET",upgrade:t.protocol||"Websocket"},n)}catch(n){if(typeof e!="function")throw n;let r=t?.opaque;queueMicrotask(()=>e(n,{opaque:r}))}}o(uB,"upgrade");lB.exports=uB});var mB=T((R8,fB)=>{"use strict";var E_=require("node:assert"),{AsyncResource:C_}=require("node:async_hooks"),{InvalidArgumentError:uh,SocketError:I_}=pe(),gB=ue(),{addSignal:y_,removeSignal:hB}=ca(),lh=class extends C_{static{o(this,"ConnectHandler")}constructor(e,n){if(!e||typeof e!="object")throw new uh("invalid opts");if(typeof n!="function")throw new uh("invalid callback");let{signal:r,opaque:s,responseHeaders:i}=e;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new uh("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=s||null,this.responseHeaders=i||null,this.callback=n,this.abort=null,y_(this,r)}onConnect(e,n){if(this.reason){e(this.reason);return}E_(this.callback),this.abort=e,this.context=n}onHeaders(){throw new I_("bad connect",null)}onUpgrade(e,n,r){let{callback:s,opaque:i,context:a}=this;hB(this),this.callback=null;let c=n;c!=null&&(c=this.responseHeaders==="raw"?gB.parseRawHeaders(n):gB.parseHeaders(n)),this.runInAsyncScope(s,null,null,{statusCode:e,headers:c,socket:r,opaque:i,context:a})}onError(e){let{callback:n,opaque:r}=this;hB(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})}))}};function pB(t,e){if(e===void 0)return new Promise((n,r)=>{pB.call(this,t,(s,i)=>s?r(s):n(i))});try{let n=new lh(t,e);this.dispatch({...t,method:"CONNECT"},n)}catch(n){if(typeof e!="function")throw n;let r=t?.opaque;queueMicrotask(()=>e(n,{opaque:r}))}}o(pB,"connect");fB.exports=pB});var EB=T((S8,xi)=>{"use strict";xi.exports.request=WQ();xi.exports.stream=nB();xi.exports.pipeline=oB();xi.exports.upgrade=dB();xi.exports.connect=mB()});var gh=T((v8,IB)=>{"use strict";var{UndiciError:Q_}=pe(),CB=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),dh=class t extends Q_{static{o(this,"MockNotMatchedError")}constructor(e){super(e),Error.captureStackTrace(this,t),this.name="MockNotMatchedError",this.message=e||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](e){return e&&e[CB]===!0}[CB]=!0};IB.exports={MockNotMatchedError:dh}});var Di=T((D8,yB)=>{"use strict";yB.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 la=T((T8,TB)=>{"use strict";var{MockNotMatchedError:ms}=gh(),{kDispatches:Bc,kMockAgent:B_,kOriginalDispatch:w_,kOrigin:b_,kGetNetConnect:R_}=Di(),{buildURL:k_}=ue(),{STATUS_CODES:S_}=require("node:http"),{types:{isPromise:v_}}=require("node:util");function Gn(t,e){return typeof t=="string"?t===e:t instanceof RegExp?t.test(e):typeof t=="function"?t(e)===!0:!1}o(Gn,"matchValue");function BB(t){return Object.fromEntries(Object.entries(t).map(([e,n])=>[e.toLocaleLowerCase(),n]))}o(BB,"lowerCaseEntries");function wB(t,e){if(Array.isArray(t)){for(let n=0;n<t.length;n+=2)if(t[n].toLocaleLowerCase()===e.toLocaleLowerCase())return t[n+1];return}else return typeof t.get=="function"?t.get(e):BB(t)[e.toLocaleLowerCase()]}o(wB,"getHeaderByName");function fh(t){let e=t.slice(),n=[];for(let r=0;r<e.length;r+=2)n.push([e[r],e[r+1]]);return Object.fromEntries(n)}o(fh,"buildHeadersFromArray");function bB(t,e){if(typeof t.headers=="function")return Array.isArray(e)&&(e=fh(e)),t.headers(e?BB(e):{});if(typeof t.headers>"u")return!0;if(typeof e!="object"||typeof t.headers!="object")return!1;for(let[n,r]of Object.entries(t.headers)){let s=wB(e,n);if(!Gn(r,s))return!1}return!0}o(bB,"matchHeaders");function QB(t){if(typeof t!="string")return t;let e=t.split("?");if(e.length!==2)return t;let n=new URLSearchParams(e.pop());return n.sort(),[...e,n.toString()].join("?")}o(QB,"safeUrl");function x_(t,{path:e,method:n,body:r,headers:s}){let i=Gn(t.path,e),a=Gn(t.method,n),c=typeof t.body<"u"?Gn(t.body,r):!0,l=bB(t,s);return i&&a&&c&&l}o(x_,"matchKey");function RB(t){return Buffer.isBuffer(t)||t instanceof Uint8Array||t instanceof ArrayBuffer?t:typeof t=="object"?JSON.stringify(t):t.toString()}o(RB,"getResponseData");function kB(t,e){let n=e.query?k_(e.path,e.query):e.path,r=typeof n=="string"?QB(n):n,s=t.filter(({consumed:i})=>!i).filter(({path:i})=>Gn(QB(i),r));if(s.length===0)throw new ms(`Mock dispatch not matched for path '${r}'`);if(s=s.filter(({method:i})=>Gn(i,e.method)),s.length===0)throw new ms(`Mock dispatch not matched for method '${e.method}' on path '${r}'`);if(s=s.filter(({body:i})=>typeof i<"u"?Gn(i,e.body):!0),s.length===0)throw new ms(`Mock dispatch not matched for body '${e.body}' on path '${r}'`);if(s=s.filter(i=>bB(i,e.headers)),s.length===0){let i=typeof e.headers=="object"?JSON.stringify(e.headers):e.headers;throw new ms(`Mock dispatch not matched for headers '${i}' on path '${r}'`)}return s[0]}o(kB,"getMockDispatch");function D_(t,e,n){let r={timesInvoked:0,times:1,persist:!1,consumed:!1},s=typeof n=="function"?{callback:n}:{...n},i={...r,...e,pending:!0,data:{error:null,...s}};return t.push(i),i}o(D_,"addMockDispatch");function hh(t,e){let n=t.findIndex(r=>r.consumed?x_(r,e):!1);n!==-1&&t.splice(n,1)}o(hh,"deleteMockDispatch");function SB(t){let{path:e,method:n,body:r,headers:s,query:i}=t;return{path:e,method:n,body:r,headers:s,query:i}}o(SB,"buildKey");function ph(t){let e=Object.keys(t),n=[];for(let r=0;r<e.length;++r){let s=e[r],i=t[s],a=Buffer.from(`${s}`);if(Array.isArray(i))for(let c=0;c<i.length;++c)n.push(a,Buffer.from(`${i[c]}`));else n.push(a,Buffer.from(`${i}`))}return n}o(ph,"generateKeyValues");function vB(t){return S_[t]||"unknown"}o(vB,"getStatusText");async function T_(t){let e=[];for await(let n of t)e.push(n);return Buffer.concat(e).toString("utf8")}o(T_,"getResponse");function xB(t,e){let n=SB(t),r=kB(this[Bc],n);r.timesInvoked++,r.data.callback&&(r.data={...r.data,...r.data.callback(t)});let{data:{statusCode:s,data:i,headers:a,trailers:c,error:l},delay:d,persist:g}=r,{timesInvoked:h,times:f}=r;if(r.consumed=!g&&h>=f,r.pending=h<f,l!==null)return hh(this[Bc],n),e.onError(l),!0;typeof d=="number"&&d>0?setTimeout(()=>{m(this[Bc])},d):m(this[Bc]);function m(y,v=i){let Q=Array.isArray(t.headers)?fh(t.headers):t.headers,x=typeof v=="function"?v({...t,headers:Q}):v;if(v_(x)){x.then(Ee=>m(y,Ee));return}let G=RB(x),P=ph(a),ae=ph(c);e.onConnect?.(Ee=>e.onError(Ee),null),e.onHeaders?.(s,P,C,vB(s)),e.onData?.(Buffer.from(G)),e.onComplete?.(ae),hh(y,n)}o(m,"handleReply");function C(){}return o(C,"resume"),!0}o(xB,"mockDispatch");function N_(){let t=this[B_],e=this[b_],n=this[w_];return o(function(s,i){if(t.isMockActive)try{xB.call(this,s,i)}catch(a){if(a instanceof ms){let c=t[R_]();if(c===!1)throw new ms(`${a.message}: subsequent request to origin ${e} was not allowed (net.connect disabled)`);if(DB(c,e))n.call(this,s,i);else throw new ms(`${a.message}: subsequent request to origin ${e} was not allowed (net.connect is not enabled for this origin)`)}else throw a}else n.call(this,s,i)},"dispatch")}o(N_,"buildMockDispatch");function DB(t,e){let n=new URL(e);return t===!0?!0:!!(Array.isArray(t)&&t.some(r=>Gn(r,n.host)))}o(DB,"checkNetConnect");function F_(t){if(t){let{agent:e,...n}=t;return n}}o(F_,"buildMockOptions");TB.exports={getResponseData:RB,getMockDispatch:kB,addMockDispatch:D_,deleteMockDispatch:hh,buildKey:SB,generateKeyValues:ph,matchValue:Gn,getResponse:T_,getStatusText:vB,mockDispatch:xB,buildMockDispatch:N_,checkNetConnect:DB,buildMockOptions:F_,getHeaderByName:wB,buildHeadersFromArray:fh}});var Bh=T((F8,Qh)=>{"use strict";var{getResponseData:U_,buildKey:M_,addMockDispatch:mh}=la(),{kDispatches:wc,kDispatchKey:bc,kDefaultHeaders:Eh,kDefaultTrailers:Ch,kContentLength:Ih,kMockDispatch:Rc}=Di(),{InvalidArgumentError:In}=pe(),{buildURL:L_}=ue(),Ti=class{static{o(this,"MockScope")}constructor(e){this[Rc]=e}delay(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new In("waitInMs must be a valid integer > 0");return this[Rc].delay=e,this}persist(){return this[Rc].persist=!0,this}times(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new In("repeatTimes must be a valid integer > 0");return this[Rc].times=e,this}},yh=class{static{o(this,"MockInterceptor")}constructor(e,n){if(typeof e!="object")throw new In("opts must be an object");if(typeof e.path>"u")throw new In("opts.path must be defined");if(typeof e.method>"u"&&(e.method="GET"),typeof e.path=="string")if(e.query)e.path=L_(e.path,e.query);else{let r=new URL(e.path,"data://");e.path=r.pathname+r.search}typeof e.method=="string"&&(e.method=e.method.toUpperCase()),this[bc]=M_(e),this[wc]=n,this[Eh]={},this[Ch]={},this[Ih]=!1}createMockScopeDispatchData({statusCode:e,data:n,responseOptions:r}){let s=U_(n),i=this[Ih]?{"content-length":s.length}:{},a={...this[Eh],...i,...r.headers},c={...this[Ch],...r.trailers};return{statusCode:e,data:n,headers:a,trailers:c}}validateReplyParameters(e){if(typeof e.statusCode>"u")throw new In("statusCode must be defined");if(typeof e.responseOptions!="object"||e.responseOptions===null)throw new In("responseOptions must be an object")}reply(e){if(typeof e=="function"){let i=o(c=>{let l=e(c);if(typeof l!="object"||l===null)throw new In("reply options callback must return an object");let d={data:"",responseOptions:{},...l};return this.validateReplyParameters(d),{...this.createMockScopeDispatchData(d)}},"wrappedDefaultsCallback"),a=mh(this[wc],this[bc],i);return new Ti(a)}let n={statusCode:e,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(n);let r=this.createMockScopeDispatchData(n),s=mh(this[wc],this[bc],r);return new Ti(s)}replyWithError(e){if(typeof e>"u")throw new In("error must be defined");let n=mh(this[wc],this[bc],{error:e});return new Ti(n)}defaultReplyHeaders(e){if(typeof e>"u")throw new In("headers must be defined");return this[Eh]=e,this}defaultReplyTrailers(e){if(typeof e>"u")throw new In("trailers must be defined");return this[Ch]=e,this}replyContentLength(){return this[Ih]=!0,this}};Qh.exports.MockInterceptor=yh;Qh.exports.MockScope=Ti});var Rh=T((M8,PB)=>{"use strict";var{promisify:__}=require("node:util"),P_=Qi(),{buildMockDispatch:O_}=la(),{kDispatches:NB,kMockAgent:FB,kClose:UB,kOriginalClose:MB,kOrigin:LB,kOriginalDispatch:G_,kConnected:wh}=Di(),{MockInterceptor:$_}=Bh(),_B=Se(),{InvalidArgumentError:Y_}=pe(),bh=class extends P_{static{o(this,"MockClient")}constructor(e,n){if(super(e,n),!n||!n.agent||typeof n.agent.dispatch!="function")throw new Y_("Argument opts.agent must implement Agent");this[FB]=n.agent,this[LB]=e,this[NB]=[],this[wh]=1,this[G_]=this.dispatch,this[MB]=this.close.bind(this),this.dispatch=O_.call(this),this.close=this[UB]}get[_B.kConnected](){return this[wh]}intercept(e){return new $_(e,this[NB])}async[UB](){await __(this[MB])(),this[wh]=0,this[FB][_B.kClients].delete(this[LB])}};PB.exports=bh});var vh=T((_8,JB)=>{"use strict";var{promisify:H_}=require("node:util"),V_=Bi(),{buildMockDispatch:J_}=la(),{kDispatches:OB,kMockAgent:GB,kClose:$B,kOriginalClose:YB,kOrigin:HB,kOriginalDispatch:q_,kConnected:kh}=Di(),{MockInterceptor:j_}=Bh(),VB=Se(),{InvalidArgumentError:W_}=pe(),Sh=class extends V_{static{o(this,"MockPool")}constructor(e,n){if(super(e,n),!n||!n.agent||typeof n.agent.dispatch!="function")throw new W_("Argument opts.agent must implement Agent");this[GB]=n.agent,this[HB]=e,this[OB]=[],this[kh]=1,this[q_]=this.dispatch,this[YB]=this.close.bind(this),this.dispatch=J_.call(this),this.close=this[$B]}get[VB.kConnected](){return this[kh]}intercept(e){return new j_(e,this[OB])}async[$B](){await H_(this[YB])(),this[kh]=0,this[GB][VB.kClients].delete(this[HB])}};JB.exports=Sh});var jB=T((G8,qB)=>{"use strict";var z_={pronoun:"it",is:"is",was:"was",this:"this"},Z_={pronoun:"they",is:"are",was:"were",this:"these"};qB.exports=class{static{o(this,"Pluralizer")}constructor(e,n){this.singular=e,this.plural=n}pluralize(e){let n=e===1,r=n?z_:Z_,s=n?this.singular:this.plural;return{...r,count:e,noun:s}}}});var zB=T((H8,WB)=>{"use strict";var{Transform:K_}=require("node:stream"),{Console:X_}=require("node:console"),eP=process.versions.icu?"\u2705":"Y ",tP=process.versions.icu?"\u274C":"N ";WB.exports=class{static{o(this,"PendingInterceptorsFormatter")}constructor({disableColors:e}={}){this.transform=new K_({transform(n,r,s){s(null,n)}}),this.logger=new X_({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let n=e.map(({method:r,path:s,data:{statusCode:i},persist:a,times:c,timesInvoked:l,origin:d})=>({Method:r,Origin:d,Path:s,"Status code":i,Persistent:a?eP:tP,Invocations:l,Remaining:a?1/0:c-l}));return this.logger.table(n),this.transform.read().toString()}}});var ew=T((J8,XB)=>{"use strict";var{kClients:Es}=Se(),nP=wi(),{kAgent:xh,kMockAgentSet:kc,kMockAgentGet:ZB,kDispatches:Dh,kIsMockActive:Sc,kNetConnect:Cs,kGetNetConnect:rP,kOptions:vc,kFactory:xc}=Di(),sP=Rh(),iP=vh(),{matchValue:oP,buildMockOptions:aP}=la(),{InvalidArgumentError:KB,UndiciError:AP}=pe(),cP=Fo(),uP=jB(),lP=zB(),Th=class extends cP{static{o(this,"MockAgent")}constructor(e){if(super(e),this[Cs]=!0,this[Sc]=!0,e?.agent&&typeof e.agent.dispatch!="function")throw new KB("Argument opts.agent must implement Agent");let n=e?.agent?e.agent:new nP(e);this[xh]=n,this[Es]=n[Es],this[vc]=aP(e)}get(e){let n=this[ZB](e);return n||(n=this[xc](e),this[kc](e,n)),n}dispatch(e,n){return this.get(e.origin),this[xh].dispatch(e,n)}async close(){await this[xh].close(),this[Es].clear()}deactivate(){this[Sc]=!1}activate(){this[Sc]=!0}enableNetConnect(e){if(typeof e=="string"||typeof e=="function"||e instanceof RegExp)Array.isArray(this[Cs])?this[Cs].push(e):this[Cs]=[e];else if(typeof e>"u")this[Cs]=!0;else throw new KB("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Cs]=!1}get isMockActive(){return this[Sc]}[kc](e,n){this[Es].set(e,n)}[xc](e){let n=Object.assign({agent:this},this[vc]);return this[vc]&&this[vc].connections===1?new sP(e,n):new iP(e,n)}[ZB](e){let n=this[Es].get(e);if(n)return n;if(typeof e!="string"){let r=this[xc]("http://localhost:9999");return this[kc](e,r),r}for(let[r,s]of Array.from(this[Es]))if(s&&typeof r!="string"&&oP(r,e)){let i=this[xc](e);return this[kc](e,i),i[Dh]=s[Dh],i}}[rP](){return this[Cs]}pendingInterceptors(){let e=this[Es];return Array.from(e.entries()).flatMap(([n,r])=>r[Dh].map(s=>({...s,origin:n}))).filter(({pending:n})=>n)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new lP}={}){let n=this.pendingInterceptors();if(n.length===0)return;let r=new uP("interceptor","interceptors").pluralize(n.length);throw new AP(`
42
+ ${r.count} ${r.noun} ${r.is} pending:
43
+
44
+ ${e.format(n)}
45
+ `.trim())}};XB.exports=Th});var Dc=T((j8,sw)=>{"use strict";var tw=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dP}=pe(),gP=wi();rw()===void 0&&nw(new gP);function nw(t){if(!t||typeof t.dispatch!="function")throw new dP("Argument agent must implement Agent");Object.defineProperty(globalThis,tw,{value:t,writable:!0,enumerable:!1,configurable:!1})}o(nw,"setGlobalDispatcher");function rw(){return globalThis[tw]}o(rw,"getGlobalDispatcher");sw.exports={setGlobalDispatcher:nw,getGlobalDispatcher:rw}});var Tc=T((Z8,iw)=>{"use strict";iw.exports=class{static{o(this,"DecoratorHandler")}#e;constructor(e){if(typeof e!="object"||e===null)throw new TypeError("handler must be an object");this.#e=e}onConnect(...e){return this.#e.onConnect?.(...e)}onError(...e){return this.#e.onError?.(...e)}onUpgrade(...e){return this.#e.onUpgrade?.(...e)}onResponseStarted(...e){return this.#e.onResponseStarted?.(...e)}onHeaders(...e){return this.#e.onHeaders?.(...e)}onData(...e){return this.#e.onData?.(...e)}onComplete(...e){return this.#e.onComplete?.(...e)}onBodySent(...e){return this.#e.onBodySent?.(...e)}}});var aw=T((X8,ow)=>{"use strict";var hP=uc();ow.exports=t=>{let e=t?.maxRedirections;return n=>o(function(s,i){let{maxRedirections:a=e,...c}=s;if(!a)return n(s,i);let l=new hP(n,a,s,i);return n(c,l)},"redirectInterceptor")}});var cw=T((t4,Aw)=>{"use strict";var pP=yc();Aw.exports=t=>e=>o(function(r,s){return e(r,new pP({...r,retryOptions:{...t,...r.retryOptions}},{handler:s,dispatch:e}))},"retryInterceptor")});var lw=T((r4,uw)=>{"use strict";var fP=ue(),{InvalidArgumentError:mP,RequestAbortedError:EP}=pe(),CP=Tc(),Nh=class extends CP{static{o(this,"DumpHandler")}#e=1024*1024;#t=null;#n=!1;#i=!1;#s=0;#r=null;#o=null;constructor({maxSize:e},n){if(super(n),e!=null&&(!Number.isFinite(e)||e<1))throw new mP("maxSize must be a number greater than 0");this.#e=e??this.#e,this.#o=n}onConnect(e){this.#t=e,this.#o.onConnect(this.#a.bind(this))}#a(e){this.#i=!0,this.#r=e}onHeaders(e,n,r,s){let a=fP.parseHeaders(n)["content-length"];if(a!=null&&a>this.#e)throw new EP(`Response size (${a}) larger than maxSize (${this.#e})`);return this.#i?!0:this.#o.onHeaders(e,n,r,s)}onError(e){this.#n||(e=this.#r??e,this.#o.onError(e))}onData(e){return this.#s=this.#s+e.length,this.#s>=this.#e&&(this.#n=!0,this.#i?this.#o.onError(this.#r):this.#o.onComplete([])),!0}onComplete(e){if(!this.#n){if(this.#i){this.#o.onError(this.reason);return}this.#o.onComplete(e)}}};function IP({maxSize:t}={maxSize:1024*1024}){return e=>o(function(r,s){let{dumpMaxSize:i=t}=r,a=new Nh({maxSize:i},s);return e(r,a)},"Intercept")}o(IP,"createDumpInterceptor");uw.exports=IP});var hw=T((i4,gw)=>{"use strict";var{isIP:yP}=require("node:net"),{lookup:QP}=require("node:dns"),BP=Tc(),{InvalidArgumentError:Ni,InformationalError:wP}=pe(),dw=Math.pow(2,31)-1,Fh=class{static{o(this,"DNSInstance")}#e=0;#t=0;#n=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(e){this.#e=e.maxTTL,this.#t=e.maxItems,this.dualStack=e.dualStack,this.affinity=e.affinity,this.lookup=e.lookup??this.#i,this.pick=e.pick??this.#s}get full(){return this.#n.size===this.#t}runLookup(e,n,r){let s=this.#n.get(e.hostname);if(s==null&&this.full){r(null,e.origin);return}let i={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...n.dns,maxTTL:this.#e,maxItems:this.#t};if(s==null)this.lookup(e,i,(a,c)=>{if(a||c==null||c.length===0){r(a??new wP("No DNS entries found"));return}this.setRecords(e,c);let l=this.#n.get(e.hostname),d=this.pick(e,l,i.affinity),g;typeof d.port=="number"?g=`:${d.port}`:e.port!==""?g=`:${e.port}`:g="",r(null,`${e.protocol}//${d.family===6?`[${d.address}]`:d.address}${g}`)});else{let a=this.pick(e,s,i.affinity);if(a==null){this.#n.delete(e.hostname),this.runLookup(e,n,r);return}let c;typeof a.port=="number"?c=`:${a.port}`:e.port!==""?c=`:${e.port}`:c="",r(null,`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${c}`)}}#i(e,n,r){QP(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(s,i)=>{if(s)return r(s);let a=new Map;for(let c of i)a.set(`${c.address}:${c.family}`,c);r(null,a.values())})}#s(e,n,r){let s=null,{records:i,offset:a}=n,c;if(this.dualStack?(r==null&&(a==null||a===dw?(n.offset=0,r=4):(n.offset++,r=(n.offset&1)===1?6:4)),i[r]!=null&&i[r].ips.length>0?c=i[r]:c=i[r===4?6:4]):c=i[r],c==null||c.ips.length===0)return s;c.offset==null||c.offset===dw?c.offset=0:c.offset++;let l=c.offset%c.ips.length;return s=c.ips[l]??null,s==null?s:Date.now()-s.timestamp>s.ttl?(c.ips.splice(l,1),this.pick(e,n,r)):s}setRecords(e,n){let r=Date.now(),s={records:{4:null,6:null}};for(let i of n){i.timestamp=r,typeof i.ttl=="number"?i.ttl=Math.min(i.ttl,this.#e):i.ttl=this.#e;let a=s.records[i.family]??{ips:[]};a.ips.push(i),s.records[i.family]=a}this.#n.set(e.hostname,s)}getHandler(e,n){return new Uh(this,e,n)}},Uh=class extends BP{static{o(this,"DNSDispatchHandler")}#e=null;#t=null;#n=null;#i=null;#s=null;constructor(e,{origin:n,handler:r,dispatch:s},i){super(r),this.#s=n,this.#i=r,this.#t={...i},this.#e=e,this.#n=s}onError(e){switch(e.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#e.dualStack){this.#e.runLookup(this.#s,this.#t,(n,r)=>{if(n)return this.#i.onError(n);let s={...this.#t,origin:r};this.#n(s,this)});return}this.#i.onError(e);return}case"ENOTFOUND":this.#e.deleteRecord(this.#s);default:this.#i.onError(e);break}}};gw.exports=t=>{if(t?.maxTTL!=null&&(typeof t?.maxTTL!="number"||t?.maxTTL<0))throw new Ni("Invalid maxTTL. Must be a positive number");if(t?.maxItems!=null&&(typeof t?.maxItems!="number"||t?.maxItems<1))throw new Ni("Invalid maxItems. Must be a positive number and greater than zero");if(t?.affinity!=null&&t?.affinity!==4&&t?.affinity!==6)throw new Ni("Invalid affinity. Must be either 4 or 6");if(t?.dualStack!=null&&typeof t?.dualStack!="boolean")throw new Ni("Invalid dualStack. Must be a boolean");if(t?.lookup!=null&&typeof t?.lookup!="function")throw new Ni("Invalid lookup. Must be a function");if(t?.pick!=null&&typeof t?.pick!="function")throw new Ni("Invalid pick. Must be a function");let e=t?.dualStack??!0,n;e?n=t?.affinity??null:n=t?.affinity??4;let r={maxTTL:t?.maxTTL??1e4,lookup:t?.lookup??null,pick:t?.pick??null,dualStack:e,affinity:n,maxItems:t?.maxItems??1/0},s=new Fh(r);return i=>o(function(c,l){let d=c.origin.constructor===URL?c.origin:new URL(c.origin);return yP(d.hostname)!==0?i(c,l):(s.runLookup(d,c,(g,h)=>{if(g)return l.onError(g);let f=null;f={...c,servername:d.hostname,origin:h,headers:{host:d.hostname,...c.headers}},i(f,s.getHandler({origin:d,dispatch:i,handler:l},c))}),!0)},"dnsInterceptor")}});var Is=T((a4,yw)=>{"use strict";var{kConstruct:bP}=Se(),{kEnumerableProperty:Fi}=ue(),{iteratorMixin:RP,isValidHeaderName:da,isValidHeaderValue:fw}=Qt(),{webidl:he}=je(),Mh=require("node:assert"),Nc=require("node:util"),Pe=Symbol("headers map"),Rt=Symbol("headers map sorted");function pw(t){return t===10||t===13||t===9||t===32}o(pw,"isHTTPWhiteSpaceCharCode");function mw(t){let e=0,n=t.length;for(;n>e&&pw(t.charCodeAt(n-1));)--n;for(;n>e&&pw(t.charCodeAt(e));)++e;return e===0&&n===t.length?t:t.substring(e,n)}o(mw,"headerValueNormalize");function Ew(t,e){if(Array.isArray(e))for(let n=0;n<e.length;++n){let r=e[n];if(r.length!==2)throw he.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${r.length}.`});Lh(t,r[0],r[1])}else if(typeof e=="object"&&e!==null){let n=Object.keys(e);for(let r=0;r<n.length;++r)Lh(t,n[r],e[n[r]])}else throw he.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})}o(Ew,"fill");function Lh(t,e,n){if(n=mw(n),da(e)){if(!fw(n))throw he.errors.invalidArgument({prefix:"Headers.append",value:n,type:"header value"})}else throw he.errors.invalidArgument({prefix:"Headers.append",value:e,type:"header name"});if(Iw(t)==="immutable")throw new TypeError("immutable");return _h(t).append(e,n,!1)}o(Lh,"appendHeader");function Cw(t,e){return t[0]<e[0]?-1:1}o(Cw,"compareHeaderName");var Fc=class t{static{o(this,"HeadersList")}cookies=null;constructor(e){e instanceof t?(this[Pe]=new Map(e[Pe]),this[Rt]=e[Rt],this.cookies=e.cookies===null?null:[...e.cookies]):(this[Pe]=new Map(e),this[Rt]=null)}contains(e,n){return this[Pe].has(n?e:e.toLowerCase())}clear(){this[Pe].clear(),this[Rt]=null,this.cookies=null}append(e,n,r){this[Rt]=null;let s=r?e:e.toLowerCase(),i=this[Pe].get(s);if(i){let a=s==="cookie"?"; ":", ";this[Pe].set(s,{name:i.name,value:`${i.value}${a}${n}`})}else this[Pe].set(s,{name:e,value:n});s==="set-cookie"&&(this.cookies??=[]).push(n)}set(e,n,r){this[Rt]=null;let s=r?e:e.toLowerCase();s==="set-cookie"&&(this.cookies=[n]),this[Pe].set(s,{name:e,value:n})}delete(e,n){this[Rt]=null,n||(e=e.toLowerCase()),e==="set-cookie"&&(this.cookies=null),this[Pe].delete(e)}get(e,n){return this[Pe].get(n?e:e.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:e,1:{value:n}}of this[Pe])yield[e,n]}get entries(){let e={};if(this[Pe].size!==0)for(let{name:n,value:r}of this[Pe].values())e[n]=r;return e}rawValues(){return this[Pe].values()}get entriesList(){let e=[];if(this[Pe].size!==0)for(let{0:n,1:{name:r,value:s}}of this[Pe])if(n==="set-cookie")for(let i of this.cookies)e.push([r,i]);else e.push([r,s]);return e}toSortedArray(){let e=this[Pe].size,n=new Array(e);if(e<=32){if(e===0)return n;let r=this[Pe][Symbol.iterator](),s=r.next().value;n[0]=[s[0],s[1].value],Mh(s[1].value!==null);for(let i=1,a=0,c=0,l=0,d=0,g,h;i<e;++i){for(h=r.next().value,g=n[i]=[h[0],h[1].value],Mh(g[1]!==null),l=0,c=i;l<c;)d=l+(c-l>>1),n[d][0]<=g[0]?l=d+1:c=d;if(i!==d){for(a=i;a>l;)n[a]=n[--a];n[l]=g}}if(!r.next().done)throw new TypeError("Unreachable");return n}else{let r=0;for(let{0:s,1:{value:i}}of this[Pe])n[r++]=[s,i],Mh(i!==null);return n.sort(Cw)}}},tn=class t{static{o(this,"Headers")}#e;#t;constructor(e=void 0){he.util.markAsUncloneable(this),e!==bP&&(this.#t=new Fc,this.#e="none",e!==void 0&&(e=he.converters.HeadersInit(e,"Headers contructor","init"),Ew(this,e)))}append(e,n){he.brandCheck(this,t),he.argumentLengthCheck(arguments,2,"Headers.append");let r="Headers.append";return e=he.converters.ByteString(e,r,"name"),n=he.converters.ByteString(n,r,"value"),Lh(this,e,n)}delete(e){if(he.brandCheck(this,t),he.argumentLengthCheck(arguments,1,"Headers.delete"),e=he.converters.ByteString(e,"Headers.delete","name"),!da(e))throw he.errors.invalidArgument({prefix:"Headers.delete",value:e,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.contains(e,!1)&&this.#t.delete(e,!1)}get(e){he.brandCheck(this,t),he.argumentLengthCheck(arguments,1,"Headers.get");let n="Headers.get";if(e=he.converters.ByteString(e,n,"name"),!da(e))throw he.errors.invalidArgument({prefix:n,value:e,type:"header name"});return this.#t.get(e,!1)}has(e){he.brandCheck(this,t),he.argumentLengthCheck(arguments,1,"Headers.has");let n="Headers.has";if(e=he.converters.ByteString(e,n,"name"),!da(e))throw he.errors.invalidArgument({prefix:n,value:e,type:"header name"});return this.#t.contains(e,!1)}set(e,n){he.brandCheck(this,t),he.argumentLengthCheck(arguments,2,"Headers.set");let r="Headers.set";if(e=he.converters.ByteString(e,r,"name"),n=he.converters.ByteString(n,r,"value"),n=mw(n),da(e)){if(!fw(n))throw he.errors.invalidArgument({prefix:r,value:n,type:"header value"})}else throw he.errors.invalidArgument({prefix:r,value:e,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(e,n,!1)}getSetCookie(){he.brandCheck(this,t);let e=this.#t.cookies;return e?[...e]:[]}get[Rt](){if(this.#t[Rt])return this.#t[Rt];let e=[],n=this.#t.toSortedArray(),r=this.#t.cookies;if(r===null||r.length===1)return this.#t[Rt]=n;for(let s=0;s<n.length;++s){let{0:i,1:a}=n[s];if(i==="set-cookie")for(let c=0;c<r.length;++c)e.push([i,r[c]]);else e.push([i,a])}return this.#t[Rt]=e}[Nc.inspect.custom](e,n){return n.depth??=e,`Headers ${Nc.formatWithOptions(n,this.#t.entries)}`}static getHeadersGuard(e){return e.#e}static setHeadersGuard(e,n){e.#e=n}static getHeadersList(e){return e.#t}static setHeadersList(e,n){e.#t=n}},{getHeadersGuard:Iw,setHeadersGuard:kP,getHeadersList:_h,setHeadersList:SP}=tn;Reflect.deleteProperty(tn,"getHeadersGuard");Reflect.deleteProperty(tn,"setHeadersGuard");Reflect.deleteProperty(tn,"getHeadersList");Reflect.deleteProperty(tn,"setHeadersList");RP("Headers",tn,Rt,0,1);Object.defineProperties(tn.prototype,{append:Fi,delete:Fi,get:Fi,has:Fi,set:Fi,getSetCookie:Fi,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Nc.inspect.custom]:{enumerable:!1}});he.converters.HeadersInit=function(t,e,n){if(he.util.Type(t)==="Object"){let r=Reflect.get(t,Symbol.iterator);if(!Nc.types.isProxy(t)&&r===tn.prototype.entries)try{return _h(t).entriesList}catch{}return typeof r=="function"?he.converters["sequence<sequence<ByteString>>"](t,e,n,r.bind(t)):he.converters["record<ByteString, ByteString>"](t,e,n)}throw he.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})};yw.exports={fill:Ew,compareHeaderName:Cw,Headers:tn,HeadersList:Fc,getHeadersGuard:Iw,setHeadersGuard:kP,setHeadersList:SP,getHeadersList:_h}});var ha=T((c4,Nw)=>{"use strict";var{Headers:kw,HeadersList:Qw,fill:vP,getHeadersGuard:xP,setHeadersGuard:Sw,setHeadersList:vw}=Is(),{extractBody:Bw,cloneBody:DP,mixinBody:TP,hasFinalizationRegistry:xw,streamRegistry:Dw,bodyUnusable:NP}=pi(),Ph=ue(),ww=require("node:util"),{kEnumerableProperty:kt}=Ph,{isValidReasonPhrase:FP,isCancelled:UP,isAborted:MP,isBlobLike:LP,serializeJavascriptValueToJSONString:_P,isErrorLike:PP,isomorphicEncode:OP,environmentSettingsObject:GP}=Qt(),{redirectStatusSet:$P,nullBodyStatus:YP}=Lo(),{kState:xe,kHeaders:$n}=ur(),{webidl:oe}=je(),{FormData:HP}=Yo(),{URLSerializer:bw}=gt(),{kConstruct:Mc}=Se(),Oh=require("node:assert"),{types:VP}=require("node:util"),JP=new TextEncoder("utf-8"),ys=class t{static{o(this,"Response")}static error(){return ga(Lc(),"immutable")}static json(e,n={}){oe.argumentLengthCheck(arguments,1,"Response.json"),n!==null&&(n=oe.converters.ResponseInit(n));let r=JP.encode(_P(e)),s=Bw(r),i=ga(Ui({}),"response");return Rw(i,n,{body:s[0],type:"application/json"}),i}static redirect(e,n=302){oe.argumentLengthCheck(arguments,1,"Response.redirect"),e=oe.converters.USVString(e),n=oe.converters["unsigned short"](n);let r;try{r=new URL(e,GP.settingsObject.baseUrl)}catch(a){throw new TypeError(`Failed to parse URL from ${e}`,{cause:a})}if(!$P.has(n))throw new RangeError(`Invalid status code ${n}`);let s=ga(Ui({}),"immutable");s[xe].status=n;let i=OP(bw(r));return s[xe].headersList.append("location",i,!0),s}constructor(e=null,n={}){if(oe.util.markAsUncloneable(this),e===Mc)return;e!==null&&(e=oe.converters.BodyInit(e)),n=oe.converters.ResponseInit(n),this[xe]=Ui({}),this[$n]=new kw(Mc),Sw(this[$n],"response"),vw(this[$n],this[xe].headersList);let r=null;if(e!=null){let[s,i]=Bw(e);r={body:s,type:i}}Rw(this,n,r)}get type(){return oe.brandCheck(this,t),this[xe].type}get url(){oe.brandCheck(this,t);let e=this[xe].urlList,n=e[e.length-1]??null;return n===null?"":bw(n,!0)}get redirected(){return oe.brandCheck(this,t),this[xe].urlList.length>1}get status(){return oe.brandCheck(this,t),this[xe].status}get ok(){return oe.brandCheck(this,t),this[xe].status>=200&&this[xe].status<=299}get statusText(){return oe.brandCheck(this,t),this[xe].statusText}get headers(){return oe.brandCheck(this,t),this[$n]}get body(){return oe.brandCheck(this,t),this[xe].body?this[xe].body.stream:null}get bodyUsed(){return oe.brandCheck(this,t),!!this[xe].body&&Ph.isDisturbed(this[xe].body.stream)}clone(){if(oe.brandCheck(this,t),NP(this))throw oe.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let e=Gh(this[xe]);return xw&&this[xe].body?.stream&&Dw.register(this,new WeakRef(this[xe].body.stream)),ga(e,xP(this[$n]))}[ww.inspect.custom](e,n){n.depth===null&&(n.depth=2),n.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 ${ww.formatWithOptions(n,r)}`}};TP(ys);Object.defineProperties(ys.prototype,{type:kt,url:kt,status:kt,ok:kt,redirected:kt,statusText:kt,headers:kt,clone:kt,body:kt,bodyUsed:kt,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ys,{json:kt,redirect:kt,error:kt});function Gh(t){if(t.internalResponse)return Tw(Gh(t.internalResponse),t.type);let e=Ui({...t,body:null});return t.body!=null&&(e.body=DP(e,t.body)),e}o(Gh,"cloneResponse");function Ui(t){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...t,headersList:t?.headersList?new Qw(t?.headersList):new Qw,urlList:t?.urlList?[...t.urlList]:[]}}o(Ui,"makeResponse");function Lc(t){let e=PP(t);return Ui({type:"error",status:0,error:e?t:new Error(t&&String(t)),aborted:t&&t.name==="AbortError"})}o(Lc,"makeNetworkError");function qP(t){return t.type==="error"&&t.status===0}o(qP,"isNetworkError");function Uc(t,e){return e={internalResponse:t,...e},new Proxy(t,{get(n,r){return r in e?e[r]:n[r]},set(n,r,s){return Oh(!(r in e)),n[r]=s,!0}})}o(Uc,"makeFilteredResponse");function Tw(t,e){if(e==="basic")return Uc(t,{type:"basic",headersList:t.headersList});if(e==="cors")return Uc(t,{type:"cors",headersList:t.headersList});if(e==="opaque")return Uc(t,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(e==="opaqueredirect")return Uc(t,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});Oh(!1)}o(Tw,"filterResponse");function jP(t,e=null){return Oh(UP(t)),MP(t)?Lc(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:e})):Lc(Object.assign(new DOMException("Request was cancelled."),{cause:e}))}o(jP,"makeAppropriateNetworkError");function Rw(t,e,n){if(e.status!==null&&(e.status<200||e.status>599))throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in e&&e.statusText!=null&&!FP(String(e.statusText)))throw new TypeError("Invalid statusText");if("status"in e&&e.status!=null&&(t[xe].status=e.status),"statusText"in e&&e.statusText!=null&&(t[xe].statusText=e.statusText),"headers"in e&&e.headers!=null&&vP(t[$n],e.headers),n){if(YP.includes(t.status))throw oe.errors.exception({header:"Response constructor",message:`Invalid response status code ${t.status}`});t[xe].body=n.body,n.type!=null&&!t[xe].headersList.contains("content-type",!0)&&t[xe].headersList.append("content-type",n.type,!0)}}o(Rw,"initializeResponse");function ga(t,e){let n=new ys(Mc);return n[xe]=t,n[$n]=new kw(Mc),vw(n[$n],t.headersList),Sw(n[$n],e),xw&&t.body?.stream&&Dw.register(n,new WeakRef(t.body.stream)),n}o(ga,"fromInnerResponse");oe.converters.ReadableStream=oe.interfaceConverter(ReadableStream);oe.converters.FormData=oe.interfaceConverter(HP);oe.converters.URLSearchParams=oe.interfaceConverter(URLSearchParams);oe.converters.XMLHttpRequestBodyInit=function(t,e,n){return typeof t=="string"?oe.converters.USVString(t,e,n):LP(t)?oe.converters.Blob(t,e,n,{strict:!1}):ArrayBuffer.isView(t)||VP.isArrayBuffer(t)?oe.converters.BufferSource(t,e,n):Ph.isFormDataLike(t)?oe.converters.FormData(t,e,n,{strict:!1}):t instanceof URLSearchParams?oe.converters.URLSearchParams(t,e,n):oe.converters.DOMString(t,e,n)};oe.converters.BodyInit=function(t,e,n){return t instanceof ReadableStream?oe.converters.ReadableStream(t,e,n):t?.[Symbol.asyncIterator]?t:oe.converters.XMLHttpRequestBodyInit(t,e,n)};oe.converters.ResponseInit=oe.dictionaryConverter([{key:"status",converter:oe.converters["unsigned short"],defaultValue:o(()=>200,"defaultValue")},{key:"statusText",converter:oe.converters.ByteString,defaultValue:o(()=>"","defaultValue")},{key:"headers",converter:oe.converters.HeadersInit}]);Nw.exports={isNetworkError:qP,makeNetworkError:Lc,makeResponse:Ui,makeAppropriateNetworkError:jP,filterResponse:Tw,Response:ys,cloneResponse:Gh,fromInnerResponse:ga}});var Lw=T((l4,Mw)=>{"use strict";var{kConnected:Fw,kSize:Uw}=Se(),$h=class{static{o(this,"CompatWeakRef")}constructor(e){this.value=e}deref(){return this.value[Fw]===0&&this.value[Uw]===0?void 0:this.value}},Yh=class{static{o(this,"CompatFinalizer")}constructor(e){this.finalizer=e}register(e,n){e.on&&e.on("disconnect",()=>{e[Fw]===0&&e[Uw]===0&&this.finalizer(n)})}unregister(e){}};Mw.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:$h,FinalizationRegistry:Yh}):{WeakRef,FinalizationRegistry}}});var Mi=T((g4,Kw)=>{"use strict";var{extractBody:WP,mixinBody:zP,cloneBody:ZP,bodyUnusable:_w}=pi(),{Headers:qw,fill:KP,HeadersList:Gc,setHeadersGuard:Vh,getHeadersGuard:XP,setHeadersList:jw,getHeadersList:Pw}=Is(),{FinalizationRegistry:eO}=Lw()(),Pc=ue(),Ow=require("node:util"),{isValidHTTPToken:tO,sameOrigin:Gw,environmentSettingsObject:_c}=Qt(),{forbiddenMethodsSet:nO,corsSafeListedMethodsSet:rO,referrerPolicy:sO,requestRedirect:iO,requestMode:oO,requestCredentials:aO,requestCache:AO,requestDuplex:cO}=Lo(),{kEnumerableProperty:Oe,normalizedMethodRecordsBase:uO,normalizedMethodRecords:lO}=Pc,{kHeaders:St,kSignal:Oc,kState:ke,kDispatcher:Hh}=ur(),{webidl:X}=je(),{URLSerializer:dO}=gt(),{kConstruct:$c}=Se(),gO=require("node:assert"),{getMaxListeners:$w,setMaxListeners:Yw,getEventListeners:hO,defaultMaxListeners:Hw}=require("node:events"),pO=Symbol("abortController"),Ww=new eO(({signal:t,abort:e})=>{t.removeEventListener("abort",e)}),Yc=new WeakMap;function Vw(t){return e;function e(){let n=t.deref();if(n!==void 0){Ww.unregister(e),this.removeEventListener("abort",e),n.abort(this.reason);let r=Yc.get(n.signal);if(r!==void 0){if(r.size!==0){for(let s of r){let i=s.deref();i!==void 0&&i.abort(this.reason)}r.clear()}Yc.delete(n.signal)}}}}o(Vw,"buildAbort");var Jw=!1,yr=class t{static{o(this,"Request")}constructor(e,n={}){if(X.util.markAsUncloneable(this),e===$c)return;let r="Request constructor";X.argumentLengthCheck(arguments,1,r),e=X.converters.RequestInfo(e,r,"input"),n=X.converters.RequestInit(n,r,"init");let s=null,i=null,a=_c.settingsObject.baseUrl,c=null;if(typeof e=="string"){this[Hh]=n.dispatcher;let Q;try{Q=new URL(e,a)}catch(x){throw new TypeError("Failed to parse URL from "+e,{cause:x})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e);s=Hc({urlList:[Q]}),i="cors"}else this[Hh]=n.dispatcher||e[Hh],gO(e instanceof t),s=e[ke],c=e[Oc];let l=_c.settingsObject.origin,d="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&Gw(s.window,l)&&(d=s.window),n.window!=null)throw new TypeError(`'window' option '${d}' must be null`);"window"in n&&(d="no-window"),s=Hc({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:_c.settingsObject,window:d,priority:s.priority,origin:s.origin,referrer:s.referrer,referrerPolicy:s.referrerPolicy,mode:s.mode,credentials:s.credentials,cache:s.cache,redirect:s.redirect,integrity:s.integrity,keepalive:s.keepalive,reloadNavigation:s.reloadNavigation,historyNavigation:s.historyNavigation,urlList:[...s.urlList]});let g=Object.keys(n).length!==0;if(g&&(s.mode==="navigate"&&(s.mode="same-origin"),s.reloadNavigation=!1,s.historyNavigation=!1,s.origin="client",s.referrer="client",s.referrerPolicy="",s.url=s.urlList[s.urlList.length-1],s.urlList=[s.url]),n.referrer!==void 0){let Q=n.referrer;if(Q==="")s.referrer="no-referrer";else{let x;try{x=new URL(Q,a)}catch(G){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:G})}x.protocol==="about:"&&x.hostname==="client"||l&&!Gw(x,_c.settingsObject.baseUrl)?s.referrer="client":s.referrer=x}}n.referrerPolicy!==void 0&&(s.referrerPolicy=n.referrerPolicy);let h;if(n.mode!==void 0?h=n.mode:h=i,h==="navigate")throw X.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(h!=null&&(s.mode=h),n.credentials!==void 0&&(s.credentials=n.credentials),n.cache!==void 0&&(s.cache=n.cache),s.cache==="only-if-cached"&&s.mode!=="same-origin")throw new TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(n.redirect!==void 0&&(s.redirect=n.redirect),n.integrity!=null&&(s.integrity=String(n.integrity)),n.keepalive!==void 0&&(s.keepalive=!!n.keepalive),n.method!==void 0){let Q=n.method,x=lO[Q];if(x!==void 0)s.method=x;else{if(!tO(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);let G=Q.toUpperCase();if(nO.has(G))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=uO[G]??Q,s.method=Q}!Jw&&s.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"}),Jw=!0)}n.signal!==void 0&&(c=n.signal),this[ke]=s;let f=new AbortController;if(this[Oc]=f.signal,c!=null){if(!c||typeof c.aborted!="boolean"||typeof c.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(c.aborted)f.abort(c.reason);else{this[pO]=f;let Q=new WeakRef(f),x=Vw(Q);try{(typeof $w=="function"&&$w(c)===Hw||hO(c,"abort").length>=Hw)&&Yw(1500,c)}catch{}Pc.addAbortListener(c,x),Ww.register(f,{signal:c,abort:x},x)}}if(this[St]=new qw($c),jw(this[St],s.headersList),Vh(this[St],"request"),h==="no-cors"){if(!rO.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);Vh(this[St],"request-no-cors")}if(g){let Q=Pw(this[St]),x=n.headers!==void 0?n.headers:new Gc(Q);if(Q.clear(),x instanceof Gc){for(let{name:G,value:P}of x.rawValues())Q.append(G,P,!1);Q.cookies=x.cookies}else KP(this[St],x)}let m=e instanceof t?e[ke].body:null;if((n.body!=null||m!=null)&&(s.method==="GET"||s.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let C=null;if(n.body!=null){let[Q,x]=WP(n.body,s.keepalive);C=Q,x&&!Pw(this[St]).contains("content-type",!0)&&this[St].append("content-type",x)}let y=C??m;if(y!=null&&y.source==null){if(C!=null&&n.duplex==null)throw new TypeError("RequestInit: duplex option is required when sending a body.");if(s.mode!=="same-origin"&&s.mode!=="cors")throw new TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');s.useCORSPreflightFlag=!0}let v=y;if(C==null&&m!=null){if(_w(e))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let Q=new TransformStream;m.stream.pipeThrough(Q),v={source:m.source,length:m.length,stream:Q.readable}}this[ke].body=v}get method(){return X.brandCheck(this,t),this[ke].method}get url(){return X.brandCheck(this,t),dO(this[ke].url)}get headers(){return X.brandCheck(this,t),this[St]}get destination(){return X.brandCheck(this,t),this[ke].destination}get referrer(){return X.brandCheck(this,t),this[ke].referrer==="no-referrer"?"":this[ke].referrer==="client"?"about:client":this[ke].referrer.toString()}get referrerPolicy(){return X.brandCheck(this,t),this[ke].referrerPolicy}get mode(){return X.brandCheck(this,t),this[ke].mode}get credentials(){return this[ke].credentials}get cache(){return X.brandCheck(this,t),this[ke].cache}get redirect(){return X.brandCheck(this,t),this[ke].redirect}get integrity(){return X.brandCheck(this,t),this[ke].integrity}get keepalive(){return X.brandCheck(this,t),this[ke].keepalive}get isReloadNavigation(){return X.brandCheck(this,t),this[ke].reloadNavigation}get isHistoryNavigation(){return X.brandCheck(this,t),this[ke].historyNavigation}get signal(){return X.brandCheck(this,t),this[Oc]}get body(){return X.brandCheck(this,t),this[ke].body?this[ke].body.stream:null}get bodyUsed(){return X.brandCheck(this,t),!!this[ke].body&&Pc.isDisturbed(this[ke].body.stream)}get duplex(){return X.brandCheck(this,t),"half"}clone(){if(X.brandCheck(this,t),_w(this))throw new TypeError("unusable");let e=zw(this[ke]),n=new AbortController;if(this.signal.aborted)n.abort(this.signal.reason);else{let r=Yc.get(this.signal);r===void 0&&(r=new Set,Yc.set(this.signal,r));let s=new WeakRef(n);r.add(s),Pc.addAbortListener(n.signal,Vw(s))}return Zw(e,n.signal,XP(this[St]))}[Ow.inspect.custom](e,n){n.depth===null&&(n.depth=2),n.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 ${Ow.formatWithOptions(n,r)}`}};zP(yr);function Hc(t){return{method:t.method??"GET",localURLsOnly:t.localURLsOnly??!1,unsafeRequest:t.unsafeRequest??!1,body:t.body??null,client:t.client??null,reservedClient:t.reservedClient??null,replacesClientId:t.replacesClientId??"",window:t.window??"client",keepalive:t.keepalive??!1,serviceWorkers:t.serviceWorkers??"all",initiator:t.initiator??"",destination:t.destination??"",priority:t.priority??null,origin:t.origin??"client",policyContainer:t.policyContainer??"client",referrer:t.referrer??"client",referrerPolicy:t.referrerPolicy??"",mode:t.mode??"no-cors",useCORSPreflightFlag:t.useCORSPreflightFlag??!1,credentials:t.credentials??"same-origin",useCredentials:t.useCredentials??!1,cache:t.cache??"default",redirect:t.redirect??"follow",integrity:t.integrity??"",cryptoGraphicsNonceMetadata:t.cryptoGraphicsNonceMetadata??"",parserMetadata:t.parserMetadata??"",reloadNavigation:t.reloadNavigation??!1,historyNavigation:t.historyNavigation??!1,userActivation:t.userActivation??!1,taintedOrigin:t.taintedOrigin??!1,redirectCount:t.redirectCount??0,responseTainting:t.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:t.preventNoCacheCacheControlHeaderModification??!1,done:t.done??!1,timingAllowFailed:t.timingAllowFailed??!1,urlList:t.urlList,url:t.urlList[0],headersList:t.headersList?new Gc(t.headersList):new Gc}}o(Hc,"makeRequest");function zw(t){let e=Hc({...t,body:null});return t.body!=null&&(e.body=ZP(e,t.body)),e}o(zw,"cloneRequest");function Zw(t,e,n){let r=new yr($c);return r[ke]=t,r[Oc]=e,r[St]=new qw($c),jw(r[St],t.headersList),Vh(r[St],n),r}o(Zw,"fromInnerRequest");Object.defineProperties(yr.prototype,{method:Oe,url:Oe,headers:Oe,redirect:Oe,clone:Oe,signal:Oe,duplex:Oe,destination:Oe,body:Oe,bodyUsed:Oe,isHistoryNavigation:Oe,isReloadNavigation:Oe,keepalive:Oe,integrity:Oe,cache:Oe,credentials:Oe,attribute:Oe,referrerPolicy:Oe,referrer:Oe,mode:Oe,[Symbol.toStringTag]:{value:"Request",configurable:!0}});X.converters.Request=X.interfaceConverter(yr);X.converters.RequestInfo=function(t,e,n){return typeof t=="string"?X.converters.USVString(t,e,n):t instanceof yr?X.converters.Request(t,e,n):X.converters.USVString(t,e,n)};X.converters.AbortSignal=X.interfaceConverter(AbortSignal);X.converters.RequestInit=X.dictionaryConverter([{key:"method",converter:X.converters.ByteString},{key:"headers",converter:X.converters.HeadersInit},{key:"body",converter:X.nullableConverter(X.converters.BodyInit)},{key:"referrer",converter:X.converters.USVString},{key:"referrerPolicy",converter:X.converters.DOMString,allowedValues:sO},{key:"mode",converter:X.converters.DOMString,allowedValues:oO},{key:"credentials",converter:X.converters.DOMString,allowedValues:aO},{key:"cache",converter:X.converters.DOMString,allowedValues:AO},{key:"redirect",converter:X.converters.DOMString,allowedValues:iO},{key:"integrity",converter:X.converters.DOMString},{key:"keepalive",converter:X.converters.boolean},{key:"signal",converter:X.nullableConverter(t=>X.converters.AbortSignal(t,"RequestInit","signal",{strict:!1}))},{key:"window",converter:X.converters.any},{key:"duplex",converter:X.converters.DOMString,allowedValues:cO},{key:"dispatcher",converter:X.converters.any}]);Kw.exports={Request:yr,makeRequest:Hc,fromInnerRequest:Zw,cloneRequest:zw}});var fa=T((p4,gb)=>{"use strict";var{makeNetworkError:ye,makeAppropriateNetworkError:Vc,filterResponse:Jh,makeResponse:Jc,fromInnerResponse:fO}=ha(),{HeadersList:Xw}=Is(),{Request:mO,cloneRequest:EO}=Mi(),Qr=require("node:zlib"),{bytesMatch:CO,makePolicyContainer:IO,clonePolicyContainer:yO,requestBadPort:QO,TAOCheck:BO,appendRequestOriginHeader:wO,responseLocationURL:bO,requestCurrentURL:yn,setRequestReferrerPolicyOnRedirect:RO,tryUpgradeRequestToAPotentiallyTrustworthyURL:kO,createOpaqueTimingInfo:Zh,appendFetchMetadata:SO,corsCheck:vO,crossOriginResourcePolicyCheck:xO,determineRequestsReferrer:DO,coarsenedSharedCurrentTime:pa,createDeferredPromise:TO,isBlobLike:NO,sameOrigin:zh,isCancelled:Qs,isAborted:eb,isErrorLike:FO,fullyReadBody:UO,readableStreamClose:MO,isomorphicEncode:qc,urlIsLocal:LO,urlIsHttpHttpsScheme:Kh,urlHasHttpsScheme:_O,clampAndCoarsenConnectionTimingInfo:PO,simpleRangeHeaderValue:OO,buildContentRange:GO,createInflate:$O,extractMimeType:YO}=Qt(),{kState:sb,kDispatcher:HO}=ur(),Bs=require("node:assert"),{safelyExtractBody:Xh,extractBody:tb}=pi(),{redirectStatusSet:ib,nullBodyStatus:ob,safeMethodsSet:VO,requestBodyHeader:JO,subresourceSet:qO}=Lo(),jO=require("node:events"),{Readable:WO,pipeline:zO,finished:ZO}=require("node:stream"),{addAbortListener:KO,isErrored:XO,isReadable:jc,bufferToLowerCasedHeaderName:nb}=ue(),{dataURLProcessor:eG,serializeAMimeType:tG,minimizeSupportedMimeType:nG}=gt(),{getGlobalDispatcher:rG}=Dc(),{webidl:sG}=je(),{STATUS_CODES:iG}=require("node:http"),oG=["GET","HEAD"],aG=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",qh,Wc=class extends jO{static{o(this,"Fetch")}constructor(e){super(),this.dispatcher=e,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(e){this.state==="ongoing"&&(this.state="terminated",this.connection?.destroy(e),this.emit("terminated",e))}abort(e){this.state==="ongoing"&&(this.state="aborted",e||(e=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=e,this.connection?.destroy(e),this.emit("terminated",e))}};function AG(t){ab(t,"fetch")}o(AG,"handleFetchDone");function cG(t,e=void 0){sG.argumentLengthCheck(arguments,1,"globalThis.fetch");let n=TO(),r;try{r=new mO(t,e)}catch(g){return n.reject(g),n.promise}let s=r[sb];if(r.signal.aborted)return jh(n,s,null,r.signal.reason),n.promise;s.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(s.serviceWorkers="none");let a=null,c=!1,l=null;return KO(r.signal,()=>{c=!0,Bs(l!=null),l.abort(r.signal.reason);let g=a?.deref();jh(n,s,g,r.signal.reason)}),l=cb({request:s,processResponseEndOfBody:AG,processResponse:o(g=>{if(!c){if(g.aborted){jh(n,s,a,l.serializedAbortReason);return}if(g.type==="error"){n.reject(new TypeError("fetch failed",{cause:g.error}));return}a=new WeakRef(fO(g,"immutable")),n.resolve(a.deref()),n=null}},"processResponse"),dispatcher:r[HO]}),n.promise}o(cG,"fetch");function ab(t,e="other"){if(t.type==="error"&&t.aborted||!t.urlList?.length)return;let n=t.urlList[0],r=t.timingInfo,s=t.cacheState;Kh(n)&&r!==null&&(t.timingAllowPassed||(r=Zh({startTime:r.startTime}),s=""),r.endTime=pa(),t.timingInfo=r,Ab(r,n.href,e,globalThis,s))}o(ab,"finalizeAndReportTiming");var Ab=performance.markResourceTiming;function jh(t,e,n,r){if(t&&t.reject(r),e.body!=null&&jc(e.body?.stream)&&e.body.stream.cancel(r).catch(i=>{if(i.code!=="ERR_INVALID_STATE")throw i}),n==null)return;let s=n[sb];s.body!=null&&jc(s.body?.stream)&&s.body.stream.cancel(r).catch(i=>{if(i.code!=="ERR_INVALID_STATE")throw i})}o(jh,"abortFetch");function cb({request:t,processRequestBodyChunkLength:e,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:s,processResponseConsumeBody:i,useParallelQueue:a=!1,dispatcher:c=rG()}){Bs(c);let l=null,d=!1;t.client!=null&&(l=t.client.globalObject,d=t.client.crossOriginIsolatedCapability);let g=pa(d),h=Zh({startTime:g}),f={controller:new Wc(c),request:t,timingInfo:h,processRequestBodyChunkLength:e,processRequestEndOfBody:n,processResponse:r,processResponseConsumeBody:i,processResponseEndOfBody:s,taskDestination:l,crossOriginIsolatedCapability:d};return Bs(!t.body||t.body.stream),t.window==="client"&&(t.window=t.client?.globalObject?.constructor?.name==="Window"?t.client:"no-window"),t.origin==="client"&&(t.origin=t.client.origin),t.policyContainer==="client"&&(t.client!=null?t.policyContainer=yO(t.client.policyContainer):t.policyContainer=IO()),t.headersList.contains("accept",!0)||t.headersList.append("accept","*/*",!0),t.headersList.contains("accept-language",!0)||t.headersList.append("accept-language","*",!0),t.priority,qO.has(t.destination),ub(f).catch(m=>{f.controller.terminate(m)}),f.controller}o(cb,"fetching");async function ub(t,e=!1){let n=t.request,r=null;if(n.localURLsOnly&&!LO(yn(n))&&(r=ye("local URLs only")),kO(n),QO(n)==="blocked"&&(r=ye("bad port")),n.referrerPolicy===""&&(n.referrerPolicy=n.policyContainer.referrerPolicy),n.referrer!=="no-referrer"&&(n.referrer=DO(n)),r===null&&(r=await(async()=>{let i=yn(n);return zh(i,n.url)&&n.responseTainting==="basic"||i.protocol==="data:"||n.mode==="navigate"||n.mode==="websocket"?(n.responseTainting="basic",await rb(t)):n.mode==="same-origin"?ye('request mode cannot be "same-origin"'):n.mode==="no-cors"?n.redirect!=="follow"?ye('redirect mode cannot be "follow" for "no-cors" request'):(n.responseTainting="opaque",await rb(t)):Kh(yn(n))?(n.responseTainting="cors",await lb(t)):ye("URL scheme must be a HTTP(S) scheme")})()),e)return r;r.status!==0&&!r.internalResponse&&(n.responseTainting,n.responseTainting==="basic"?r=Jh(r,"basic"):n.responseTainting==="cors"?r=Jh(r,"cors"):n.responseTainting==="opaque"?r=Jh(r,"opaque"):Bs(!1));let s=r.status===0?r:r.internalResponse;if(s.urlList.length===0&&s.urlList.push(...n.urlList),n.timingAllowFailed||(r.timingAllowPassed=!0),r.type==="opaque"&&s.status===206&&s.rangeRequested&&!n.headers.contains("range",!0)&&(r=s=ye()),r.status!==0&&(n.method==="HEAD"||n.method==="CONNECT"||ob.includes(s.status))&&(s.body=null,t.controller.dump=!0),n.integrity){let i=o(c=>Wh(t,ye(c)),"processBodyError");if(n.responseTainting==="opaque"||r.body==null){i(r.error);return}let a=o(c=>{if(!CO(c,n.integrity)){i("integrity mismatch");return}r.body=Xh(c)[0],Wh(t,r)},"processBody");await UO(r.body,a,i)}else Wh(t,r)}o(ub,"mainFetch");function rb(t){if(Qs(t)&&t.request.redirectCount===0)return Promise.resolve(Vc(t));let{request:e}=t,{protocol:n}=yn(e);switch(n){case"about:":return Promise.resolve(ye("about scheme is not supported"));case"blob:":{qh||(qh=require("node:buffer").resolveObjectURL);let r=yn(e);if(r.search.length!==0)return Promise.resolve(ye("NetworkError when attempting to fetch resource."));let s=qh(r.toString());if(e.method!=="GET"||!NO(s))return Promise.resolve(ye("invalid method"));let i=Jc(),a=s.size,c=qc(`${a}`),l=s.type;if(e.headersList.contains("range",!0)){i.rangeRequested=!0;let d=e.headersList.get("range",!0),g=OO(d,!0);if(g==="failure")return Promise.resolve(ye("failed to fetch the data URL"));let{rangeStartValue:h,rangeEndValue:f}=g;if(h===null)h=a-f,f=h+f-1;else{if(h>=a)return Promise.resolve(ye("Range start is greater than the blob's size."));(f===null||f>=a)&&(f=a-1)}let m=s.slice(h,f,l),C=tb(m);i.body=C[0];let y=qc(`${m.size}`),v=GO(h,f,a);i.status=206,i.statusText="Partial Content",i.headersList.set("content-length",y,!0),i.headersList.set("content-type",l,!0),i.headersList.set("content-range",v,!0)}else{let d=tb(s);i.statusText="OK",i.body=d[0],i.headersList.set("content-length",c,!0),i.headersList.set("content-type",l,!0)}return Promise.resolve(i)}case"data:":{let r=yn(e),s=eG(r);if(s==="failure")return Promise.resolve(ye("failed to fetch the data URL"));let i=tG(s.mimeType);return Promise.resolve(Jc({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:i}]],body:Xh(s.body)[0]}))}case"file:":return Promise.resolve(ye("not implemented... yet..."));case"http:":case"https:":return lb(t).catch(r=>ye(r));default:return Promise.resolve(ye("unknown scheme"))}}o(rb,"schemeFetch");function uG(t,e){t.request.done=!0,t.processResponseDone!=null&&queueMicrotask(()=>t.processResponseDone(e))}o(uG,"finalizeResponse");function Wh(t,e){let n=t.timingInfo,r=o(()=>{let i=Date.now();t.request.destination==="document"&&(t.controller.fullTimingInfo=n),t.controller.reportTimingSteps=()=>{if(t.request.url.protocol!=="https:")return;n.endTime=i;let c=e.cacheState,l=e.bodyInfo;e.timingAllowPassed||(n=Zh(n),c="");let d=0;if(t.request.mode!=="navigator"||!e.hasCrossOriginRedirects){d=e.status;let g=YO(e.headersList);g!=="failure"&&(l.contentType=nG(g))}t.request.initiatorType!=null&&Ab(n,t.request.url.href,t.request.initiatorType,globalThis,c,l,d)};let a=o(()=>{t.request.done=!0,t.processResponseEndOfBody!=null&&queueMicrotask(()=>t.processResponseEndOfBody(e)),t.request.initiatorType!=null&&t.controller.reportTimingSteps()},"processResponseEndOfBodyTask");queueMicrotask(()=>a())},"processResponseEndOfBody");t.processResponse!=null&&queueMicrotask(()=>{t.processResponse(e),t.processResponse=null});let s=e.type==="error"?e:e.internalResponse??e;s.body==null?r():ZO(s.body.stream,()=>{r()})}o(Wh,"fetchFinale");async function lb(t){let e=t.request,n=null,r=null,s=t.timingInfo;if(e.serviceWorkers,n===null){if(e.redirect==="follow"&&(e.serviceWorkers="none"),r=n=await db(t),e.responseTainting==="cors"&&vO(e,n)==="failure")return ye("cors failure");BO(e,n)==="failure"&&(e.timingAllowFailed=!0)}return(e.responseTainting==="opaque"||n.type==="opaque")&&xO(e.origin,e.client,e.destination,r)==="blocked"?ye("blocked"):(ib.has(r.status)&&(e.redirect!=="manual"&&t.controller.connection.destroy(void 0,!1),e.redirect==="error"?n=ye("unexpected redirect"):e.redirect==="manual"?n=r:e.redirect==="follow"?n=await lG(t,n):Bs(!1)),n.timingInfo=s,n)}o(lb,"httpFetch");function lG(t,e){let n=t.request,r=e.internalResponse?e.internalResponse:e,s;try{if(s=bO(r,yn(n).hash),s==null)return e}catch(a){return Promise.resolve(ye(a))}if(!Kh(s))return Promise.resolve(ye("URL scheme must be a HTTP(S) scheme"));if(n.redirectCount===20)return Promise.resolve(ye("redirect count exceeded"));if(n.redirectCount+=1,n.mode==="cors"&&(s.username||s.password)&&!zh(n,s))return Promise.resolve(ye('cross origin not allowed for request mode "cors"'));if(n.responseTainting==="cors"&&(s.username||s.password))return Promise.resolve(ye('URL cannot contain credentials for request mode "cors"'));if(r.status!==303&&n.body!=null&&n.body.source==null)return Promise.resolve(ye());if([301,302].includes(r.status)&&n.method==="POST"||r.status===303&&!oG.includes(n.method)){n.method="GET",n.body=null;for(let a of JO)n.headersList.delete(a)}zh(yn(n),s)||(n.headersList.delete("authorization",!0),n.headersList.delete("proxy-authorization",!0),n.headersList.delete("cookie",!0),n.headersList.delete("host",!0)),n.body!=null&&(Bs(n.body.source!=null),n.body=Xh(n.body.source)[0]);let i=t.timingInfo;return i.redirectEndTime=i.postRedirectStartTime=pa(t.crossOriginIsolatedCapability),i.redirectStartTime===0&&(i.redirectStartTime=i.startTime),n.urlList.push(s),RO(n,r),ub(t,!0)}o(lG,"httpRedirectFetch");async function db(t,e=!1,n=!1){let r=t.request,s=null,i=null,a=null,c=null,l=!1;r.window==="no-window"&&r.redirect==="error"?(s=t,i=r):(i=EO(r),s={...t},s.request=i);let d=r.credentials==="include"||r.credentials==="same-origin"&&r.responseTainting==="basic",g=i.body?i.body.length:null,h=null;if(i.body==null&&["POST","PUT"].includes(i.method)&&(h="0"),g!=null&&(h=qc(`${g}`)),h!=null&&i.headersList.append("content-length",h,!0),g!=null&&i.keepalive,i.referrer instanceof URL&&i.headersList.append("referer",qc(i.referrer.href),!0),wO(i),SO(i),i.headersList.contains("user-agent",!0)||i.headersList.append("user-agent",aG),i.cache==="default"&&(i.headersList.contains("if-modified-since",!0)||i.headersList.contains("if-none-match",!0)||i.headersList.contains("if-unmodified-since",!0)||i.headersList.contains("if-match",!0)||i.headersList.contains("if-range",!0))&&(i.cache="no-store"),i.cache==="no-cache"&&!i.preventNoCacheCacheControlHeaderModification&&!i.headersList.contains("cache-control",!0)&&i.headersList.append("cache-control","max-age=0",!0),(i.cache==="no-store"||i.cache==="reload")&&(i.headersList.contains("pragma",!0)||i.headersList.append("pragma","no-cache",!0),i.headersList.contains("cache-control",!0)||i.headersList.append("cache-control","no-cache",!0)),i.headersList.contains("range",!0)&&i.headersList.append("accept-encoding","identity",!0),i.headersList.contains("accept-encoding",!0)||(_O(yn(i))?i.headersList.append("accept-encoding","br, gzip, deflate",!0):i.headersList.append("accept-encoding","gzip, deflate",!0)),i.headersList.delete("host",!0),c==null&&(i.cache="no-store"),i.cache!=="no-store"&&i.cache,a==null){if(i.cache==="only-if-cached")return ye("only if cached");let f=await dG(s,d,n);!VO.has(i.method)&&f.status>=200&&f.status<=399,l&&f.status,a==null&&(a=f)}if(a.urlList=[...i.urlList],i.headersList.contains("range",!0)&&(a.rangeRequested=!0),a.requestIncludesCredentials=d,a.status===407)return r.window==="no-window"?ye():Qs(t)?Vc(t):ye("proxy authentication required");if(a.status===421&&!n&&(r.body==null||r.body.source!=null)){if(Qs(t))return Vc(t);t.controller.connection.destroy(),a=await db(t,e,!0)}return a}o(db,"httpNetworkOrCacheFetch");async function dG(t,e=!1,n=!1){Bs(!t.controller.connection||t.controller.connection.destroyed),t.controller.connection={abort:null,destroyed:!1,destroy(C,y=!0){this.destroyed||(this.destroyed=!0,y&&this.abort?.(C??new DOMException("The operation was aborted.","AbortError")))}};let r=t.request,s=null,i=t.timingInfo;null==null&&(r.cache="no-store");let c=n?"yes":"no";r.mode;let l=null;if(r.body==null&&t.processRequestEndOfBody)queueMicrotask(()=>t.processRequestEndOfBody());else if(r.body!=null){let C=o(async function*(Q){Qs(t)||(yield Q,t.processRequestBodyChunkLength?.(Q.byteLength))},"processBodyChunk"),y=o(()=>{Qs(t)||t.processRequestEndOfBody&&t.processRequestEndOfBody()},"processEndOfBody"),v=o(Q=>{Qs(t)||(Q.name==="AbortError"?t.controller.abort():t.controller.terminate(Q))},"processBodyError");l=(async function*(){try{for await(let Q of r.body.stream)yield*C(Q);y()}catch(Q){v(Q)}})()}try{let{body:C,status:y,statusText:v,headersList:Q,socket:x}=await m({body:l});if(x)s=Jc({status:y,statusText:v,headersList:Q,socket:x});else{let G=C[Symbol.asyncIterator]();t.controller.next=()=>G.next(),s=Jc({status:y,statusText:v,headersList:Q})}}catch(C){return C.name==="AbortError"?(t.controller.connection.destroy(),Vc(t,C)):ye(C)}let d=o(async()=>{await t.controller.resume()},"pullAlgorithm"),g=o(C=>{Qs(t)||t.controller.abort(C)},"cancelAlgorithm"),h=new ReadableStream({async start(C){t.controller.controller=C},async pull(C){await d(C)},async cancel(C){await g(C)},type:"bytes"});s.body={stream:h,source:null,length:null},t.controller.onAborted=f,t.controller.on("terminated",f),t.controller.resume=async()=>{for(;;){let C,y;try{let{done:Q,value:x}=await t.controller.next();if(eb(t))break;C=Q?void 0:x}catch(Q){t.controller.ended&&!i.encodedBodySize?C=void 0:(C=Q,y=!0)}if(C===void 0){MO(t.controller.controller),uG(t,s);return}if(i.decodedBodySize+=C?.byteLength??0,y){t.controller.terminate(C);return}let v=new Uint8Array(C);if(v.byteLength&&t.controller.controller.enqueue(v),XO(h)){t.controller.terminate();return}if(t.controller.controller.desiredSize<=0)return}};function f(C){eb(t)?(s.aborted=!0,jc(h)&&t.controller.controller.error(t.controller.serializedAbortReason)):jc(h)&&t.controller.controller.error(new TypeError("terminated",{cause:FO(C)?C:void 0})),t.controller.connection.destroy()}return o(f,"onAborted"),s;function m({body:C}){let y=yn(r),v=t.controller.dispatcher;return new Promise((Q,x)=>v.dispatch({path:y.pathname+y.search,origin:y.origin,method:r.method,body:v.isMockActive?r.body&&(r.body.source||r.body.stream):C,headers:r.headersList.entries,maxRedirections:0,upgrade:r.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(G){let{connection:P}=t.controller;i.finalConnectionTimingInfo=PO(void 0,i.postRedirectStartTime,t.crossOriginIsolatedCapability),P.destroyed?G(new DOMException("The operation was aborted.","AbortError")):(t.controller.on("terminated",G),this.abort=P.abort=G),i.finalNetworkRequestStartTime=pa(t.crossOriginIsolatedCapability)},onResponseStarted(){i.finalNetworkResponseStartTime=pa(t.crossOriginIsolatedCapability)},onHeaders(G,P,ae,Ee){if(G<200)return;let Ce="",De=new Xw;for(let Ge=0;Ge<P.length;Ge+=2)De.append(nb(P[Ge]),P[Ge+1].toString("latin1"),!0);Ce=De.get("location",!0),this.body=new WO({read:ae});let et=[],sn=Ce&&r.redirect==="follow"&&ib.has(G);if(r.method!=="HEAD"&&r.method!=="CONNECT"&&!ob.includes(G)&&!sn){let Ge=De.get("content-encoding",!0),Tt=Ge?Ge.toLowerCase().split(","):[],be=5;if(Tt.length>be)return x(new Error(`too many content-encodings in response: ${Tt.length}, maximum allowed is ${be}`)),!0;for(let Jn=Tt.length-1;Jn>=0;--Jn){let $=Tt[Jn].trim();if($==="x-gzip"||$==="gzip")et.push(Qr.createGunzip({flush:Qr.constants.Z_SYNC_FLUSH,finishFlush:Qr.constants.Z_SYNC_FLUSH}));else if($==="deflate")et.push($O({flush:Qr.constants.Z_SYNC_FLUSH,finishFlush:Qr.constants.Z_SYNC_FLUSH}));else if($==="br")et.push(Qr.createBrotliDecompress({flush:Qr.constants.BROTLI_OPERATION_FLUSH,finishFlush:Qr.constants.BROTLI_OPERATION_FLUSH}));else{et.length=0;break}}}let At=this.onError.bind(this);return Q({status:G,statusText:Ee,headersList:De,body:et.length?zO(this.body,...et,Ge=>{Ge&&this.onError(Ge)}).on("error",At):this.body.on("error",At)}),!0},onData(G){if(t.controller.dump)return;let P=G;return i.encodedBodySize+=P.byteLength,this.body.push(P)},onComplete(){this.abort&&t.controller.off("terminated",this.abort),t.controller.onAborted&&t.controller.off("terminated",t.controller.onAborted),t.controller.ended=!0,this.body.push(null)},onError(G){this.abort&&t.controller.off("terminated",this.abort),this.body?.destroy(G),t.controller.terminate(G),x(G)},onUpgrade(G,P,ae){if(G!==101)return;let Ee=new Xw;for(let Ce=0;Ce<P.length;Ce+=2)Ee.append(nb(P[Ce]),P[Ce+1].toString("latin1"),!0);return Q({status:G,statusText:iG[G],headersList:Ee,socket:ae}),!0}}))}o(m,"dispatch")}o(dG,"httpNetworkFetch");gb.exports={fetch:cG,Fetch:Wc,fetching:cb,finalizeAndReportTiming:ab}});var ep=T((m4,hb)=>{"use strict";hb.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 fb=T((E4,pb)=>{"use strict";var{webidl:vt}=je(),zc=Symbol("ProgressEvent state"),tp=class t extends Event{static{o(this,"ProgressEvent")}constructor(e,n={}){e=vt.converters.DOMString(e,"ProgressEvent constructor","type"),n=vt.converters.ProgressEventInit(n??{}),super(e,n),this[zc]={lengthComputable:n.lengthComputable,loaded:n.loaded,total:n.total}}get lengthComputable(){return vt.brandCheck(this,t),this[zc].lengthComputable}get loaded(){return vt.brandCheck(this,t),this[zc].loaded}get total(){return vt.brandCheck(this,t),this[zc].total}};vt.converters.ProgressEventInit=vt.dictionaryConverter([{key:"lengthComputable",converter:vt.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"loaded",converter:vt.converters["unsigned long long"],defaultValue:o(()=>0,"defaultValue")},{key:"total",converter:vt.converters["unsigned long long"],defaultValue:o(()=>0,"defaultValue")},{key:"bubbles",converter:vt.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"cancelable",converter:vt.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"composed",converter:vt.converters.boolean,defaultValue:o(()=>!1,"defaultValue")}]);pb.exports={ProgressEvent:tp}});var Eb=T((I4,mb)=>{"use strict";function gG(t){if(!t)return"failure";switch(t.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"}}o(gG,"getEncoding");mb.exports={getEncoding:gG}});var Rb=T((Q4,bb)=>{"use strict";var{kState:Li,kError:np,kResult:Cb,kAborted:ma,kLastProgressEventFired:rp}=ep(),{ProgressEvent:hG}=fb(),{getEncoding:Ib}=Eb(),{serializeAMimeType:pG,parseMIMEType:yb}=gt(),{types:fG}=require("node:util"),{StringDecoder:Qb}=require("string_decoder"),{btoa:Bb}=require("node:buffer"),mG={enumerable:!0,writable:!1,configurable:!1};function EG(t,e,n,r){if(t[Li]==="loading")throw new DOMException("Invalid state","InvalidStateError");t[Li]="loading",t[Cb]=null,t[np]=null;let i=e.stream().getReader(),a=[],c=i.read(),l=!0;(async()=>{for(;!t[ma];)try{let{done:d,value:g}=await c;if(l&&!t[ma]&&queueMicrotask(()=>{Br("loadstart",t)}),l=!1,!d&&fG.isUint8Array(g))a.push(g),(t[rp]===void 0||Date.now()-t[rp]>=50)&&!t[ma]&&(t[rp]=Date.now(),queueMicrotask(()=>{Br("progress",t)})),c=i.read();else if(d){queueMicrotask(()=>{t[Li]="done";try{let h=CG(a,n,e.type,r);if(t[ma])return;t[Cb]=h,Br("load",t)}catch(h){t[np]=h,Br("error",t)}t[Li]!=="loading"&&Br("loadend",t)});break}}catch(d){if(t[ma])return;queueMicrotask(()=>{t[Li]="done",t[np]=d,Br("error",t),t[Li]!=="loading"&&Br("loadend",t)});break}})()}o(EG,"readOperation");function Br(t,e){let n=new hG(t,{bubbles:!1,cancelable:!1});e.dispatchEvent(n)}o(Br,"fireAProgressEvent");function CG(t,e,n,r){switch(e){case"DataURL":{let s="data:",i=yb(n||"application/octet-stream");i!=="failure"&&(s+=pG(i)),s+=";base64,";let a=new Qb("latin1");for(let c of t)s+=Bb(a.write(c));return s+=Bb(a.end()),s}case"Text":{let s="failure";if(r&&(s=Ib(r)),s==="failure"&&n){let i=yb(n);i!=="failure"&&(s=Ib(i.parameters.get("charset")))}return s==="failure"&&(s="UTF-8"),IG(t,s)}case"ArrayBuffer":return wb(t).buffer;case"BinaryString":{let s="",i=new Qb("latin1");for(let a of t)s+=i.write(a);return s+=i.end(),s}}}o(CG,"packageData");function IG(t,e){let n=wb(t),r=yG(n),s=0;r!==null&&(e=r,s=r==="UTF-8"?3:2);let i=n.slice(s);return new TextDecoder(e).decode(i)}o(IG,"decode");function yG(t){let[e,n,r]=t;return e===239&&n===187&&r===191?"UTF-8":e===254&&n===255?"UTF-16BE":e===255&&n===254?"UTF-16LE":null}o(yG,"BOMSniffing");function wb(t){let e=t.reduce((r,s)=>r+s.byteLength,0),n=0;return t.reduce((r,s)=>(r.set(s,n),n+=s.byteLength,r),new Uint8Array(e))}o(wb,"combineByteSequences");bb.exports={staticPropertyDescriptors:mG,readOperation:EG,fireAProgressEvent:Br}});var xb=T((w4,vb)=>{"use strict";var{staticPropertyDescriptors:_i,readOperation:Zc,fireAProgressEvent:kb}=Rb(),{kState:ws,kError:Sb,kResult:Kc,kEvents:fe,kAborted:QG}=ep(),{webidl:Be}=je(),{kEnumerableProperty:ft}=ue(),nn=class t extends EventTarget{static{o(this,"FileReader")}constructor(){super(),this[ws]="empty",this[Kc]=null,this[Sb]=null,this[fe]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),e=Be.converters.Blob(e,{strict:!1}),Zc(this,e,"ArrayBuffer")}readAsBinaryString(e){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),e=Be.converters.Blob(e,{strict:!1}),Zc(this,e,"BinaryString")}readAsText(e,n=void 0){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsText"),e=Be.converters.Blob(e,{strict:!1}),n!==void 0&&(n=Be.converters.DOMString(n,"FileReader.readAsText","encoding")),Zc(this,e,"Text",n)}readAsDataURL(e){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),e=Be.converters.Blob(e,{strict:!1}),Zc(this,e,"DataURL")}abort(){if(this[ws]==="empty"||this[ws]==="done"){this[Kc]=null;return}this[ws]==="loading"&&(this[ws]="done",this[Kc]=null),this[QG]=!0,kb("abort",this),this[ws]!=="loading"&&kb("loadend",this)}get readyState(){switch(Be.brandCheck(this,t),this[ws]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Be.brandCheck(this,t),this[Kc]}get error(){return Be.brandCheck(this,t),this[Sb]}get onloadend(){return Be.brandCheck(this,t),this[fe].loadend}set onloadend(e){Be.brandCheck(this,t),this[fe].loadend&&this.removeEventListener("loadend",this[fe].loadend),typeof e=="function"?(this[fe].loadend=e,this.addEventListener("loadend",e)):this[fe].loadend=null}get onerror(){return Be.brandCheck(this,t),this[fe].error}set onerror(e){Be.brandCheck(this,t),this[fe].error&&this.removeEventListener("error",this[fe].error),typeof e=="function"?(this[fe].error=e,this.addEventListener("error",e)):this[fe].error=null}get onloadstart(){return Be.brandCheck(this,t),this[fe].loadstart}set onloadstart(e){Be.brandCheck(this,t),this[fe].loadstart&&this.removeEventListener("loadstart",this[fe].loadstart),typeof e=="function"?(this[fe].loadstart=e,this.addEventListener("loadstart",e)):this[fe].loadstart=null}get onprogress(){return Be.brandCheck(this,t),this[fe].progress}set onprogress(e){Be.brandCheck(this,t),this[fe].progress&&this.removeEventListener("progress",this[fe].progress),typeof e=="function"?(this[fe].progress=e,this.addEventListener("progress",e)):this[fe].progress=null}get onload(){return Be.brandCheck(this,t),this[fe].load}set onload(e){Be.brandCheck(this,t),this[fe].load&&this.removeEventListener("load",this[fe].load),typeof e=="function"?(this[fe].load=e,this.addEventListener("load",e)):this[fe].load=null}get onabort(){return Be.brandCheck(this,t),this[fe].abort}set onabort(e){Be.brandCheck(this,t),this[fe].abort&&this.removeEventListener("abort",this[fe].abort),typeof e=="function"?(this[fe].abort=e,this.addEventListener("abort",e)):this[fe].abort=null}};nn.EMPTY=nn.prototype.EMPTY=0;nn.LOADING=nn.prototype.LOADING=1;nn.DONE=nn.prototype.DONE=2;Object.defineProperties(nn.prototype,{EMPTY:_i,LOADING:_i,DONE:_i,readAsArrayBuffer:ft,readAsBinaryString:ft,readAsText:ft,readAsDataURL:ft,abort:ft,readyState:ft,result:ft,error:ft,onloadstart:ft,onprogress:ft,onload:ft,onabort:ft,onerror:ft,onloadend:ft,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(nn,{EMPTY:_i,LOADING:_i,DONE:_i});vb.exports={FileReader:nn}});var Xc=T((R4,Db)=>{"use strict";Db.exports={kConstruct:Se().kConstruct}});var Fb=T((k4,Nb)=>{"use strict";var BG=require("node:assert"),{URLSerializer:Tb}=gt(),{isValidHeaderName:wG}=Qt();function bG(t,e,n=!1){let r=Tb(t,n),s=Tb(e,n);return r===s}o(bG,"urlEquals");function RG(t){BG(t!==null);let e=[];for(let n of t.split(","))n=n.trim(),wG(n)&&e.push(n);return e}o(RG,"getFieldValues");Nb.exports={urlEquals:bG,getFieldValues:RG}});var Lb=T((v4,Mb)=>{"use strict";var{kConstruct:kG}=Xc(),{urlEquals:SG,getFieldValues:sp}=Fb(),{kEnumerableProperty:bs,isDisturbed:vG}=ue(),{webidl:q}=je(),{Response:xG,cloneResponse:DG,fromInnerResponse:TG}=ha(),{Request:Yn,fromInnerRequest:NG}=Mi(),{kState:rn}=ur(),{fetching:FG}=fa(),{urlIsHttpHttpsScheme:eu,createDeferredPromise:Pi,readAllBytes:UG}=Qt(),ip=require("node:assert"),tu=class t{static{o(this,"Cache")}#e;constructor(){arguments[0]!==kG&&q.illegalConstructor(),q.util.markAsUncloneable(this),this.#e=arguments[1]}async match(e,n={}){q.brandCheck(this,t);let r="Cache.match";q.argumentLengthCheck(arguments,1,r),e=q.converters.RequestInfo(e,r,"request"),n=q.converters.CacheQueryOptions(n,r,"options");let s=this.#s(e,n,1);if(s.length!==0)return s[0]}async matchAll(e=void 0,n={}){q.brandCheck(this,t);let r="Cache.matchAll";return e!==void 0&&(e=q.converters.RequestInfo(e,r,"request")),n=q.converters.CacheQueryOptions(n,r,"options"),this.#s(e,n)}async add(e){q.brandCheck(this,t);let n="Cache.add";q.argumentLengthCheck(arguments,1,n),e=q.converters.RequestInfo(e,n,"request");let r=[e];return await this.addAll(r)}async addAll(e){q.brandCheck(this,t);let n="Cache.addAll";q.argumentLengthCheck(arguments,1,n);let r=[],s=[];for(let f of e){if(f===void 0)throw q.errors.conversionFailed({prefix:n,argument:"Argument 1",types:["undefined is not allowed"]});if(f=q.converters.RequestInfo(f),typeof f=="string")continue;let m=f[rn];if(!eu(m.url)||m.method!=="GET")throw q.errors.exception({header:n,message:"Expected http/s scheme when method is not GET."})}let i=[];for(let f of e){let m=new Yn(f)[rn];if(!eu(m.url))throw q.errors.exception({header:n,message:"Expected http/s scheme."});m.initiator="fetch",m.destination="subresource",s.push(m);let C=Pi();i.push(FG({request:m,processResponse(y){if(y.type==="error"||y.status===206||y.status<200||y.status>299)C.reject(q.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(y.headersList.contains("vary")){let v=sp(y.headersList.get("vary"));for(let Q of v)if(Q==="*"){C.reject(q.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let x of i)x.abort();return}}},processResponseEndOfBody(y){if(y.aborted){C.reject(new DOMException("aborted","AbortError"));return}C.resolve(y)}})),r.push(C.promise)}let c=await Promise.all(r),l=[],d=0;for(let f of c){let m={type:"put",request:s[d],response:f};l.push(m),d++}let g=Pi(),h=null;try{this.#t(l)}catch(f){h=f}return queueMicrotask(()=>{h===null?g.resolve(void 0):g.reject(h)}),g.promise}async put(e,n){q.brandCheck(this,t);let r="Cache.put";q.argumentLengthCheck(arguments,2,r),e=q.converters.RequestInfo(e,r,"request"),n=q.converters.Response(n,r,"response");let s=null;if(e instanceof Yn?s=e[rn]:s=new Yn(e)[rn],!eu(s.url)||s.method!=="GET")throw q.errors.exception({header:r,message:"Expected an http/s scheme when method is not GET"});let i=n[rn];if(i.status===206)throw q.errors.exception({header:r,message:"Got 206 status"});if(i.headersList.contains("vary")){let m=sp(i.headersList.get("vary"));for(let C of m)if(C==="*")throw q.errors.exception({header:r,message:"Got * vary field value"})}if(i.body&&(vG(i.body.stream)||i.body.stream.locked))throw q.errors.exception({header:r,message:"Response body is locked or disturbed"});let a=DG(i),c=Pi();if(i.body!=null){let C=i.body.stream.getReader();UG(C).then(c.resolve,c.reject)}else c.resolve(void 0);let l=[],d={type:"put",request:s,response:a};l.push(d);let g=await c.promise;a.body!=null&&(a.body.source=g);let h=Pi(),f=null;try{this.#t(l)}catch(m){f=m}return queueMicrotask(()=>{f===null?h.resolve():h.reject(f)}),h.promise}async delete(e,n={}){q.brandCheck(this,t);let r="Cache.delete";q.argumentLengthCheck(arguments,1,r),e=q.converters.RequestInfo(e,r,"request"),n=q.converters.CacheQueryOptions(n,r,"options");let s=null;if(e instanceof Yn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return!1}else ip(typeof e=="string"),s=new Yn(e)[rn];let i=[],a={type:"delete",request:s,options:n};i.push(a);let c=Pi(),l=null,d;try{d=this.#t(i)}catch(g){l=g}return queueMicrotask(()=>{l===null?c.resolve(!!d?.length):c.reject(l)}),c.promise}async keys(e=void 0,n={}){q.brandCheck(this,t);let r="Cache.keys";e!==void 0&&(e=q.converters.RequestInfo(e,r,"request")),n=q.converters.CacheQueryOptions(n,r,"options");let s=null;if(e!==void 0)if(e instanceof Yn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return[]}else typeof e=="string"&&(s=new Yn(e)[rn]);let i=Pi(),a=[];if(e===void 0)for(let c of this.#e)a.push(c[0]);else{let c=this.#n(s,n);for(let l of c)a.push(l[0])}return queueMicrotask(()=>{let c=[];for(let l of a){let d=NG(l,new AbortController().signal,"immutable");c.push(d)}i.resolve(Object.freeze(c))}),i.promise}#t(e){let n=this.#e,r=[...n],s=[],i=[];try{for(let a of e){if(a.type!=="delete"&&a.type!=="put")throw q.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(a.type==="delete"&&a.response!=null)throw q.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#n(a.request,a.options,s).length)throw new DOMException("???","InvalidStateError");let c;if(a.type==="delete"){if(c=this.#n(a.request,a.options),c.length===0)return[];for(let l of c){let d=n.indexOf(l);ip(d!==-1),n.splice(d,1)}}else if(a.type==="put"){if(a.response==null)throw q.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let l=a.request;if(!eu(l.url))throw q.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(l.method!=="GET")throw q.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(a.options!=null)throw q.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});c=this.#n(a.request);for(let d of c){let g=n.indexOf(d);ip(g!==-1),n.splice(g,1)}n.push([a.request,a.response]),s.push([a.request,a.response])}i.push([a.request,a.response])}return i}catch(a){throw this.#e.length=0,this.#e=r,a}}#n(e,n,r){let s=[],i=r??this.#e;for(let a of i){let[c,l]=a;this.#i(e,c,l,n)&&s.push(a)}return s}#i(e,n,r=null,s){let i=new URL(e.url),a=new URL(n.url);if(s?.ignoreSearch&&(a.search="",i.search=""),!SG(i,a,!0))return!1;if(r==null||s?.ignoreVary||!r.headersList.contains("vary"))return!0;let c=sp(r.headersList.get("vary"));for(let l of c){if(l==="*")return!1;let d=n.headersList.get(l),g=e.headersList.get(l);if(d!==g)return!1}return!0}#s(e,n,r=1/0){let s=null;if(e!==void 0)if(e instanceof Yn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return[]}else typeof e=="string"&&(s=new Yn(e)[rn]);let i=[];if(e===void 0)for(let c of this.#e)i.push(c[1]);else{let c=this.#n(s,n);for(let l of c)i.push(l[1])}let a=[];for(let c of i){let l=TG(c,"immutable");if(a.push(l.clone()),a.length>=r)break}return Object.freeze(a)}};Object.defineProperties(tu.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:bs,matchAll:bs,add:bs,addAll:bs,put:bs,delete:bs,keys:bs});var Ub=[{key:"ignoreSearch",converter:q.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"ignoreMethod",converter:q.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"ignoreVary",converter:q.converters.boolean,defaultValue:o(()=>!1,"defaultValue")}];q.converters.CacheQueryOptions=q.dictionaryConverter(Ub);q.converters.MultiCacheQueryOptions=q.dictionaryConverter([...Ub,{key:"cacheName",converter:q.converters.DOMString}]);q.converters.Response=q.interfaceConverter(xG);q.converters["sequence<RequestInfo>"]=q.sequenceConverter(q.converters.RequestInfo);Mb.exports={Cache:tu}});var Pb=T((D4,_b)=>{"use strict";var{kConstruct:Ea}=Xc(),{Cache:nu}=Lb(),{webidl:Xe}=je(),{kEnumerableProperty:Ca}=ue(),ru=class t{static{o(this,"CacheStorage")}#e=new Map;constructor(){arguments[0]!==Ea&&Xe.illegalConstructor(),Xe.util.markAsUncloneable(this)}async match(e,n={}){if(Xe.brandCheck(this,t),Xe.argumentLengthCheck(arguments,1,"CacheStorage.match"),e=Xe.converters.RequestInfo(e),n=Xe.converters.MultiCacheQueryOptions(n),n.cacheName!=null){if(this.#e.has(n.cacheName)){let r=this.#e.get(n.cacheName);return await new nu(Ea,r).match(e,n)}}else for(let r of this.#e.values()){let i=await new nu(Ea,r).match(e,n);if(i!==void 0)return i}}async has(e){Xe.brandCheck(this,t);let n="CacheStorage.has";return Xe.argumentLengthCheck(arguments,1,n),e=Xe.converters.DOMString(e,n,"cacheName"),this.#e.has(e)}async open(e){Xe.brandCheck(this,t);let n="CacheStorage.open";if(Xe.argumentLengthCheck(arguments,1,n),e=Xe.converters.DOMString(e,n,"cacheName"),this.#e.has(e)){let s=this.#e.get(e);return new nu(Ea,s)}let r=[];return this.#e.set(e,r),new nu(Ea,r)}async delete(e){Xe.brandCheck(this,t);let n="CacheStorage.delete";return Xe.argumentLengthCheck(arguments,1,n),e=Xe.converters.DOMString(e,n,"cacheName"),this.#e.delete(e)}async keys(){return Xe.brandCheck(this,t),[...this.#e.keys()]}};Object.defineProperties(ru.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:Ca,has:Ca,open:Ca,delete:Ca,keys:Ca});_b.exports={CacheStorage:ru}});var Gb=T((N4,Ob)=>{"use strict";Ob.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Ap=T((F4,Vb)=>{"use strict";function MG(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n>=0&&n<=8||n>=10&&n<=31||n===127)return!0}return!1}o(MG,"isCTLExcludingHtab");function op(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n<33||n>126||n===34||n===40||n===41||n===60||n===62||n===64||n===44||n===59||n===58||n===92||n===47||n===91||n===93||n===63||n===61||n===123||n===125)throw new Error("Invalid cookie name")}}o(op,"validateCookieName");function ap(t){let e=t.length,n=0;if(t[0]==='"'){if(e===1||t[e-1]!=='"')throw new Error("Invalid cookie value");--e,++n}for(;n<e;){let r=t.charCodeAt(n++);if(r<33||r>126||r===34||r===44||r===59||r===92)throw new Error("Invalid cookie value")}}o(ap,"validateCookieValue");function Yb(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n<32||n>126||n===59)throw new Error("Invalid cookie path")}}o(Yb,"validateCookiePath");function $b(t){return t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122}o($b,"isLetterOrDigit");function LG(t){if(t===" ")return;if(t.length>255)throw new Error("Invalid cookie domain");let e=0;for(let n=0;n<t.length;++n){let r=t.charCodeAt(n);if(r===46){if(e===0)throw new Error("Invalid cookie domain");if(t.charCodeAt(n-1)===45)throw new Error("Invalid cookie domain");e=0;continue}if(e===0&&!$b(r))throw new Error("Invalid cookie domain");if(!$b(r)&&r!==45)throw new Error("Invalid cookie domain");if(++e>63)throw new Error("Invalid cookie domain")}if(e===0||t.charCodeAt(t.length-1)===45)throw new Error("Invalid cookie domain")}o(LG,"validateCookieDomain");var _G=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],PG=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],su=Array(61).fill(0).map((t,e)=>e.toString().padStart(2,"0"));function Hb(t){return typeof t=="number"&&(t=new Date(t)),`${_G[t.getUTCDay()]}, ${su[t.getUTCDate()]} ${PG[t.getUTCMonth()]} ${t.getUTCFullYear()} ${su[t.getUTCHours()]}:${su[t.getUTCMinutes()]}:${su[t.getUTCSeconds()]} GMT`}o(Hb,"toIMFDate");function OG(t){if(t<0)throw new Error("Invalid cookie max-age")}o(OG,"validateCookieMaxAge");function GG(t){if(t.name.length===0)return null;op(t.name),ap(t.value);let e=[`${t.name}=${t.value}`];t.name.startsWith("__Secure-")&&(t.secure=!0),t.name.startsWith("__Host-")&&(t.secure=!0,t.domain=null,t.path="/"),t.secure&&e.push("Secure"),t.httpOnly&&e.push("HttpOnly"),typeof t.maxAge=="number"&&(OG(t.maxAge),e.push(`Max-Age=${t.maxAge}`)),t.domain&&(LG(t.domain),e.push(`Domain=${t.domain}`)),t.path&&(Yb(t.path),e.push(`Path=${t.path}`)),t.expires&&t.expires.toString()!=="Invalid Date"&&e.push(`Expires=${Hb(t.expires)}`),t.sameSite&&e.push(`SameSite=${t.sameSite}`);for(let n of t.unparsed){if(!n.includes("="))throw new Error("Invalid unparsed");let[r,...s]=n.split("="),i=r.trim(),a=s.join("=");op(i),ap(a),e.push(`${i}=${a}`)}return e.join("; ")}o(GG,"stringify");Vb.exports={isCTLExcludingHtab:MG,validateCookieName:op,validateCookiePath:Yb,validateCookieValue:ap,toIMFDate:Hb,stringify:GG}});var qb=T((M4,Jb)=>{"use strict";var{maxNameValuePairSize:$G,maxAttributeValueSize:YG}=Gb(),{isCTLExcludingHtab:HG}=Ap(),{collectASequenceOfCodePointsFast:iu}=gt(),VG=require("node:assert");function JG(t){if(HG(t))return null;let e="",n="",r="",s="";if(t.includes(";")){let i={position:0};e=iu(";",t,i),n=t.slice(i.position)}else e=t;if(!e.includes("="))s=e;else{let i={position:0};r=iu("=",e,i),s=e.slice(i.position+1)}return r=r.trim(),s=s.trim(),r.length+s.length>$G?null:{name:r,value:s,...Oi(n)}}o(JG,"parseSetCookie");function Oi(t,e={}){if(t.length===0)return e;VG(t[0]===";"),t=t.slice(1);let n="";t.includes(";")?(n=iu(";",t,{position:0}),t=t.slice(n.length)):(n=t,t="");let r="",s="";if(n.includes("=")){let a={position:0};r=iu("=",n,a),s=n.slice(a.position+1)}else r=n;if(r=r.trim(),s=s.trim(),s.length>YG)return Oi(t,e);let i=r.toLowerCase();if(i==="expires"){let a=new Date(s);e.expires=a}else if(i==="max-age"){let a=s.charCodeAt(0);if((a<48||a>57)&&s[0]!=="-"||!/^\d+$/.test(s))return Oi(t,e);let c=Number(s);e.maxAge=c}else if(i==="domain"){let a=s;a[0]==="."&&(a=a.slice(1)),a=a.toLowerCase(),e.domain=a}else if(i==="path"){let a="";s.length===0||s[0]!=="/"?a="/":a=s,e.path=a}else if(i==="secure")e.secure=!0;else if(i==="httponly")e.httpOnly=!0;else if(i==="samesite"){let a=s.toLowerCase();a==="none"?e.sameSite="None":a==="strict"?e.sameSite="Strict":a==="lax"&&(e.sameSite="Lax")}else e.unparsed??=[],e.unparsed.push(`${r}=${s}`);return Oi(t,e)}o(Oi,"parseUnparsedAttributes");Jb.exports={parseSetCookie:JG,parseUnparsedAttributes:Oi}});var zb=T((_4,Wb)=>{"use strict";var{parseSetCookie:qG}=qb(),{stringify:jG}=Ap(),{webidl:ge}=je(),{Headers:ou}=Is();function WG(t){ge.argumentLengthCheck(arguments,1,"getCookies"),ge.brandCheck(t,ou,{strict:!1});let e=t.get("cookie"),n={};if(!e)return n;for(let r of e.split(";")){let[s,...i]=r.split("=");n[s.trim()]=i.join("=")}return n}o(WG,"getCookies");function zG(t,e,n){ge.brandCheck(t,ou,{strict:!1});let r="deleteCookie";ge.argumentLengthCheck(arguments,2,r),e=ge.converters.DOMString(e,r,"name"),n=ge.converters.DeleteCookieAttributes(n),jb(t,{name:e,value:"",expires:new Date(0),...n})}o(zG,"deleteCookie");function ZG(t){ge.argumentLengthCheck(arguments,1,"getSetCookies"),ge.brandCheck(t,ou,{strict:!1});let e=t.getSetCookie();return e?e.map(n=>qG(n)):[]}o(ZG,"getSetCookies");function jb(t,e){ge.argumentLengthCheck(arguments,2,"setCookie"),ge.brandCheck(t,ou,{strict:!1}),e=ge.converters.Cookie(e);let n=jG(e);n&&t.append("Set-Cookie",n)}o(jb,"setCookie");ge.converters.DeleteCookieAttributes=ge.dictionaryConverter([{converter:ge.nullableConverter(ge.converters.DOMString),key:"path",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters.DOMString),key:"domain",defaultValue:o(()=>null,"defaultValue")}]);ge.converters.Cookie=ge.dictionaryConverter([{converter:ge.converters.DOMString,key:"name"},{converter:ge.converters.DOMString,key:"value"},{converter:ge.nullableConverter(t=>typeof t=="number"?ge.converters["unsigned long long"](t):new Date(t)),key:"expires",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters["long long"]),key:"maxAge",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters.DOMString),key:"domain",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters.DOMString),key:"path",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters.boolean),key:"secure",defaultValue:o(()=>null,"defaultValue")},{converter:ge.nullableConverter(ge.converters.boolean),key:"httpOnly",defaultValue:o(()=>null,"defaultValue")},{converter:ge.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:ge.sequenceConverter(ge.converters.DOMString),key:"unparsed",defaultValue:o(()=>new Array(0),"defaultValue")}]);Wb.exports={getCookies:WG,deleteCookie:zG,getSetCookies:ZG,setCookie:jb}});var $i=T((O4,Kb)=>{"use strict";var{webidl:V}=je(),{kEnumerableProperty:mt}=ue(),{kConstruct:Zb}=Se(),{MessagePort:KG}=require("node:worker_threads"),Gi=class t extends Event{static{o(this,"MessageEvent")}#e;constructor(e,n={}){if(e===Zb){super(arguments[1],arguments[2]),V.util.markAsUncloneable(this);return}let r="MessageEvent constructor";V.argumentLengthCheck(arguments,1,r),e=V.converters.DOMString(e,r,"type"),n=V.converters.MessageEventInit(n,r,"eventInitDict"),super(e,n),this.#e=n,V.util.markAsUncloneable(this)}get data(){return V.brandCheck(this,t),this.#e.data}get origin(){return V.brandCheck(this,t),this.#e.origin}get lastEventId(){return V.brandCheck(this,t),this.#e.lastEventId}get source(){return V.brandCheck(this,t),this.#e.source}get ports(){return V.brandCheck(this,t),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(e,n=!1,r=!1,s=null,i="",a="",c=null,l=[]){return V.brandCheck(this,t),V.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new t(e,{bubbles:n,cancelable:r,data:s,origin:i,lastEventId:a,source:c,ports:l})}static createFastMessageEvent(e,n){let r=new t(Zb,e,n);return r.#e=n,r.#e.data??=null,r.#e.origin??="",r.#e.lastEventId??="",r.#e.source??=null,r.#e.ports??=[],r}},{createFastMessageEvent:XG}=Gi;delete Gi.createFastMessageEvent;var au=class t extends Event{static{o(this,"CloseEvent")}#e;constructor(e,n={}){let r="CloseEvent constructor";V.argumentLengthCheck(arguments,1,r),e=V.converters.DOMString(e,r,"type"),n=V.converters.CloseEventInit(n),super(e,n),this.#e=n,V.util.markAsUncloneable(this)}get wasClean(){return V.brandCheck(this,t),this.#e.wasClean}get code(){return V.brandCheck(this,t),this.#e.code}get reason(){return V.brandCheck(this,t),this.#e.reason}},Au=class t extends Event{static{o(this,"ErrorEvent")}#e;constructor(e,n){let r="ErrorEvent constructor";V.argumentLengthCheck(arguments,1,r),super(e,n),V.util.markAsUncloneable(this),e=V.converters.DOMString(e,r,"type"),n=V.converters.ErrorEventInit(n??{}),this.#e=n}get message(){return V.brandCheck(this,t),this.#e.message}get filename(){return V.brandCheck(this,t),this.#e.filename}get lineno(){return V.brandCheck(this,t),this.#e.lineno}get colno(){return V.brandCheck(this,t),this.#e.colno}get error(){return V.brandCheck(this,t),this.#e.error}};Object.defineProperties(Gi.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:mt,origin:mt,lastEventId:mt,source:mt,ports:mt,initMessageEvent:mt});Object.defineProperties(au.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:mt,code:mt,wasClean:mt});Object.defineProperties(Au.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:mt,filename:mt,lineno:mt,colno:mt,error:mt});V.converters.MessagePort=V.interfaceConverter(KG);V.converters["sequence<MessagePort>"]=V.sequenceConverter(V.converters.MessagePort);var cp=[{key:"bubbles",converter:V.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"cancelable",converter:V.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"composed",converter:V.converters.boolean,defaultValue:o(()=>!1,"defaultValue")}];V.converters.MessageEventInit=V.dictionaryConverter([...cp,{key:"data",converter:V.converters.any,defaultValue:o(()=>null,"defaultValue")},{key:"origin",converter:V.converters.USVString,defaultValue:o(()=>"","defaultValue")},{key:"lastEventId",converter:V.converters.DOMString,defaultValue:o(()=>"","defaultValue")},{key:"source",converter:V.nullableConverter(V.converters.MessagePort),defaultValue:o(()=>null,"defaultValue")},{key:"ports",converter:V.converters["sequence<MessagePort>"],defaultValue:o(()=>new Array(0),"defaultValue")}]);V.converters.CloseEventInit=V.dictionaryConverter([...cp,{key:"wasClean",converter:V.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"code",converter:V.converters["unsigned short"],defaultValue:o(()=>0,"defaultValue")},{key:"reason",converter:V.converters.USVString,defaultValue:o(()=>"","defaultValue")}]);V.converters.ErrorEventInit=V.dictionaryConverter([...cp,{key:"message",converter:V.converters.DOMString,defaultValue:o(()=>"","defaultValue")},{key:"filename",converter:V.converters.USVString,defaultValue:o(()=>"","defaultValue")},{key:"lineno",converter:V.converters["unsigned long"],defaultValue:o(()=>0,"defaultValue")},{key:"colno",converter:V.converters["unsigned long"],defaultValue:o(()=>0,"defaultValue")},{key:"error",converter:V.converters.any}]);Kb.exports={MessageEvent:Gi,CloseEvent:au,ErrorEvent:Au,createFastMessageEvent:XG}});var Rs=T(($4,Xb)=>{"use strict";var e1="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",t1={enumerable:!0,writable:!1,configurable:!1},n1={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},r1={NOT_SENT:0,PROCESSING:1,SENT:2},s1={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},i1=2**16-1,o1={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},a1=Buffer.allocUnsafe(0),A1={string:1,typedArray:2,arrayBuffer:3,blob:4};Xb.exports={uid:e1,sentCloseFrameState:r1,staticPropertyDescriptors:t1,states:n1,opcodes:s1,maxUnsigned16Bit:i1,parserStates:o1,emptyBuffer:a1,sendHints:A1}});var Ia=T((Y4,eR)=>{"use strict";eR.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 Ba=T((H4,cR)=>{"use strict";var{kReadyState:ya,kController:c1,kResponse:u1,kBinaryType:l1,kWebSocketURL:d1}=Ia(),{states:Qa,opcodes:wr}=Rs(),{ErrorEvent:g1,createFastMessageEvent:h1}=$i(),{isUtf8:p1}=require("node:buffer"),{collectASequenceOfCodePointsFast:f1,removeHTTPWhitespace:tR}=gt();function m1(t){return t[ya]===Qa.CONNECTING}o(m1,"isConnecting");function E1(t){return t[ya]===Qa.OPEN}o(E1,"isEstablished");function C1(t){return t[ya]===Qa.CLOSING}o(C1,"isClosing");function I1(t){return t[ya]===Qa.CLOSED}o(I1,"isClosed");function up(t,e,n=(s,i)=>new Event(s,i),r={}){let s=n(t,r);e.dispatchEvent(s)}o(up,"fireEvent");function y1(t,e,n){if(t[ya]!==Qa.OPEN)return;let r;if(e===wr.TEXT)try{r=AR(n)}catch{rR(t,"Received invalid UTF-8 in text frame.");return}else e===wr.BINARY&&(t[l1]==="blob"?r=new Blob([n]):r=Q1(n));up("message",t,h1,{origin:t[d1].origin,data:r})}o(y1,"websocketMessageReceived");function Q1(t){return t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}o(Q1,"toArrayBuffer");function B1(t){if(t.length===0)return!1;for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n<33||n>126||n===34||n===40||n===41||n===44||n===47||n===58||n===59||n===60||n===61||n===62||n===63||n===64||n===91||n===92||n===93||n===123||n===125)return!1}return!0}o(B1,"isValidSubprotocol");function w1(t){return t>=1e3&&t<1015?t!==1004&&t!==1005&&t!==1006:t>=3e3&&t<=4999}o(w1,"isValidStatusCode");function rR(t,e){let{[c1]:n,[u1]:r}=t;n.abort(),r?.socket&&!r.socket.destroyed&&r.socket.destroy(),e&&up("error",t,(s,i)=>new g1(s,i),{error:new Error(e),message:e})}o(rR,"failWebsocketConnection");function sR(t){return t===wr.CLOSE||t===wr.PING||t===wr.PONG}o(sR,"isControlFrame");function iR(t){return t===wr.CONTINUATION}o(iR,"isContinuationFrame");function oR(t){return t===wr.TEXT||t===wr.BINARY}o(oR,"isTextBinaryFrame");function b1(t){return oR(t)||iR(t)||sR(t)}o(b1,"isValidOpcode");function R1(t){let e={position:0},n=new Map;for(;e.position<t.length;){let r=f1(";",t,e),[s,i=""]=r.split("=");n.set(tR(s,!0,!1),tR(i,!1,!0)),e.position++}return n}o(R1,"parseExtensions");function k1(t){if(t.length===0)return!1;for(let n=0;n<t.length;n++){let r=t.charCodeAt(n);if(r<48||r>57)return!1}let e=Number.parseInt(t,10);return e>=8&&e<=15}o(k1,"isValidClientWindowBits");var aR=typeof process.versions.icu=="string",nR=aR?new TextDecoder("utf-8",{fatal:!0}):void 0,AR=aR?nR.decode.bind(nR):function(t){if(p1(t))return t.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};cR.exports={isConnecting:m1,isEstablished:E1,isClosing:C1,isClosed:I1,fireEvent:up,isValidSubprotocol:B1,isValidStatusCode:w1,failWebsocketConnection:rR,websocketMessageReceived:y1,utf8Decode:AR,isControlFrame:sR,isContinuationFrame:iR,isTextBinaryFrame:oR,isValidOpcode:b1,parseExtensions:R1,isValidClientWindowBits:k1}});var uu=T((J4,uR)=>{"use strict";var{maxUnsigned16Bit:S1}=Rs(),cu=16386,lp,wa=null,Yi=cu;try{lp=require("node:crypto")}catch{lp={randomFillSync:o(function(e,n,r){for(let s=0;s<e.length;++s)e[s]=Math.random()*255|0;return e},"randomFillSync")}}function v1(){return Yi===cu&&(Yi=0,lp.randomFillSync(wa??=Buffer.allocUnsafe(cu),0,cu)),[wa[Yi++],wa[Yi++],wa[Yi++],wa[Yi++]]}o(v1,"generateMask");var dp=class{static{o(this,"WebsocketFrameSend")}constructor(e){this.frameData=e}createFrame(e){let n=this.frameData,r=v1(),s=n?.byteLength??0,i=s,a=6;s>S1?(a+=8,i=127):s>125&&(a+=2,i=126);let c=Buffer.allocUnsafe(s+a);c[0]=c[1]=0,c[0]|=128,c[0]=(c[0]&240)+e;c[a-4]=r[0],c[a-3]=r[1],c[a-2]=r[2],c[a-1]=r[3],c[1]=i,i===126?c.writeUInt16BE(s,2):i===127&&(c[2]=c[3]=0,c.writeUIntBE(s,4,6)),c[1]|=128;for(let l=0;l<s;++l)c[a+l]=n[l]^r[l&3];return c}};uR.exports={WebsocketFrameSend:dp}});var hp=T((j4,mR)=>{"use strict";var{uid:x1,states:ba,sentCloseFrameState:lu,emptyBuffer:D1,opcodes:T1}=Rs(),{kReadyState:Ra,kSentClose:du,kByteParser:dR,kReceivedClose:lR,kResponse:gR}=Ia(),{fireEvent:N1,failWebsocketConnection:br,isClosing:F1,isClosed:U1,isEstablished:M1,parseExtensions:L1}=Ba(),{channels:Hi}=ni(),{CloseEvent:_1}=$i(),{makeRequest:P1}=Mi(),{fetching:O1}=fa(),{Headers:G1,getHeadersList:$1}=Is(),{getDecodeSplit:Y1}=Qt(),{WebsocketFrameSend:H1}=uu(),gp;try{gp=require("node:crypto")}catch{}function V1(t,e,n,r,s,i){let a=t;a.protocol=t.protocol==="ws:"?"http:":"https:";let c=P1({urlList:[a],client:n,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(i.headers){let h=$1(new G1(i.headers));c.headersList=h}let l=gp.randomBytes(16).toString("base64");c.headersList.append("sec-websocket-key",l),c.headersList.append("sec-websocket-version","13");for(let h of e)c.headersList.append("sec-websocket-protocol",h);return c.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),O1({request:c,useParallelQueue:!0,dispatcher:i.dispatcher,processResponse(h){if(h.type==="error"||h.status!==101){br(r,"Received network error or non-101 status code.");return}if(e.length!==0&&!h.headersList.get("Sec-WebSocket-Protocol")){br(r,"Server did not respond with sent protocols.");return}if(h.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){br(r,'Server did not set Upgrade header to "websocket".');return}if(h.headersList.get("Connection")?.toLowerCase()!=="upgrade"){br(r,'Server did not set Connection header to "upgrade".');return}let f=h.headersList.get("Sec-WebSocket-Accept"),m=gp.createHash("sha1").update(l+x1).digest("base64");if(f!==m){br(r,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let C=h.headersList.get("Sec-WebSocket-Extensions"),y;if(C!==null&&(y=L1(C),!y.has("permessage-deflate"))){br(r,"Sec-WebSocket-Extensions header does not match.");return}let v=h.headersList.get("Sec-WebSocket-Protocol");if(v!==null){let Q=Y1("sec-websocket-protocol",c.headersList);if(Q===null||!Q.includes(v)){br(r,"Protocol was not set in the opening handshake.");return}}h.socket.on("data",hR),h.socket.on("close",pR),h.socket.on("error",fR),Hi.open.hasSubscribers&&Hi.open.publish({address:h.socket.address(),protocol:v,extensions:C}),s(h,y)}})}o(V1,"establishWebSocketConnection");function J1(t,e,n,r){if(!(F1(t)||U1(t)))if(!M1(t))br(t,"Connection was closed before it was established."),t[Ra]=ba.CLOSING;else if(t[du]===lu.NOT_SENT){t[du]=lu.PROCESSING;let s=new H1;e!==void 0&&n===void 0?(s.frameData=Buffer.allocUnsafe(2),s.frameData.writeUInt16BE(e,0)):e!==void 0&&n!==void 0?(s.frameData=Buffer.allocUnsafe(2+r),s.frameData.writeUInt16BE(e,0),s.frameData.write(n,2,"utf-8")):s.frameData=D1,t[gR].socket.write(s.createFrame(T1.CLOSE)),t[du]=lu.SENT,t[Ra]=ba.CLOSING}else t[Ra]=ba.CLOSING}o(J1,"closeWebSocketConnection");function hR(t){this.ws[dR].write(t)||this.pause()}o(hR,"onSocketData");function pR(){let{ws:t}=this,{[gR]:e}=t;e.socket.off("data",hR),e.socket.off("close",pR),e.socket.off("error",fR);let n=t[du]===lu.SENT&&t[lR],r=1005,s="",i=t[dR].closingInfo;i&&!i.error?(r=i.code??1005,s=i.reason):t[lR]||(r=1006),t[Ra]=ba.CLOSED,N1("close",t,(a,c)=>new _1(a,c),{wasClean:n,code:r,reason:s}),Hi.close.hasSubscribers&&Hi.close.publish({websocket:t,code:r,reason:s})}o(pR,"onSocketClose");function fR(t){let{ws:e}=this;e[Ra]=ba.CLOSING,Hi.socketError.hasSubscribers&&Hi.socketError.publish(t),this.destroy()}o(fR,"onSocketError");mR.exports={establishWebSocketConnection:V1,closeWebSocketConnection:J1}});var CR=T((z4,ER)=>{"use strict";var{createInflateRaw:q1,Z_DEFAULT_WINDOWBITS:j1}=require("node:zlib"),{isValidClientWindowBits:W1}=Ba(),{MessageSizeExceededError:z1}=pe(),Z1=Buffer.from([0,0,255,255]),gu=Symbol("kBuffer"),ka=Symbol("kLength"),pp=class{static{o(this,"PerMessageDeflate")}#e;#t={};#n=0;constructor(e,n){this.#t.serverNoContextTakeover=e.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=e.get("server_max_window_bits"),this.#n=n.maxPayloadSize}decompress(e,n,r){if(!this.#e){let s=j1;if(this.#t.serverMaxWindowBits){if(!W1(this.#t.serverMaxWindowBits)){r(new Error("Invalid server_max_window_bits"));return}s=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=q1({windowBits:s})}catch(i){r(i);return}this.#e[gu]=[],this.#e[ka]=0,this.#e.on("data",i=>{if(this.#e[ka]+=i.length,this.#n>0&&this.#e[ka]>this.#n){r(new z1),this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null;return}this.#e[gu].push(i)}),this.#e.on("error",i=>{this.#e=null,r(i)})}this.#e.write(e),n&&this.#e.write(Z1),this.#e.flush(()=>{if(!this.#e)return;let s=Buffer.concat(this.#e[gu],this.#e[ka]);this.#e[gu].length=0,this.#e[ka]=0,r(null,s)})}};ER.exports={PerMessageDeflate:pp}});var vR=T((K4,SR)=>{"use strict";var{Writable:K1}=require("node:stream"),X1=require("node:assert"),{parserStates:Et,opcodes:Vi,states:e$,emptyBuffer:IR,sentCloseFrameState:yR}=Rs(),{kReadyState:t$,kSentClose:QR,kResponse:BR,kReceivedClose:wR}=Ia(),{channels:hu}=ni(),{isValidStatusCode:n$,isValidOpcode:r$,failWebsocketConnection:xt,websocketMessageReceived:bR,utf8Decode:s$,isControlFrame:fp,isTextBinaryFrame:mp,isContinuationFrame:i$}=Ba(),{WebsocketFrameSend:RR}=uu(),{closeWebSocketConnection:kR}=hp(),{PerMessageDeflate:o$}=CR(),{MessageSizeExceededError:Ep}=pe();function Sa(t,e,n){kR(t,e,n,Buffer.byteLength(n)),xt(t,n)}o(Sa,"failWebsocketConnectionWithCode");var Cp=class extends K1{static{o(this,"ByteParser")}#e=[];#t=0;#n=0;#i=!1;#s=Et.INFO;#r={};#o=[];#a;#c;#A;constructor(e,n,r={}){super(),this.ws=e,this.#a=n??new Map,this.#c=r.maxFragments??0,this.#A=r.maxPayloadSize??0,this.#a.has("permessage-deflate")&&this.#a.set("permessage-deflate",new o$(n,r))}_write(e,n,r){this.#e.push(e),this.#n+=e.length,this.#i=!0,this.run(r)}#u(){return this.#A>0&&!fp(this.#r.opcode)&&this.#r.payloadLength+this.#t>this.#A?(Sa(this.ws,1009,"Payload size exceeds maximum allowed size"),!1):!0}run(e){for(;this.#i;)if(this.#s===Et.INFO){if(this.#n<2)return e();let n=this.consume(2),r=(n[0]&128)!==0,s=n[0]&15,i=(n[1]&128)===128,a=!r&&s!==Vi.CONTINUATION,c=n[1]&127,l=n[0]&64,d=n[0]&32,g=n[0]&16;if(!r$(s))return xt(this.ws,"Invalid opcode received"),e();if(i)return xt(this.ws,"Frame cannot be masked"),e();if(l!==0&&!this.#a.has("permessage-deflate")){xt(this.ws,"Expected RSV1 to be clear.");return}if(d!==0||g!==0){xt(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(a&&!mp(s)){xt(this.ws,"Invalid frame type was fragmented.");return}if(mp(s)&&this.#o.length>0){xt(this.ws,"Expected continuation frame");return}if(this.#r.fragmented&&a){xt(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((c>125||a)&&fp(s)){xt(this.ws,"Control frame either too large or fragmented");return}if(i$(s)&&this.#o.length===0&&!this.#r.compressed){xt(this.ws,"Unexpected continuation frame");return}if(c<=125){if(this.#r.payloadLength=c,this.#s=Et.READ_DATA,!this.#u())return}else c===126?this.#s=Et.PAYLOADLENGTH_16:c===127&&(this.#s=Et.PAYLOADLENGTH_64);mp(s)&&(this.#r.binaryType=s,this.#r.compressed=l!==0),this.#r.opcode=s,this.#r.masked=i,this.#r.fin=r,this.#r.fragmented=a}else if(this.#s===Et.PAYLOADLENGTH_16){if(this.#n<2)return e();let n=this.consume(2);if(this.#r.payloadLength=n.readUInt16BE(0),this.#s=Et.READ_DATA,!this.#u())return}else if(this.#s===Et.PAYLOADLENGTH_64){if(this.#n<8)return e();let n=this.consume(8),r=n.readUInt32BE(0),s=n.readUInt32BE(4);if(r!==0||s>2**31-1){xt(this.ws,"Received payload length > 2^31 bytes.");return}if(this.#r.payloadLength=s,this.#s=Et.READ_DATA,!this.#u())return}else if(this.#s===Et.READ_DATA){if(this.#n<this.#r.payloadLength)return e();let n=this.consume(this.#r.payloadLength);if(fp(this.#r.opcode))this.#i=this.parseControlFrame(n),this.#s=Et.INFO;else if(this.#r.compressed){this.#a.get("permessage-deflate").decompress(n,this.#r.fin,(r,s)=>{if(r){let i=r instanceof Ep?1009:1007;Sa(this.ws,i,r.message);return}if(this.writeFragments(s)){if(this.#A>0&&this.#t>this.#A){Sa(this.ws,1009,new Ep().message);return}if(!this.#r.fin){this.#s=Et.INFO,this.#i=!0,this.run(e);return}bR(this.ws,this.#r.binaryType,this.consumeFragments()),this.#i=!0,this.#s=Et.INFO,this.run(e)}}),this.#i=!1;break}else{if(!this.writeFragments(n))return;if(this.#A>0&&this.#t>this.#A){Sa(this.ws,1009,new Ep().message);return}!this.#r.fragmented&&this.#r.fin&&bR(this.ws,this.#r.binaryType,this.consumeFragments()),this.#s=Et.INFO}}}consume(e){if(e>this.#n)throw new Error("Called consume() before buffers satiated.");if(e===0)return IR;if(this.#e[0].length===e)return this.#n-=this.#e[0].length,this.#e.shift();let n=Buffer.allocUnsafe(e),r=0;for(;r!==e;){let s=this.#e[0],{length:i}=s;if(i+r===e){n.set(this.#e.shift(),r);break}else if(i+r>e){n.set(s.subarray(0,e-r),r),this.#e[0]=s.subarray(e-r);break}else n.set(this.#e.shift(),r),r+=s.length}return this.#n-=e,n}writeFragments(e){return this.#c>0&&this.#o.length===this.#c?(Sa(this.ws,1008,"Too many message fragments"),!1):(this.#t+=e.length,this.#o.push(e),!0)}consumeFragments(){let e=this.#o;if(e.length===1)return this.#t=0,e.shift();let n=Buffer.concat(e,this.#t);return this.#o=[],this.#t=0,n}parseCloseBody(e){X1(e.length!==1);let n;if(e.length>=2&&(n=e.readUInt16BE(0)),n!==void 0&&!n$(n))return{code:1002,reason:"Invalid status code",error:!0};let r=e.subarray(2);r[0]===239&&r[1]===187&&r[2]===191&&(r=r.subarray(3));try{r=s$(r)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:n,reason:r,error:!1}}parseControlFrame(e){let{opcode:n,payloadLength:r}=this.#r;if(n===Vi.CLOSE){if(r===1)return xt(this.ws,"Received close frame with a 1-byte body."),!1;if(this.#r.closeInfo=this.parseCloseBody(e),this.#r.closeInfo.error){let{code:s,reason:i}=this.#r.closeInfo;return kR(this.ws,s,i,i.length),xt(this.ws,i),!1}if(this.ws[QR]!==yR.SENT){let s=IR;this.#r.closeInfo.code&&(s=Buffer.allocUnsafe(2),s.writeUInt16BE(this.#r.closeInfo.code,0));let i=new RR(s);this.ws[BR].socket.write(i.createFrame(Vi.CLOSE),a=>{a||(this.ws[QR]=yR.SENT)})}return this.ws[t$]=e$.CLOSING,this.ws[wR]=!0,!1}else if(n===Vi.PING){if(!this.ws[wR]){let s=new RR(e);this.ws[BR].socket.write(s.createFrame(Vi.PONG)),hu.ping.hasSubscribers&&hu.ping.publish({payload:e})}}else n===Vi.PONG&&hu.pong.hasSubscribers&&hu.pong.publish({payload:e});return!0}get closingInfo(){return this.#r.closeInfo}};SR.exports={ByteParser:Cp}});var FR=T((e3,NR)=>{"use strict";var{WebsocketFrameSend:a$}=uu(),{opcodes:xR,sendHints:Ji}=Rs(),A$=bg(),DR=Buffer[Symbol.species],Ip=class{static{o(this,"SendQueue")}#e=new A$;#t=!1;#n;constructor(e){this.#n=e}add(e,n,r){if(r!==Ji.blob){let i=TR(e,r);if(!this.#t)this.#n.write(i,n);else{let a={promise:null,callback:n,frame:i};this.#e.push(a)}return}let s={promise:e.arrayBuffer().then(i=>{s.promise=null,s.frame=TR(i,r)}),callback:n,frame:null};this.#e.push(s),this.#t||this.#i()}async#i(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let n=e.shift();n.promise!==null&&await n.promise,this.#n.write(n.frame,n.callback),n.callback=n.frame=null}this.#t=!1}};function TR(t,e){return new a$(c$(t,e)).createFrame(e===Ji.string?xR.TEXT:xR.BINARY)}o(TR,"createFrame");function c$(t,e){switch(e){case Ji.string:return Buffer.from(t);case Ji.arrayBuffer:case Ji.blob:return new DR(t);case Ji.typedArray:return new DR(t.buffer,t.byteOffset,t.byteLength)}}o(c$,"toBuffer");NR.exports={SendQueue:Ip}});var HR=T((n3,YR)=>{"use strict";var{webidl:ne}=je(),{URLSerializer:u$}=gt(),{environmentSettingsObject:UR}=Qt(),{staticPropertyDescriptors:Rr,states:va,sentCloseFrameState:l$,sendHints:pu}=Rs(),{kWebSocketURL:MR,kReadyState:yp,kController:LR,kBinaryType:fu,kResponse:_R,kSentClose:d$,kByteParser:g$}=Ia(),{isConnecting:h$,isEstablished:p$,isClosing:f$,isValidSubprotocol:m$,fireEvent:PR}=Ba(),{establishWebSocketConnection:E$,closeWebSocketConnection:OR}=hp(),{ByteParser:C$}=vR(),{kEnumerableProperty:Yt,isBlobLike:GR}=ue(),{getGlobalDispatcher:I$}=Dc(),{types:$R}=require("node:util"),{ErrorEvent:y$,CloseEvent:Q$}=$i(),{SendQueue:B$}=FR(),Dt=class t extends EventTarget{static{o(this,"WebSocket")}#e={open:null,error:null,close:null,message:null};#t=0;#n="";#i="";#s;constructor(e,n=[]){super(),ne.util.markAsUncloneable(this);let r="WebSocket constructor";ne.argumentLengthCheck(arguments,1,r);let s=ne.converters["DOMString or sequence<DOMString> or WebSocketInit"](n,r,"options");e=ne.converters.USVString(e,r,"url"),n=s.protocols;let i=UR.settingsObject.baseUrl,a;try{a=new URL(e,i)}catch(l){throw new DOMException(l,"SyntaxError")}if(a.protocol==="http:"?a.protocol="ws:":a.protocol==="https:"&&(a.protocol="wss:"),a.protocol!=="ws:"&&a.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${a.protocol}`,"SyntaxError");if(a.hash||a.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof n=="string"&&(n=[n]),n.length!==new Set(n.map(l=>l.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(n.length>0&&!n.every(l=>m$(l)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[MR]=new URL(a.href);let c=UR.settingsObject;this[LR]=E$(a,n,c,this,(l,d)=>this.#r(l,d),s),this[yp]=t.CONNECTING,this[d$]=l$.NOT_SENT,this[fu]="blob"}close(e=void 0,n=void 0){ne.brandCheck(this,t);let r="WebSocket.close";if(e!==void 0&&(e=ne.converters["unsigned short"](e,r,"code",{clamp:!0})),n!==void 0&&(n=ne.converters.USVString(n,r,"reason")),e!==void 0&&e!==1e3&&(e<3e3||e>4999))throw new DOMException("invalid code","InvalidAccessError");let s=0;if(n!==void 0&&(s=Buffer.byteLength(n),s>123))throw new DOMException(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError");OR(this,e,n,s)}send(e){ne.brandCheck(this,t);let n="WebSocket.send";if(ne.argumentLengthCheck(arguments,1,n),e=ne.converters.WebSocketSendData(e,n,"data"),h$(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!p$(this)||f$(this)))if(typeof e=="string"){let r=Buffer.byteLength(e);this.#t+=r,this.#s.add(e,()=>{this.#t-=r},pu.string)}else $R.isArrayBuffer(e)?(this.#t+=e.byteLength,this.#s.add(e,()=>{this.#t-=e.byteLength},pu.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#s.add(e,()=>{this.#t-=e.byteLength},pu.typedArray)):GR(e)&&(this.#t+=e.size,this.#s.add(e,()=>{this.#t-=e.size},pu.blob))}get readyState(){return ne.brandCheck(this,t),this[yp]}get bufferedAmount(){return ne.brandCheck(this,t),this.#t}get url(){return ne.brandCheck(this,t),u$(this[MR])}get extensions(){return ne.brandCheck(this,t),this.#i}get protocol(){return ne.brandCheck(this,t),this.#n}get onopen(){return ne.brandCheck(this,t),this.#e.open}set onopen(e){ne.brandCheck(this,t),this.#e.open&&this.removeEventListener("open",this.#e.open),typeof e=="function"?(this.#e.open=e,this.addEventListener("open",e)):this.#e.open=null}get onerror(){return ne.brandCheck(this,t),this.#e.error}set onerror(e){ne.brandCheck(this,t),this.#e.error&&this.removeEventListener("error",this.#e.error),typeof e=="function"?(this.#e.error=e,this.addEventListener("error",e)):this.#e.error=null}get onclose(){return ne.brandCheck(this,t),this.#e.close}set onclose(e){ne.brandCheck(this,t),this.#e.close&&this.removeEventListener("close",this.#e.close),typeof e=="function"?(this.#e.close=e,this.addEventListener("close",e)):this.#e.close=null}get onmessage(){return ne.brandCheck(this,t),this.#e.message}set onmessage(e){ne.brandCheck(this,t),this.#e.message&&this.removeEventListener("message",this.#e.message),typeof e=="function"?(this.#e.message=e,this.addEventListener("message",e)):this.#e.message=null}get binaryType(){return ne.brandCheck(this,t),this[fu]}set binaryType(e){ne.brandCheck(this,t),e!=="blob"&&e!=="arraybuffer"?this[fu]="blob":this[fu]=e}#r(e,n){this[_R]=e;let r=this[LR]?.dispatcher?.webSocketOptions,s=r?.maxFragments,i=r?.maxPayloadSize,a=new C$(this,n,{maxFragments:s,maxPayloadSize:i});a.on("drain",w$),a.on("error",b$.bind(this)),e.socket.ws=this,this[g$]=a,this.#s=new B$(e.socket),this[yp]=va.OPEN;let c=e.headersList.get("sec-websocket-extensions");c!==null&&(this.#i=c);let l=e.headersList.get("sec-websocket-protocol");l!==null&&(this.#n=l),PR("open",this)}};Dt.CONNECTING=Dt.prototype.CONNECTING=va.CONNECTING;Dt.OPEN=Dt.prototype.OPEN=va.OPEN;Dt.CLOSING=Dt.prototype.CLOSING=va.CLOSING;Dt.CLOSED=Dt.prototype.CLOSED=va.CLOSED;Object.defineProperties(Dt.prototype,{CONNECTING:Rr,OPEN:Rr,CLOSING:Rr,CLOSED:Rr,url:Yt,readyState:Yt,bufferedAmount:Yt,onopen:Yt,onerror:Yt,onclose:Yt,close:Yt,onmessage:Yt,binaryType:Yt,send:Yt,extensions:Yt,protocol:Yt,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(Dt,{CONNECTING:Rr,OPEN:Rr,CLOSING:Rr,CLOSED:Rr});ne.converters["sequence<DOMString>"]=ne.sequenceConverter(ne.converters.DOMString);ne.converters["DOMString or sequence<DOMString>"]=function(t,e,n){return ne.util.Type(t)==="Object"&&Symbol.iterator in t?ne.converters["sequence<DOMString>"](t):ne.converters.DOMString(t,e,n)};ne.converters.WebSocketInit=ne.dictionaryConverter([{key:"protocols",converter:ne.converters["DOMString or sequence<DOMString>"],defaultValue:o(()=>new Array(0),"defaultValue")},{key:"dispatcher",converter:ne.converters.any,defaultValue:o(()=>I$(),"defaultValue")},{key:"headers",converter:ne.nullableConverter(ne.converters.HeadersInit)}]);ne.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(t){return ne.util.Type(t)==="Object"&&!(Symbol.iterator in t)?ne.converters.WebSocketInit(t):{protocols:ne.converters["DOMString or sequence<DOMString>"](t)}};ne.converters.WebSocketSendData=function(t){if(ne.util.Type(t)==="Object"){if(GR(t))return ne.converters.Blob(t,{strict:!1});if(ArrayBuffer.isView(t)||$R.isArrayBuffer(t))return ne.converters.BufferSource(t)}return ne.converters.USVString(t)};function w$(){this.ws[_R].socket.resume()}o(w$,"onParserDrain");function b$(t){let e,n;t instanceof Q$?(e=t.reason,n=t.code):e=t.message,PR("error",this,()=>new y$("error",{error:t,message:e})),OR(this,n)}o(b$,"onParserError");YR.exports={WebSocket:Dt}});var Qp=T((s3,VR)=>{"use strict";function R$(t){return t.indexOf("\0")===-1}o(R$,"isValidLastEventId");function k$(t){if(t.length===0)return!1;for(let e=0;e<t.length;e++)if(t.charCodeAt(e)<48||t.charCodeAt(e)>57)return!1;return!0}o(k$,"isASCIINumber");function S$(t){return new Promise(e=>{setTimeout(e,t).unref()})}o(S$,"delay");VR.exports={isValidLastEventId:R$,isASCIINumber:k$,delay:S$}});var qR=T((o3,JR)=>{"use strict";var{Transform:v$}=require("node:stream"),{isASCIINumber:x$,isValidLastEventId:D$}=Qp(),qi=[239,187,191],Bp=10,mu=13,T$=58,N$=32,F$=Buffer.from("data"),U$=Buffer.from("event"),M$=Buffer.from("id"),L$=Buffer.from("retry");function _$(t,e){if(e>=t.length)return!1;for(let n=e;n<t.length;n++)if(t[n]<48||t[n]>57)return!1;return!0}o(_$,"isASCIINumberBytes");function P$(t,e){for(let n=e;n<t.length;n++)if(t[n]===0)return!1;return!0}o(P$,"isValidLastEventIdBytes");function Eu(t,e,n){if(e!==n.length)return!1;for(let r=0;r<e;r++)if(t[r]!==n[r])return!1;return!0}o(Eu,"isFieldName");var wp=class extends v${static{o(this,"EventSourceStream")}state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},e.push&&(this.push=e.push)}_transform(e,n,r){if(e.length===0){r();return}if(this.chunks.push(e),this.checkBOM&&this.handleBOM()){r();return}for(;this.hasCurrentByte();){let s=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(s===Bp){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(s===Bp||s===mu){s===mu&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(s===Bp||s===mu){s===mu&&(this.crlfCheck=!0),this.parseLine(this.readLine(),this.event),this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}r()}parseLine(e,n){if(e.length===0)return;let r=e.indexOf(T$);if(r===0)return;let s=e.length,i=e.length;if(r!==-1&&(s=r,i=r+1,e[i]===N$&&++i),Eu(e,s,F$)){let a=e.toString("utf8",i);n.data===void 0?n.data=a:n.data+=`
46
+ ${a}`;return}if(Eu(e,s,L$)){_$(e,i)&&(n.retry=e.toString("utf8",i));return}if(Eu(e,s,M$)){P$(e,i)&&(n.id=e.toString("utf8",i));return}if(Eu(e,s,U$)){let a=e.toString("utf8",i);a.length>0&&(n.event=a)}}processEvent(e){e.retry&&x$(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&D$(e.id)&&(this.state.lastEventId=e.id),e.data!==void 0&&this.push({type:e.event||"message",options:{data:e.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0}hasPendingEvent(){return this.event.data!==void 0||this.event.event!==void 0||this.event.id!==void 0||this.event.retry!==void 0}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.dropConsumedChunks()}dropConsumedChunks(){for(;this.lineChunkIndex>0;)this.chunks.shift(),this.lineChunkIndex--,this.chunkIndex--;this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let e=[],n=0;for(let r=this.lineChunkIndex;r<=this.chunkIndex;r++){let s=this.chunks[r],i=r===this.lineChunkIndex?this.linePos:0,a=r===this.chunkIndex?this.pos:s.length,c=s.subarray(i,a);n+=c.length,e.push(c)}return Buffer.concat(e,n)}peekBufferedByte(e){let n=this.lineChunkIndex,r=this.linePos;for(;n<this.chunks.length;){let s=this.chunks[n],i=s.length-r;if(e<i)return s[r+e];e-=i,n++,r=0}}discardLeadingBytes(e){for(;e>0&&this.lineChunkIndex<this.chunks.length;){let r=this.chunks[this.lineChunkIndex].length-this.linePos;e<r?(this.linePos+=e,e=0):(e-=r,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let e=this.peekBufferedByte(0),n=this.peekBufferedByte(1),r=this.peekBufferedByte(2);return n===void 0?(e===qi[0]||(this.checkBOM=!1),!0):r===void 0?e===qi[0]&&n===qi[1]?!0:(this.checkBOM=!1,!1):(e===qi[0]&&n===qi[1]&&r===qi[2]&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}};JR.exports={EventSourceStream:wp}});var tk=T((A3,ek)=>{"use strict";var{pipeline:O$}=require("node:stream"),{fetching:G$}=fa(),{makeRequest:$$}=Mi(),{webidl:Hn}=je(),{EventSourceStream:Y$}=qR(),{parseMIMEType:H$}=gt(),{createFastMessageEvent:V$}=$i(),{isNetworkError:jR}=ha(),{delay:J$}=Qp(),{kEnumerableProperty:ks}=ue(),{environmentSettingsObject:WR}=Qt(),zR=!1,ZR=3e3,xa=0,KR=1,Da=2,q$="anonymous",j$="use-credentials",ji=class t extends EventTarget{static{o(this,"EventSource")}#e={open:null,error:null,message:null};#t=null;#n=!1;#i=xa;#s=null;#r=null;#o;#a;constructor(e,n={}){super(),Hn.util.markAsUncloneable(this);let r="EventSource constructor";Hn.argumentLengthCheck(arguments,1,r),zR||(zR=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=Hn.converters.USVString(e,r,"url"),n=Hn.converters.EventSourceInitDict(n,r,"eventSourceInitDict"),this.#o=n.dispatcher,this.#a={lastEventId:"",reconnectionTime:ZR};let s=WR,i;try{i=new URL(e,s.settingsObject.baseUrl),this.#a.origin=i.origin}catch(l){throw new DOMException(l,"SyntaxError")}this.#t=i.href;let a=q$;n.withCredentials&&(a=j$,this.#n=!0);let c={redirect:"follow",keepalive:!0,mode:"cors",credentials:a==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};c.client=WR.settingsObject,c.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],c.cache="no-store",c.initiator="other",c.urlList=[new URL(this.#t)],this.#s=$$(c),this.#c()}get readyState(){return this.#i}get url(){return this.#t}get withCredentials(){return this.#n}#c(){if(this.#i===Da)return;this.#i=xa;let e={request:this.#s,dispatcher:this.#o},n=o(r=>{jR(r)&&(this.dispatchEvent(new Event("error")),this.close()),this.#A()},"processEventSourceEndOfBody");e.processResponseEndOfBody=n,e.processResponse=r=>{if(jR(r))if(r.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#A();return}let s=r.headersList.get("content-type",!0),i=s!==null?H$(s):"failure",a=i!=="failure"&&i.essence==="text/event-stream";if(r.status!==200||a===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#i=KR,this.dispatchEvent(new Event("open")),this.#a.origin=r.urlList[r.urlList.length-1].origin;let c=new Y$({eventSourceSettings:this.#a,push:o(l=>{this.dispatchEvent(V$(l.type,l.options))},"push")});O$(r.body.stream,c,l=>{l?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#r=G$(e)}async#A(){this.#i!==Da&&(this.#i=xa,this.dispatchEvent(new Event("error")),await J$(this.#a.reconnectionTime),this.#i===xa&&(this.#a.lastEventId.length&&this.#s.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#c()))}close(){Hn.brandCheck(this,t),this.#i!==Da&&(this.#i=Da,this.#r.abort(),this.#s=null)}get onopen(){return this.#e.open}set onopen(e){this.#e.open&&this.removeEventListener("open",this.#e.open),typeof e=="function"?(this.#e.open=e,this.addEventListener("open",e)):this.#e.open=null}get onmessage(){return this.#e.message}set onmessage(e){this.#e.message&&this.removeEventListener("message",this.#e.message),typeof e=="function"?(this.#e.message=e,this.addEventListener("message",e)):this.#e.message=null}get onerror(){return this.#e.error}set onerror(e){this.#e.error&&this.removeEventListener("error",this.#e.error),typeof e=="function"?(this.#e.error=e,this.addEventListener("error",e)):this.#e.error=null}},XR={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:xa,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:KR,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:Da,writable:!1}};Object.defineProperties(ji,XR);Object.defineProperties(ji.prototype,XR);Object.defineProperties(ji.prototype,{close:ks,onerror:ks,onmessage:ks,onopen:ks,readyState:ks,url:ks,withCredentials:ks});Hn.converters.EventSourceInitDict=Hn.dictionaryConverter([{key:"withCredentials",converter:Hn.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"dispatcher",converter:Hn.converters.any}]);ek.exports={EventSource:ji,defaultReconnectionTime:ZR}});var ik=T((u3,te)=>{"use strict";var W$=Qi(),nk=Fo(),z$=Bi(),Z$=tQ(),K$=wi(),X$=Vg(),eY=bQ(),tY=TQ(),rk=pe(),Iu=ue(),{InvalidArgumentError:Cu}=rk,Wi=EB(),nY=Mo(),rY=Rh(),sY=ew(),iY=vh(),oY=gh(),aY=yc(),{getGlobalDispatcher:sk,setGlobalDispatcher:AY}=Dc(),cY=Tc(),uY=uc(),lY=lc();Object.assign(nk.prototype,Wi);te.exports.Dispatcher=nk;te.exports.Client=W$;te.exports.Pool=z$;te.exports.BalancedPool=Z$;te.exports.Agent=K$;te.exports.ProxyAgent=X$;te.exports.EnvHttpProxyAgent=eY;te.exports.RetryAgent=tY;te.exports.RetryHandler=aY;te.exports.DecoratorHandler=cY;te.exports.RedirectHandler=uY;te.exports.createRedirectInterceptor=lY;te.exports.interceptors={redirect:aw(),retry:cw(),dump:lw(),dns:hw()};te.exports.buildConnector=nY;te.exports.errors=rk;te.exports.util={parseHeaders:Iu.parseHeaders,headerNameToString:Iu.headerNameToString};function Ta(t){return(e,n,r)=>{if(typeof n=="function"&&(r=n,n=null),!e||typeof e!="string"&&typeof e!="object"&&!(e instanceof URL))throw new Cu("invalid url");if(n!=null&&typeof n!="object")throw new Cu("invalid opts");if(n&&n.path!=null){if(typeof n.path!="string")throw new Cu("invalid opts.path");let a=n.path;n.path.startsWith("/")||(a=`/${a}`),e=new URL(Iu.parseOrigin(e).origin+a)}else n||(n=typeof e=="object"?e:{}),e=Iu.parseURL(e);let{agent:s,dispatcher:i=sk()}=n;if(s)throw new Cu("unsupported opts.agent. Did you mean opts.client?");return t.call(i,{...n,origin:e.origin,path:e.search?`${e.pathname}${e.search}`:e.pathname,method:n.method||(n.body?"PUT":"GET")},r)}}o(Ta,"makeDispatcher");te.exports.setGlobalDispatcher=AY;te.exports.getGlobalDispatcher=sk;var dY=fa().fetch;te.exports.fetch=o(async function(e,n=void 0){try{return await dY(e,n)}catch(r){throw r&&typeof r=="object"&&Error.captureStackTrace(r),r}},"fetch");te.exports.Headers=Is().Headers;te.exports.Response=ha().Response;te.exports.Request=Mi().Request;te.exports.FormData=Yo().FormData;te.exports.File=globalThis.File??require("node:buffer").File;te.exports.FileReader=xb().FileReader;var{setGlobalOrigin:gY,getGlobalOrigin:hY}=Hd();te.exports.setGlobalOrigin=gY;te.exports.getGlobalOrigin=hY;var{CacheStorage:pY}=Pb(),{kConstruct:fY}=Xc();te.exports.caches=new pY(fY);var{deleteCookie:mY,getCookies:EY,getSetCookies:CY,setCookie:IY}=zb();te.exports.deleteCookie=mY;te.exports.getCookies=EY;te.exports.getSetCookies=CY;te.exports.setCookie=IY;var{parseMIMEType:yY,serializeAMimeType:QY}=gt();te.exports.parseMIMEType=yY;te.exports.serializeAMimeType=QY;var{CloseEvent:BY,ErrorEvent:wY,MessageEvent:bY}=$i();te.exports.WebSocket=HR().WebSocket;te.exports.CloseEvent=BY;te.exports.ErrorEvent=wY;te.exports.MessageEvent=bY;te.exports.request=Ta(Wi.request);te.exports.stream=Ta(Wi.stream);te.exports.pipeline=Ta(Wi.pipeline);te.exports.connect=Ta(Wi.connect);te.exports.upgrade=Ta(Wi.upgrade);te.exports.MockClient=rY;te.exports.MockPool=iY;te.exports.MockAgent=sY;te.exports.mockErrors=oY;var{EventSource:RY}=tk();te.exports.EventSource=RY});var h2={};Mp(h2,{AppRefusal:()=>Qn,AppUnreachable:()=>zi,AttemptEndReason:()=>ho,NoReportCause:()=>po,RunnerMethod:()=>Tp,V3Attempt:()=>La,closedV3Attempt:()=>Qk,endV3Attempt:()=>bk,heartbeatV3Attempt:()=>Up,startV3Attempt:()=>yk,uploadV3Report:()=>wk});module.exports=Dk(h2);var A={};Mp(A,{BRAND:()=>rS,DIRTY:()=>vr,EMPTY_PATH:()=>Uk,INVALID:()=>Z,NEVER:()=>GS,OK:()=>We,ParseStatus:()=>Ve,Schema:()=>Ae,ZodAny:()=>Xn,ZodArray:()=>Sn,ZodBigInt:()=>Dr,ZodBoolean:()=>Tr,ZodBranded:()=>oo,ZodCatch:()=>Yr,ZodDate:()=>Nr,ZodDefault:()=>$r,ZodDiscriminatedUnion:()=>Wa,ZodEffects:()=>Ut,ZodEnum:()=>Or,ZodError:()=>ct,ZodFirstPartyTypeKind:()=>ee,ZodFunction:()=>Za,ZodIntersection:()=>Lr,ZodIssueCode:()=>N,ZodLazy:()=>_r,ZodLiteral:()=>Pr,ZodMap:()=>Ms,ZodNaN:()=>_s,ZodNativeEnum:()=>Gr,ZodNever:()=>Vt,ZodNull:()=>Ur,ZodNullable:()=>cn,ZodNumber:()=>xr,ZodObject:()=>ut,ZodOptional:()=>Nt,ZodParsedType:()=>O,ZodPipeline:()=>ao,ZodPromise:()=>er,ZodReadonly:()=>Hr,ZodRecord:()=>za,ZodSchema:()=>Ae,ZodSet:()=>Ls,ZodString:()=>Kn,ZodSymbol:()=>Fs,ZodTransformer:()=>Ut,ZodTuple:()=>An,ZodType:()=>Ae,ZodUndefined:()=>Fr,ZodUnion:()=>Mr,ZodUnknown:()=>kn,ZodVoid:()=>Us,addIssueToContext:()=>_,any:()=>dS,array:()=>fS,bigint:()=>aS,boolean:()=>jp,coerce:()=>OS,custom:()=>Vp,date:()=>AS,datetimeRegex:()=>Yp,defaultErrorMap:()=>bn,discriminatedUnion:()=>IS,effect:()=>TS,enum:()=>vS,function:()=>RS,getErrorMap:()=>Ds,getParsedType:()=>an,instanceof:()=>iS,intersection:()=>yS,isAborted:()=>qa,isAsync:()=>Ts,isDirty:()=>ja,isValid:()=>Zn,late:()=>sS,lazy:()=>kS,literal:()=>SS,makeIssue:()=>io,map:()=>wS,nan:()=>oS,nativeEnum:()=>xS,never:()=>hS,null:()=>lS,nullable:()=>FS,number:()=>qp,object:()=>mS,objectUtil:()=>Du,oboolean:()=>PS,onumber:()=>_S,optional:()=>NS,ostring:()=>LS,pipeline:()=>MS,preprocess:()=>US,promise:()=>DS,quotelessJson:()=>Tk,record:()=>BS,set:()=>bS,setErrorMap:()=>Fk,strictObject:()=>ES,string:()=>Jp,symbol:()=>cS,transformer:()=>TS,tuple:()=>QS,undefined:()=>uS,union:()=>CS,unknown:()=>gS,util:()=>le,void:()=>pS});var le;(function(t){t.assertEqual=s=>{};function e(s){}o(e,"assertIs"),t.assertIs=e;function n(s){throw new Error}o(n,"assertNever"),t.assertNever=n,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(c=>typeof s[s[c]]!="number"),a={};for(let c of i)a[c]=s[c];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}o(r,"joinValues"),t.joinValues=r,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(le||(le={}));var Du;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Du||(Du={}));var O=le.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),an=o(t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}},"getParsedType");var N=le.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Tk=o(t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),"quotelessJson"),ct=class t extends Error{static{o(this,"ZodError")}get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(i){return i.message},r={_errors:[]},s=o(i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)r._errors.push(n(a));else{let c=r,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(c[d]=c[d]||{_errors:[]},c[d]._errors.push(n(a))):c[d]=c[d]||{_errors:[]},c=c[d],l++}}},"processError");return s(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,le.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];n[i]=n[i]||[],n[i].push(e(s))}else r.push(e(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};ct.create=t=>new ct(t);var Nk=o((t,e)=>{let n;switch(t.code){case N.invalid_type:t.received===O.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case N.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,le.jsonStringifyReplacer)}`;break;case N.unrecognized_keys:n=`Unrecognized key(s) in object: ${le.joinValues(t.keys,", ")}`;break;case N.invalid_union:n="Invalid input";break;case N.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${le.joinValues(t.options)}`;break;case N.invalid_enum_value:n=`Invalid enum value. Expected ${le.joinValues(t.options)}, received '${t.received}'`;break;case N.invalid_arguments:n="Invalid function arguments";break;case N.invalid_return_type:n="Invalid function return type";break;case N.invalid_date:n="Invalid date";break;case N.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:le.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case N.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case N.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case N.custom:n="Invalid input";break;case N.invalid_intersection_types:n="Intersection results could not be merged";break;case N.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case N.not_finite:n="Number must be finite";break;default:n=e.defaultError,le.assertNever(t)}return{message:n}},"errorMap"),bn=Nk;var _p=bn;function Fk(t){_p=t}o(Fk,"setErrorMap");function Ds(){return _p}o(Ds,"getErrorMap");var io=o(t=>{let{data:e,path:n,errorMaps:r,issueData:s}=t,i=[...n,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let c="",l=r.filter(d=>!!d).slice().reverse();for(let d of l)c=d(a,{data:e,defaultError:c}).message;return{...s,path:i,message:c}},"makeIssue"),Uk=[];function _(t,e){let n=Ds(),r=io({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===bn?void 0:bn].filter(s=>!!s)});t.common.issues.push(r)}o(_,"addIssueToContext");var Ve=class t{static{o(this,"ParseStatus")}constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let s of n){if(s.status==="aborted")return Z;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let s of n){let i=await s.key,a=await s.value;r.push({key:i,value:a})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let s of n){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return Z;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(r[i.value]=a.value)}return{status:e.value,value:r}}},Z=Object.freeze({status:"aborted"}),vr=o(t=>({status:"dirty",value:t}),"DIRTY"),We=o(t=>({status:"valid",value:t}),"OK"),qa=o(t=>t.status==="aborted","isAborted"),ja=o(t=>t.status==="dirty","isDirty"),Zn=o(t=>t.status==="valid","isValid"),Ts=o(t=>typeof Promise<"u"&&t instanceof Promise,"isAsync");var H;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(H||(H={}));var Ft=class{static{o(this,"ParseInputLazyPath")}constructor(e,n,r,s){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Pp=o((t,e)=>{if(Zn(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new ct(t.common.issues);return this._error=n,this._error}}},"handleResult");function ie(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:s}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:o((a,c)=>{let{message:l}=t;return a.code==="invalid_enum_value"?{message:l??c.defaultError}:typeof c.data>"u"?{message:l??r??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:l??n??c.defaultError}},"customMap"),description:s}}o(ie,"processCreateParams");var Ae=class{static{o(this,"ZodType")}get description(){return this._def.description}_getType(e){return an(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:an(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ve,ctx:{common:e.parent.common,data:e.data,parsedType:an(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(Ts(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:an(e)},s=this._parseSync({data:e,path:r.path,parent:r});return Pp(r,s)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:an(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return Zn(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>Zn(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:an(e)},s=this._parse({data:e,path:r.path,parent:r}),i=await(Ts(s)?s:Promise.resolve(s));return Pp(r,i)}refine(e,n){let r=o(s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n,"getIssueProperties");return this._refinement((s,i)=>{let a=e(s),c=o(()=>i.addIssue({code:N.custom,...r(s)}),"setError");return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(e,n){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(e){return new Ut({schema:this,typeName:ee.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:o(n=>this["~validate"](n),"validate")}}optional(){return Nt.create(this,this._def)}nullable(){return cn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Sn.create(this)}promise(){return er.create(this,this._def)}or(e){return Mr.create([this,e],this._def)}and(e){return Lr.create(this,e,this._def)}transform(e){return new Ut({...ie(this._def),schema:this,typeName:ee.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new $r({...ie(this._def),innerType:this,defaultValue:n,typeName:ee.ZodDefault})}brand(){return new oo({typeName:ee.ZodBranded,type:this,...ie(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new Yr({...ie(this._def),innerType:this,catchValue:n,typeName:ee.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return ao.create(this,e)}readonly(){return Hr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Mk=/^c[^\s-]{8,}$/i,Lk=/^[0-9a-z]+$/,_k=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Pk=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Ok=/^[a-z0-9_-]{21}$/i,Gk=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,$k=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Yk=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Hk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Tu,Vk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Jk=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,qk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,jk=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Wk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,zk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Gp="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Zk=new RegExp(`^${Gp}$`);function $p(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}o($p,"timeRegexSource");function Kk(t){return new RegExp(`^${$p(t)}$`)}o(Kk,"timeRegex");function Yp(t){let e=`${Gp}T${$p(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}o(Yp,"datetimeRegex");function Xk(t,e){return!!((e==="v4"||!e)&&Vk.test(t)||(e==="v6"||!e)&&qk.test(t))}o(Xk,"isValidIP");function eS(t,e){if(!Gk.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}o(eS,"isValidJWT");function tS(t,e){return!!((e==="v4"||!e)&&Jk.test(t)||(e==="v6"||!e)&&jk.test(t))}o(tS,"isValidCidr");var Kn=class t extends Ae{static{o(this,"ZodString")}_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let i=this._getOrReturnCtx(e);return _(i,{code:N.invalid_type,expected:O.string,received:i.parsedType}),Z}let r=new Ve,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),_(s,{code:N.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),_(s,{code:N.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,c=e.data.length<i.value;(a||c)&&(s=this._getOrReturnCtx(e,s),a?_(s,{code:N.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):c&&_(s,{code:N.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")Yk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"email",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")Tu||(Tu=new RegExp(Hk,"u")),Tu.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"emoji",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")Pk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"uuid",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="nanoid")Ok.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"nanoid",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")Mk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"cuid",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")Lk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"cuid2",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")_k.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"ulid",code:N.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),_(s,{validation:"url",code:N.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"regex",code:N.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?Yp(i).test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?Zk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?Kk(i).test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?$k.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"duration",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?Xk(e.data,i.version)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"ip",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="jwt"?eS(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"jwt",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="cidr"?tS(e.data,i.version)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"cidr",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?Wk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"base64",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="base64url"?zk.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"base64url",code:N.invalid_string,message:i.message}),r.dirty()):le.assertNever(i);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(s=>e.test(s),{validation:n,code:N.invalid_string,...H.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...H.errToObj(e)})}url(e){return this._addCheck({kind:"url",...H.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...H.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...H.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...H.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...H.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...H.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...H.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...H.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...H.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...H.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...H.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...H.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...H.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...H.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...H.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...H.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...H.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...H.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...H.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...H.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...H.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...H.errToObj(n)})}nonempty(e){return this.min(1,H.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Kn.create=t=>new Kn({checks:[],typeName:ee.ZodString,coerce:t?.coerce??!1,...ie(t)});function nS(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=n>r?n:r,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}o(nS,"floatSafeRemainder");var xr=class t extends Ae{static{o(this,"ZodNumber")}constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==O.number){let i=this._getOrReturnCtx(e);return _(i,{code:N.invalid_type,expected:O.number,received:i.parsedType}),Z}let r,s=new Ve;for(let i of this._def.checks)i.kind==="int"?le.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{code:N.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?nS(e.data,i.value)!==0&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),_(r,{code:N.not_finite,message:i.message}),s.dirty()):le.assertNever(i);return{status:s.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,H.toString(n))}gt(e,n){return this.setLimit("min",e,!1,H.toString(n))}lte(e,n){return this.setLimit("max",e,!0,H.toString(n))}lt(e,n){return this.setLimit("max",e,!1,H.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:H.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:H.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:H.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:H.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:H.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:H.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:H.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:H.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:H.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:H.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&le.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};xr.create=t=>new xr({checks:[],typeName:ee.ZodNumber,coerce:t?.coerce||!1,...ie(t)});var Dr=class t extends Ae{static{o(this,"ZodBigInt")}constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let r,s=new Ve;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),_(r,{code:N.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):le.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return _(n,{code:N.invalid_type,expected:O.bigint,received:n.parsedType}),Z}gte(e,n){return this.setLimit("min",e,!0,H.toString(n))}gt(e,n){return this.setLimit("min",e,!1,H.toString(n))}lte(e,n){return this.setLimit("max",e,!0,H.toString(n))}lt(e,n){return this.setLimit("max",e,!1,H.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:H.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:H.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:H.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:H.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:H.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:H.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Dr.create=t=>new Dr({checks:[],typeName:ee.ZodBigInt,coerce:t?.coerce??!1,...ie(t)});var Tr=class extends Ae{static{o(this,"ZodBoolean")}_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.boolean,received:r.parsedType}),Z}return We(e.data)}};Tr.create=t=>new Tr({typeName:ee.ZodBoolean,coerce:t?.coerce||!1,...ie(t)});var Nr=class t extends Ae{static{o(this,"ZodDate")}_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let i=this._getOrReturnCtx(e);return _(i,{code:N.invalid_type,expected:O.date,received:i.parsedType}),Z}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return _(i,{code:N.invalid_date}),Z}let r=new Ve,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),_(s,{code:N.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),_(s,{code:N.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):le.assertNever(i);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:H.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:H.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};Nr.create=t=>new Nr({checks:[],coerce:t?.coerce||!1,typeName:ee.ZodDate,...ie(t)});var Fs=class extends Ae{static{o(this,"ZodSymbol")}_parse(e){if(this._getType(e)!==O.symbol){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.symbol,received:r.parsedType}),Z}return We(e.data)}};Fs.create=t=>new Fs({typeName:ee.ZodSymbol,...ie(t)});var Fr=class extends Ae{static{o(this,"ZodUndefined")}_parse(e){if(this._getType(e)!==O.undefined){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.undefined,received:r.parsedType}),Z}return We(e.data)}};Fr.create=t=>new Fr({typeName:ee.ZodUndefined,...ie(t)});var Ur=class extends Ae{static{o(this,"ZodNull")}_parse(e){if(this._getType(e)!==O.null){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.null,received:r.parsedType}),Z}return We(e.data)}};Ur.create=t=>new Ur({typeName:ee.ZodNull,...ie(t)});var Xn=class extends Ae{static{o(this,"ZodAny")}constructor(){super(...arguments),this._any=!0}_parse(e){return We(e.data)}};Xn.create=t=>new Xn({typeName:ee.ZodAny,...ie(t)});var kn=class extends Ae{static{o(this,"ZodUnknown")}constructor(){super(...arguments),this._unknown=!0}_parse(e){return We(e.data)}};kn.create=t=>new kn({typeName:ee.ZodUnknown,...ie(t)});var Vt=class extends Ae{static{o(this,"ZodNever")}_parse(e){let n=this._getOrReturnCtx(e);return _(n,{code:N.invalid_type,expected:O.never,received:n.parsedType}),Z}};Vt.create=t=>new Vt({typeName:ee.ZodNever,...ie(t)});var Us=class extends Ae{static{o(this,"ZodVoid")}_parse(e){if(this._getType(e)!==O.undefined){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.void,received:r.parsedType}),Z}return We(e.data)}};Us.create=t=>new Us({typeName:ee.ZodVoid,...ie(t)});var Sn=class t extends Ae{static{o(this,"ZodArray")}_parse(e){let{ctx:n,status:r}=this._processInputParams(e),s=this._def;if(n.parsedType!==O.array)return _(n,{code:N.invalid_type,expected:O.array,received:n.parsedType}),Z;if(s.exactLength!==null){let a=n.data.length>s.exactLength.value,c=n.data.length<s.exactLength.value;(a||c)&&(_(n,{code:a?N.too_big:N.too_small,minimum:c?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(_(n,{code:N.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(_(n,{code:N.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((a,c)=>s.type._parseAsync(new Ft(n,a,n.path,c)))).then(a=>Ve.mergeArray(r,a));let i=[...n.data].map((a,c)=>s.type._parseSync(new Ft(n,a,n.path,c)));return Ve.mergeArray(r,i)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:H.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:H.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:H.toString(n)}})}nonempty(e){return this.min(1,e)}};Sn.create=(t,e)=>new Sn({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ee.ZodArray,...ie(e)});function Ns(t){if(t instanceof ut){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=Nt.create(Ns(r))}return new ut({...t._def,shape:o(()=>e,"shape")})}else return t instanceof Sn?new Sn({...t._def,type:Ns(t.element)}):t instanceof Nt?Nt.create(Ns(t.unwrap())):t instanceof cn?cn.create(Ns(t.unwrap())):t instanceof An?An.create(t.items.map(e=>Ns(e))):t}o(Ns,"deepPartialify");var ut=class t extends Ae{static{o(this,"ZodObject")}constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=le.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==O.object){let d=this._getOrReturnCtx(e);return _(d,{code:N.invalid_type,expected:O.object,received:d.parsedType}),Z}let{status:r,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof Vt&&this._def.unknownKeys==="strip"))for(let d in s.data)a.includes(d)||c.push(d);let l=[];for(let d of a){let g=i[d],h=s.data[d];l.push({key:{status:"valid",value:d},value:g._parse(new Ft(s,h,s.path,d)),alwaysSet:d in s.data})}if(this._def.catchall instanceof Vt){let d=this._def.unknownKeys;if(d==="passthrough")for(let g of c)l.push({key:{status:"valid",value:g},value:{status:"valid",value:s.data[g]}});else if(d==="strict")c.length>0&&(_(s,{code:N.unrecognized_keys,keys:c}),r.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let d=this._def.catchall;for(let g of c){let h=s.data[g];l.push({key:{status:"valid",value:g},value:d._parse(new Ft(s,h,s.path,g)),alwaysSet:g in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let d=[];for(let g of l){let h=await g.key,f=await g.value;d.push({key:h,value:f,alwaysSet:g.alwaysSet})}return d}).then(d=>Ve.mergeObjectSync(r,d)):Ve.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(e){return H.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:o((n,r)=>{let s=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:H.errToObj(e).message??s}:{message:s}},"errorMap")}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:o(()=>({...this._def.shape(),...e}),"shape")})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:o(()=>({...this._def.shape(),...e._def.shape()}),"shape"),typeName:ee.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of le.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:o(()=>n,"shape")})}omit(e){let n={};for(let r of le.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:o(()=>n,"shape")})}deepPartial(){return Ns(this)}partial(e){let n={};for(let r of le.objectKeys(this.shape)){let s=this.shape[r];e&&!e[r]?n[r]=s:n[r]=s.optional()}return new t({...this._def,shape:o(()=>n,"shape")})}required(e){let n={};for(let r of le.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof Nt;)i=i._def.innerType;n[r]=i}return new t({...this._def,shape:o(()=>n,"shape")})}keyof(){return Hp(le.objectKeys(this.shape))}};ut.create=(t,e)=>new ut({shape:o(()=>t,"shape"),unknownKeys:"strip",catchall:Vt.create(),typeName:ee.ZodObject,...ie(e)});ut.strictCreate=(t,e)=>new ut({shape:o(()=>t,"shape"),unknownKeys:"strict",catchall:Vt.create(),typeName:ee.ZodObject,...ie(e)});ut.lazycreate=(t,e)=>new ut({shape:t,unknownKeys:"strip",catchall:Vt.create(),typeName:ee.ZodObject,...ie(e)});var Mr=class extends Ae{static{o(this,"ZodUnion")}_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function s(i){for(let c of i)if(c.result.status==="valid")return c.result;for(let c of i)if(c.result.status==="dirty")return n.common.issues.push(...c.ctx.common.issues),c.result;let a=i.map(c=>new ct(c.ctx.common.issues));return _(n,{code:N.invalid_union,unionErrors:a}),Z}if(o(s,"handleResults"),n.common.async)return Promise.all(r.map(async i=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(s);{let i,a=[];for(let l of r){let d={...n,common:{...n.common,issues:[]},parent:null},g=l._parseSync({data:n.data,path:n.path,parent:d});if(g.status==="valid")return g;g.status==="dirty"&&!i&&(i={result:g,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;let c=a.map(l=>new ct(l));return _(n,{code:N.invalid_union,unionErrors:c}),Z}}get options(){return this._def.options}};Mr.create=(t,e)=>new Mr({options:t,typeName:ee.ZodUnion,...ie(e)});var Rn=o(t=>t instanceof _r?Rn(t.schema):t instanceof Ut?Rn(t.innerType()):t instanceof Pr?[t.value]:t instanceof Or?t.options:t instanceof Gr?le.objectValues(t.enum):t instanceof $r?Rn(t._def.innerType):t instanceof Fr?[void 0]:t instanceof Ur?[null]:t instanceof Nt?[void 0,...Rn(t.unwrap())]:t instanceof cn?[null,...Rn(t.unwrap())]:t instanceof oo||t instanceof Hr?Rn(t.unwrap()):t instanceof Yr?Rn(t._def.innerType):[],"getDiscriminator"),Wa=class t extends Ae{static{o(this,"ZodDiscriminatedUnion")}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==O.object)return _(n,{code:N.invalid_type,expected:O.object,received:n.parsedType}),Z;let r=this.discriminator,s=n.data[r],i=this.optionsMap.get(s);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(_(n,{code:N.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),Z)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let s=new Map;for(let i of n){let a=Rn(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let c of a){if(s.has(c))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(c)}`);s.set(c,i)}}return new t({typeName:ee.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:s,...ie(r)})}};function Nu(t,e){let n=an(t),r=an(e);if(t===e)return{valid:!0,data:t};if(n===O.object&&r===O.object){let s=le.objectKeys(e),i=le.objectKeys(t).filter(c=>s.indexOf(c)!==-1),a={...t,...e};for(let c of i){let l=Nu(t[c],e[c]);if(!l.valid)return{valid:!1};a[c]=l.data}return{valid:!0,data:a}}else if(n===O.array&&r===O.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let a=t[i],c=e[i],l=Nu(a,c);if(!l.valid)return{valid:!1};s.push(l.data)}return{valid:!0,data:s}}else return n===O.date&&r===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}o(Nu,"mergeValues");var Lr=class extends Ae{static{o(this,"ZodIntersection")}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=o((i,a)=>{if(qa(i)||qa(a))return Z;let c=Nu(i.value,a.value);return c.valid?((ja(i)||ja(a))&&n.dirty(),{status:n.value,value:c.data}):(_(r,{code:N.invalid_intersection_types}),Z)},"handleParsed");return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};Lr.create=(t,e,n)=>new Lr({left:t,right:e,typeName:ee.ZodIntersection,...ie(n)});var An=class t extends Ae{static{o(this,"ZodTuple")}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==O.array)return _(r,{code:N.invalid_type,expected:O.array,received:r.parsedType}),Z;if(r.data.length<this._def.items.length)return _(r,{code:N.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z;!this._def.rest&&r.data.length>this._def.items.length&&(_(r,{code:N.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let i=[...r.data].map((a,c)=>{let l=this._def.items[c]||this._def.rest;return l?l._parse(new Ft(r,a,r.path,c)):null}).filter(a=>!!a);return r.common.async?Promise.all(i).then(a=>Ve.mergeArray(n,a)):Ve.mergeArray(n,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};An.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new An({items:t,typeName:ee.ZodTuple,rest:null,...ie(e)})};var za=class t extends Ae{static{o(this,"ZodRecord")}get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return _(r,{code:N.invalid_type,expected:O.object,received:r.parsedType}),Z;let s=[],i=this._def.keyType,a=this._def.valueType;for(let c in r.data)s.push({key:i._parse(new Ft(r,c,r.path,c)),value:a._parse(new Ft(r,r.data[c],r.path,c)),alwaysSet:c in r.data});return r.common.async?Ve.mergeObjectAsync(n,s):Ve.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof Ae?new t({keyType:e,valueType:n,typeName:ee.ZodRecord,...ie(r)}):new t({keyType:Kn.create(),valueType:e,typeName:ee.ZodRecord,...ie(n)})}},Ms=class extends Ae{static{o(this,"ZodMap")}get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==O.map)return _(r,{code:N.invalid_type,expected:O.map,received:r.parsedType}),Z;let s=this._def.keyType,i=this._def.valueType,a=[...r.data.entries()].map(([c,l],d)=>({key:s._parse(new Ft(r,c,r.path,[d,"key"])),value:i._parse(new Ft(r,l,r.path,[d,"value"]))}));if(r.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let l of a){let d=await l.key,g=await l.value;if(d.status==="aborted"||g.status==="aborted")return Z;(d.status==="dirty"||g.status==="dirty")&&n.dirty(),c.set(d.value,g.value)}return{status:n.value,value:c}})}else{let c=new Map;for(let l of a){let d=l.key,g=l.value;if(d.status==="aborted"||g.status==="aborted")return Z;(d.status==="dirty"||g.status==="dirty")&&n.dirty(),c.set(d.value,g.value)}return{status:n.value,value:c}}}};Ms.create=(t,e,n)=>new Ms({valueType:e,keyType:t,typeName:ee.ZodMap,...ie(n)});var Ls=class t extends Ae{static{o(this,"ZodSet")}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==O.set)return _(r,{code:N.invalid_type,expected:O.set,received:r.parsedType}),Z;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(_(r,{code:N.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(_(r,{code:N.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());let i=this._def.valueType;function a(l){let d=new Set;for(let g of l){if(g.status==="aborted")return Z;g.status==="dirty"&&n.dirty(),d.add(g.value)}return{status:n.value,value:d}}o(a,"finalizeSet");let c=[...r.data.values()].map((l,d)=>i._parse(new Ft(r,l,r.path,d)));return r.common.async?Promise.all(c).then(l=>a(l)):a(c)}min(e,n){return new t({...this._def,minSize:{value:e,message:H.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:H.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};Ls.create=(t,e)=>new Ls({valueType:t,minSize:null,maxSize:null,typeName:ee.ZodSet,...ie(e)});var Za=class t extends Ae{static{o(this,"ZodFunction")}constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==O.function)return _(n,{code:N.invalid_type,expected:O.function,received:n.parsedType}),Z;function r(c,l){return io({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ds(),bn].filter(d=>!!d),issueData:{code:N.invalid_arguments,argumentsError:l}})}o(r,"makeArgsIssue");function s(c,l){return io({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Ds(),bn].filter(d=>!!d),issueData:{code:N.invalid_return_type,returnTypeError:l}})}o(s,"makeReturnsIssue");let i={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof er){let c=this;return We(async function(...l){let d=new ct([]),g=await c._def.args.parseAsync(l,i).catch(m=>{throw d.addIssue(r(l,m)),d}),h=await Reflect.apply(a,this,g);return await c._def.returns._def.type.parseAsync(h,i).catch(m=>{throw d.addIssue(s(h,m)),d})})}else{let c=this;return We(function(...l){let d=c._def.args.safeParse(l,i);if(!d.success)throw new ct([r(l,d.error)]);let g=Reflect.apply(a,this,d.data),h=c._def.returns.safeParse(g,i);if(!h.success)throw new ct([s(g,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:An.create(e).rest(kn.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||An.create([]).rest(kn.create()),returns:n||kn.create(),typeName:ee.ZodFunction,...ie(r)})}},_r=class extends Ae{static{o(this,"ZodLazy")}get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};_r.create=(t,e)=>new _r({getter:t,typeName:ee.ZodLazy,...ie(e)});var Pr=class extends Ae{static{o(this,"ZodLiteral")}_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return _(n,{received:n.data,code:N.invalid_literal,expected:this._def.value}),Z}return{status:"valid",value:e.data}}get value(){return this._def.value}};Pr.create=(t,e)=>new Pr({value:t,typeName:ee.ZodLiteral,...ie(e)});function Hp(t,e){return new Or({values:t,typeName:ee.ZodEnum,...ie(e)})}o(Hp,"createZodEnum");var Or=class t extends Ae{static{o(this,"ZodEnum")}_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return _(n,{expected:le.joinValues(r),received:n.parsedType,code:N.invalid_type}),Z}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return _(n,{received:n.data,code:N.invalid_enum_value,options:r}),Z}return We(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};Or.create=Hp;var Gr=class extends Ae{static{o(this,"ZodNativeEnum")}_parse(e){let n=le.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==O.string&&r.parsedType!==O.number){let s=le.objectValues(n);return _(r,{expected:le.joinValues(s),received:r.parsedType,code:N.invalid_type}),Z}if(this._cache||(this._cache=new Set(le.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=le.objectValues(n);return _(r,{received:r.data,code:N.invalid_enum_value,options:s}),Z}return We(e.data)}get enum(){return this._def.values}};Gr.create=(t,e)=>new Gr({values:t,typeName:ee.ZodNativeEnum,...ie(e)});var er=class extends Ae{static{o(this,"ZodPromise")}unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==O.promise&&n.common.async===!1)return _(n,{code:N.invalid_type,expected:O.promise,received:n.parsedType}),Z;let r=n.parsedType===O.promise?n.data:Promise.resolve(n.data);return We(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};er.create=(t,e)=>new er({type:t,typeName:ee.ZodPromise,...ie(e)});var Ut=class extends Ae{static{o(this,"ZodEffects")}innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ee.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:o(a=>{_(r,a),a.fatal?n.abort():n.dirty()},"addIssue"),get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(r.data,i);if(r.common.async)return Promise.resolve(a).then(async c=>{if(n.value==="aborted")return Z;let l=await this._def.schema._parseAsync({data:c,path:r.path,parent:r});return l.status==="aborted"?Z:l.status==="dirty"?vr(l.value):n.value==="dirty"?vr(l.value):l});{if(n.value==="aborted")return Z;let c=this._def.schema._parseSync({data:a,path:r.path,parent:r});return c.status==="aborted"?Z:c.status==="dirty"?vr(c.value):n.value==="dirty"?vr(c.value):c}}if(s.type==="refinement"){let a=o(c=>{let l=s.refinement(c,i);if(r.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c},"executeRefinement");if(r.common.async===!1){let c=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return c.status==="aborted"?Z:(c.status==="dirty"&&n.dirty(),a(c.value),{status:n.value,value:c.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(c=>c.status==="aborted"?Z:(c.status==="dirty"&&n.dirty(),a(c.value).then(()=>({status:n.value,value:c.value}))))}if(s.type==="transform")if(r.common.async===!1){let a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Zn(a))return Z;let c=s.transform(a.value,i);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:c}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>Zn(a)?Promise.resolve(s.transform(a.value,i)).then(c=>({status:n.value,value:c})):Z);le.assertNever(s)}};Ut.create=(t,e,n)=>new Ut({schema:t,typeName:ee.ZodEffects,effect:e,...ie(n)});Ut.createWithPreprocess=(t,e,n)=>new Ut({schema:e,effect:{type:"preprocess",transform:t},typeName:ee.ZodEffects,...ie(n)});var Nt=class extends Ae{static{o(this,"ZodOptional")}_parse(e){return this._getType(e)===O.undefined?We(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Nt.create=(t,e)=>new Nt({innerType:t,typeName:ee.ZodOptional,...ie(e)});var cn=class extends Ae{static{o(this,"ZodNullable")}_parse(e){return this._getType(e)===O.null?We(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};cn.create=(t,e)=>new cn({innerType:t,typeName:ee.ZodNullable,...ie(e)});var $r=class extends Ae{static{o(this,"ZodDefault")}_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===O.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};$r.create=(t,e)=>new $r({innerType:t,typeName:ee.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ie(e)});var Yr=class extends Ae{static{o(this,"ZodCatch")}_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Ts(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new ct(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ct(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};Yr.create=(t,e)=>new Yr({innerType:t,typeName:ee.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ie(e)});var _s=class extends Ae{static{o(this,"ZodNaN")}_parse(e){if(this._getType(e)!==O.nan){let r=this._getOrReturnCtx(e);return _(r,{code:N.invalid_type,expected:O.nan,received:r.parsedType}),Z}return{status:"valid",value:e.data}}};_s.create=t=>new _s({typeName:ee.ZodNaN,...ie(t)});var rS=Symbol("zod_brand"),oo=class extends Ae{static{o(this,"ZodBranded")}_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},ao=class t extends Ae{static{o(this,"ZodPipeline")}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return o(async()=>{let i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?Z:i.status==="dirty"?(n.dirty(),vr(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})},"handleAsync")();{let s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?Z:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:ee.ZodPipeline})}},Hr=class extends Ae{static{o(this,"ZodReadonly")}_parse(e){let n=this._def.innerType._parse(e),r=o(s=>(Zn(s)&&(s.value=Object.freeze(s.value)),s),"freeze");return Ts(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};Hr.create=(t,e)=>new Hr({innerType:t,typeName:ee.ZodReadonly,...ie(e)});function Op(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}o(Op,"cleanParams");function Vp(t,e={},n){return t?Xn.create().superRefine((r,s)=>{let i=t(r);if(i instanceof Promise)return i.then(a=>{if(!a){let c=Op(e,r),l=c.fatal??n??!0;s.addIssue({code:"custom",...c,fatal:l})}});if(!i){let a=Op(e,r),c=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:c})}}):Xn.create()}o(Vp,"custom");var sS={object:ut.lazycreate},ee;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ee||(ee={}));var iS=o((t,e={message:`Input not instance of ${t.name}`})=>Vp(n=>n instanceof t,e),"instanceOfType"),Jp=Kn.create,qp=xr.create,oS=_s.create,aS=Dr.create,jp=Tr.create,AS=Nr.create,cS=Fs.create,uS=Fr.create,lS=Ur.create,dS=Xn.create,gS=kn.create,hS=Vt.create,pS=Us.create,fS=Sn.create,mS=ut.create,ES=ut.strictCreate,CS=Mr.create,IS=Wa.create,yS=Lr.create,QS=An.create,BS=za.create,wS=Ms.create,bS=Ls.create,RS=Za.create,kS=_r.create,SS=Pr.create,vS=Or.create,xS=Gr.create,DS=er.create,TS=Ut.create,NS=Nt.create,FS=cn.create,US=Ut.createWithPreprocess,MS=ao.create,LS=o(()=>Jp().optional(),"ostring"),_S=o(()=>qp().optional(),"onumber"),PS=o(()=>jp().optional(),"oboolean"),OS={string:o((t=>Kn.create({...t,coerce:!0})),"string"),number:o((t=>xr.create({...t,coerce:!0})),"number"),boolean:o((t=>Tr.create({...t,coerce:!0})),"boolean"),bigint:o((t=>Dr.create({...t,coerce:!0})),"bigint"),date:o((t=>Nr.create({...t,coerce:!0})),"date")};var GS=Z;var hf=require("node:crypto");var Vr=(i=>(i.NotFound="not_found",i.NoAccess="no_access",i.Unavailable="unavailable",i.AccessLost="access_lost",i.CannotOpen="cannot_open",i))(Vr||{});var Fu=o(t=>`${t.source}:${t.site??""}:${t.key}`,"requirementItemId");var Ka=/^pasted-[0-9a-f]{16}$/,Ao=/^file-[0-9a-f]{16}$/,co=(s=>(s.Pdf="application/pdf",s.Csv="text/csv",s.Docx="application/vnd.openxmlformats-officedocument.wordprocessingml.document",s.Xlsx="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",s))(co||{});var uo=(n=>(n.Sufficient="sufficient",n.Insufficient="insufficient",n))(uo||{}),lo=(f=>(f.RelatedChangeConflict="related_change_conflict",f.ReferenceOutsideTarget="reference_outside_target",f.SourceAccessLost="source_access_lost",f.ConfigurationIncomplete="configuration_incomplete",f.CredentialUnavailable="credential_unavailable",f.WorkflowBindingUnverified="workflow_binding_unverified",f.WorkflowRefUnprotected="workflow_ref_unprotected",f.BedrockWorkflowRequired="bedrock_workflow_required",f.DeploymentReview="deployment_review",f.SutRevisionMismatch="sut_revision_mismatch",f.IsolationUnavailable="isolation_unavailable",f.EvidenceInsufficient="evidence_insufficient",f))(lo||{}),tr=(i=>(i.CiCheck="ci_check",i.TestReport="test_report",i.StaticAnalysis="static_analysis",i.CodeReview="code_review",i.Other="other",i))(tr||{}),Uu=(r=>(r.Application="application",r.Environment="environment",r.TestDefect="test_defect",r))(Uu||{}),Mu=(c=>(c.AuthToken="auth_token",c.Secret="secret",c.DataConnection="data_connection",c.AppNotStarted="app_not_started",c.Login="login",c.ExternalDependency="external_dependency",c.RecordingReplay="recording_replay",c))(Mu||{});var Xa=(n=>(n.Probe="probe",n.Agent="agent",n))(Xa||{}),eA=(r=>(r.Seed="seed",r.RuntimeMock="runtime_mock",r.EnvOverride="env_override",r))(eA||{}),tA=(r=>(r.TestCode="test_code",r.SkyrampMocker="skyramp_mocker",r.RecipeOverride="recipe_override",r))(tA||{});var Lu=(n=>(n.Ready="ready",n.Blocked="blocked",n))(Lu||{}),Ne=A.string().trim().min(1),$S=A.object({action:A.enum(["start","run","wait"]),text:Ne,source:A.enum(["file","notes","testbot"]).describe("file: a file in the repository; notes: the Target's notes; testbot: Testbot's own finding"),file:Ne.nullable().describe("the file the step came from, relative to the component's repository; null unless source is file")}).strict().refine(t=>t.source==="file"==(t.file!==null),{path:["file"],message:"a file exactly when the step came from one"}),YS=/^[A-Za-z_][A-Za-z0-9_]*$/,go=/^(?!GITHUB_)(?!SKYRAMP_RUNNER_)[A-Z][A-Z0-9_]{0,99}$/,Ps=(a=>(a.VersionEndpoint="version_endpoint",a.DeployWorkflow="deploy_workflow",a.KubernetesLabels="kubernetes_labels",a.Command="command",a.Api="api",a.NotTracked="not_tracked",a))(Ps||{}),un="shared",HS=Ne.refine(t=>{try{let e=new URL(t);return["http:","https:"].includes(e.protocol)&&!e.username&&!e.password}catch{return!1}},"an http(s) URL with no login in it"),Os=A.object({address:HS,readyWhen:Ne.nullable(),credentials:A.array(A.string().regex(go)).max(50),revisionSources:A.array(A.object({method:A.nativeEnum(Ps),detail:Ne.describe("what Testbot reads, such as GET /version or the deploy workflow's name; for not_tracked, why nothing shows it"),components:A.array(Ne).min(1).describe("the components it tells the revision of, by name")}).strict()).max(50)}).strict(),_u={steps:A.array($S).max(20).optional().describe("how it starts, in order"),kind:A.enum(["web_app","service","database","external_service"]).optional(),from:A.object({file:Ne,service:Ne.nullable()}).strict().optional(),credentials:A.array(A.string().max(100).regex(YS)).max(50).optional().describe("the Target's credentials this component's recipe uses: a sign-in (a test user, password or token) or an API key, which the workflow supplies from a GitHub Actions secret as the environment variable of the credential's name; give each name exactly as the recipe reads it. Names only, never a value, and not a secret the recipe generates itself")},VS=A.object({name:Ne,repository:Ne.describe("owner/repo of the Target repository the component is built or started from, such as the one whose compose file starts its database"),healthy:A.boolean(),..._u,deployed:Ne.nullable().optional().describe('only with "environment": the revision the component runs, as you read it from its revision source, or null when you could not tell')}),JS=A.object({component:Ne,problem:Ne,evidence:Ne.describe("the exact command and output that shows it"),fix:Ne.describe("what the user must provide, and where")}),qS=A.object({framework:Ne,file:Ne.describe("the test file run, relative to its repository root"),result:A.enum(["pass","fail","error"])}),jS=A.object({input:Ne.describe("the part of the user's SUT input, as given"),reason:Ne}),Z2=A.object({schemaVersion:A.literal(1),status:A.nativeEnum(Lu).describe("ready only if every component came up healthy and the recipe is written"),components:A.array(VS),suites:A.array(qS).default([]).describe("one run per test suite the Target's repositories have; empty when they have none"),inputsUsed:A.array(Ne).default([]).describe("the parts of the user's SUT input the recipe used as given"),inputsUsedHow:A.array(A.object({input:Ne.describe("exactly as written in inputsUsed; an entry that is not there is left out"),how:Ne.describe("what the recipe did with it")})).optional(),inputsNotUsed:A.array(jS).default([]).describe("the parts it did not use, and why. A part that is wrong goes here, with what was wrong, even when the recipe does something like it instead: one that names a file, command, port, route or setting that does not exist or does not work (SKYR-5265)"),blockers:A.array(JS).describe("required (non-empty) when status is blocked"),environment:Os.optional().describe("only when the whole SUT is an existing deployment you tested where it runs, building and starting nothing: its address, what says it is ready, the credentials that reach it, and how to read what each component runs. Leave it out when any part was built or started on the runner, or reaching it needed something there (a tunnel, port-forward, proxy or client certificate)")});var Pu=64*1024,Ou=512*1024,Wp=/[\u0000-\u0008\u000b\u000e-\u001f\u007f]|[\ud800-\udbff](?![\udc00-\udfff])|(?<![\ud800-\udbff])[\udc00-\udfff]/;var Zp=He(require("path"));var rr=(s=>(s.Clean="clean",s.RecipeDrift="recipe-drift",s.ChangeBrokeBringup="change-broke-bringup",s.BringupFailed="bringup-failed",s))(rr||{}),nr=A.string().trim().min(1),WS=A.object({url:A.string().optional().describe("the URL probed, if the check is an HTTP request"),command:A.string().optional().describe("the command run, if the check is a script \u2014 preferred when auth is needed"),headers:A.record(A.string()).optional(),status:A.union([A.number(),A.string()]).optional().describe("expected HTTP status for a url check (default 200)"),output:nr.describe("what the check returned, VERBATIM \u2014 the bytes, nothing appended; this gate RE-RUNS the check")}),Gu=A.array(A.object({component:nr.describe("a shared component listed above"),url:nr.describe("the URL on the component's own origin (scheme, host and port) that answers with its deployed commit"),output:nr.describe("what the URL returned, VERBATIM; this gate FETCHES each url")})).describe("only when shared components are listed above: one check per component whose deployed commit you found"),zp=A.object({schemaVersion:A.literal(1),baseUrls:A.record(A.string()).optional().describe("service \u2192 base URL of the running app; omit on a failed bring-up, never invent one"),health:WS.optional(),teardown:nr.describe("command that tears the SUT down"),dependencies:A.record(A.boolean()).optional().describe("EVERY backing service: true = really deployed, false = mocked; REQUIRED when the app came up"),outcome:A.nativeEnum(rr).describe("clean | recipe-drift (you corrected the recipe) | change-broke-bringup (the PR broke it) | bringup-failed (environment, not the PR)"),recipeFixes:A.array(A.string()).optional().describe("required when outcome is recipe-drift: what was corrected"),bringupError:A.object({command:nr,output:nr}).optional().describe("required when bring-up failed: the exact failing command and what it printed"),suspectFiles:A.array(A.string()).optional().describe("required for change-broke-bringup: files THIS PR changed that the failure points at, relative to your working directory (a file in another checkout of the run: its absolute path)"),seeded:A.boolean(),startedAt:nr.describe("ISO timestamp"),revisions:Gu.optional()});var ze=A.string().trim().min(1),$u=(n=>(n.TestbotManaged="testbot_managed",n.CustomerDeployed="customer_deployed",n))($u||{}),Yu=[".skyramp/sut/setup.sh",".skyramp/sut/teardown.sh"],Kp=A.object({schemaVersion:A.literal(1),type:A.nativeEnum($u).optional(),status:A.enum(["ready","blocked"]),environment:Os.optional(),components:A.array(A.object({name:ze,repository:ze.describe(`owner/repo, or "${un}" for a customer-deployed component no repository builds`),healthy:A.boolean(),url:A.string().min(1).nullable(),..._u,credentials:A.array(A.string().regex(go)).max(50).optional(),deployed:ze.nullable().optional().describe("customer_deployed only: the revision the component runs, as setup read it (WF-SETUP-22's Deployed now), or null when it could not tell")}).strict()),suites:A.array(A.object({framework:ze,file:ze,result:A.enum(["pass","fail","error"])}).strict()),inputsUsed:A.array(ze),inputsUsedHow:A.array(A.object({input:ze,how:ze}).strict()).optional(),inputsNotUsed:A.array(A.object({input:ze,reason:ze}).strict()),blockers:A.array(A.object({component:ze,problem:ze,evidence:ze,fix:ze}).strict()),replay:A.object({outcome:ze,durationSeconds:A.number().nonnegative().nullable()}).strict().nullable(),files:A.array(A.object({path:ze,content:A.string()}).strict())}).strict().superRefine((t,e)=>{t.inputsUsedHow?.forEach((s,i)=>{t.inputsUsed.includes(s.input)||e.addIssue({code:A.ZodIssueCode.custom,path:["inputsUsedHow",i,"input"],message:"not one of inputsUsed"})}),t.components.forEach((s,i)=>{s.credentials&&new Set(s.credentials).size!==s.credentials.length&&e.addIssue({code:A.ZodIssueCode.custom,path:["components",i,"credentials"],message:"names a credential twice"})});let n=t.type==="customer_deployed";n!==(t.environment!==void 0)&&e.addIssue({code:A.ZodIssueCode.custom,path:["environment"],message:"an environment exactly when the plan's type is customer_deployed"}),t.environment&&new Set(t.environment.credentials).size!==t.environment.credentials.length&&e.addIssue({code:A.ZodIssueCode.custom,path:["environment","credentials"],message:"names a credential twice"});let r=new Set(t.components.map(s=>s.name));if(t.environment?.revisionSources.forEach((s,i)=>{s.components.forEach((a,c)=>{r.has(a)||e.addIssue({code:A.ZodIssueCode.custom,path:["environment","revisionSources",i,"components",c],message:"not one of components"})})}),t.components.forEach((s,i)=>{s.deployed!==void 0!==n&&e.addIssue({code:A.ZodIssueCode.custom,path:["components",i,"deployed"],message:"what a component runs exactly when the plan is customer_deployed"}),s.repository===un&&!n&&e.addIssue({code:A.ZodIssueCode.custom,path:["components",i,"repository"],message:`only a customer_deployed component is ${un}`})}),n&&(t.components.forEach((s,i)=>{t.components.findIndex(a=>a.name===s.name)!==i&&e.addIssue({code:A.ZodIssueCode.custom,path:["components",i,"name"],message:"names a component twice"})}),t.replay!==null&&e.addIssue({code:A.ZodIssueCode.custom,path:["replay"],message:"a customer_deployed plan is never replayed"}),t.files.forEach((s,i)=>{Yu.includes(s.path)&&e.addIssue({code:A.ZodIssueCode.custom,path:["files",i,"path"],message:"a customer_deployed plan has no script that starts or stops the system"})})),n&&t.status==="ready"){let s=new Set(t.environment?.revisionSources.flatMap(i=>i.components));t.components.forEach((i,a)=>{i.repository!==un&&!s.has(i.name)&&e.addIssue({code:A.ZodIssueCode.custom,path:["components",a,"name"],message:"a ready customer_deployed plan reads what every component a repository builds runs"})})}});var oH=["clean","recipe-drift"];function nA(t){let e=Zp.posix.normalize(t);return e===t&&(e===".skyramp/workspace.yml"||e.startsWith(".skyramp/sut/")&&e.length>13)}o(nA,"isRuntimePlanFile");var oA=(n=>(n.GitHub="github",n.AzureDevOps="azure-devops",n))(oA||{}),ju=(i=>(i.Trigger="TRIGGER",i.Baseline="BASELINE",i.AuthoritativeRelatedChange="AUTHORITATIVE_RELATED_CHANGE",i.ConfiguredSharedDependency="CONFIGURED_SHARED_DEPENDENCY",i.ManualOverride="MANUAL_OVERRIDE",i))(ju||{}),pf=(a=>(a.PullRequest="pull_request",a.ReadyForReview="ready_for_review",a.Schedule="schedule",a.Manual="manual",a.SutSetup="sut_setup",a.RevisionRead="revision_read",a))(pf||{}),zS=["sut_setup"],ZS=["sut_setup","schedule","revision_read"],KS=["sut_setup"],Wu=(e=>(e.PullRequest="pull_request",e))(Wu||{}),ff=(s=>(s.ModelProvider="model_provider",s.SutAccess="sut_access",s.Skyramp="skyramp",s.Other="other",s))(ff||{});var ho=(i=>(i.ReportUploaded="report_uploaded",i.NoReport="no_report",i.Cancelled="cancelled",i.RecipeUploaded="recipe_uploaded",i.RevisionsUploaded="revisions_uploaded",i))(ho||{}),mf=(n=>(n.Running="running",n.Ended="ended",n))(mf||{}),po=(c=>(c.TimedOut="timed_out",c.AgentFailed="agent_failed",c.SetupFailed="setup_failed",c.CredentialMissing="credential_missing",c.RunnerLost="runner_lost",c.CheckoutFailed="checkout_failed",c.EnvironmentUnverified="environment_unverified",c))(po||{}),Ef=(r=>(r.Onboard="onboard",r.Deploy="deploy",r.Recheck="recheck",r))(Ef||{}),Cf=(n=>(n.Started="started",n.Finished="finished",n))(Cf||{}),If=(r=>(r.Passed="passed",r.Failed="failed",r.Skipped="skipped",r))(If||{});var yf=(r=>(r.ChooseCredential="choose_credential",r.FreeText="free_text",r.ChooseSource="choose_source",r))(yf||{});var zu=(r=>(r.Discover="discover",r.Start="start",r.Check="check",r))(zu||{}),Zu=(s=>(s.Found="found",s.Starting="starting",s.Up="up",s.OutOfScope="out_of_scope",s))(Zu||{}),Jt=A.string().regex(/^[1-9][0-9]{0,18}$/),Jr=A.string().regex(/^(?:[0-9a-f]{40}|[0-9a-f]{64})$/),$s=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,tt=A.string().regex($s),nt=A.string().regex(/^[0-9a-f]{64}$/),sA=A.object({id:tt,revision:Jt}).strict(),aA={provider:A.literal("github"),providerAccountId:Jt,providerRepositoryId:Jt},AA={provider:A.literal("azure-devops"),providerAccountId:tt,providerRepositoryId:tt},qr=A.discriminatedUnion("provider",[A.object(aA).strict(),A.object(AA).strict()]),Ku=A.discriminatedUnion("provider",[A.object(aA).passthrough(),A.object(AA).passthrough()]),jr=o(t=>`${t.provider}:${t.providerRepositoryId}`,"sourceKey"),Xp={namespace:A.string().min(1),name:A.string().min(1)},Qf=A.discriminatedUnion("provider",[A.object({...aA,...Xp}).strict(),A.object({...AA,...Xp}).strict()]),ef=A.object({ref:A.string().min(1),revision:Jr}).strict(),XS=A.object({repository:Qf,revision:Jr,ref:A.string().nullable(),reason:A.nativeEnum(ju),change:A.object({kind:A.nativeEnum(Wu),number:Jt,base:ef.optional()}).strict().nullable(),compareWith:ef.optional()}).strict();function ev(t){if(t.trigger.kind==="revision_read"!=!t.baseline)return t.baseline?"a revision_read run names no baseline":"names its baseline";if(!t.baseline)return null;let{confirmedRunId:e,initialBaselineId:n,sources:r}=t.baseline;if(e!==null&&n!==void 0)return"a run compares with one baseline";let s=t.trigger.kind==="schedule"&&e!==null||n!==void 0;if(!r)return s?"names every source of the snapshot, once":null;if(e===null&&n===void 0)return"a run with no Confirmed Baseline names no baseline sources";let i=new Set(t.sources.map(l=>jr(l.repository))),a=new Set(r.map(l=>jr(l.repository)));return a.size===r.length&&a.size===i.size&&[...a].every(l=>i.has(l))?null:"names every source of the snapshot, once"}o(ev,"baselineSourcesIssue");var Bf=/^[A-Z][A-Z0-9_]+-[1-9][0-9]*$/,wf=/^[1-9][0-9]{0,18}$/,tf=new RegExp(`${Bf.source}|${wf.source}`),nf=/^https:\/\/[a-z0-9-]+(\.[a-z0-9-]+)+$/,tv=A.union([A.object({source:A.literal("jira"),site:A.string().regex(nf),key:A.string().regex(Bf),updated:A.string().datetime(),contentHash:nt}).strict(),A.object({source:A.literal("confluence"),site:A.string().regex(nf),key:A.string().regex(wf),version:A.number().int().positive(),contentHash:nt}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ka),contentHash:nt}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ao),contentHash:nt,fileName:A.string().min(1).max(255),mediaType:A.nativeEnum(co)}).strict()]),rf=A.union([A.literal("jira"),A.literal("confluence")]),nv=A.object({schemaVersion:A.literal(1),items:A.array(A.union([A.object({source:rf,site:A.string(),key:A.string().regex(tf),state:A.literal("read"),text:A.string(),version:A.string().min(1),contentMatches:A.boolean()}).strict(),A.object({source:rf,site:A.string(),key:A.string().regex(tf),state:A.literal("not_read"),reason:A.nativeEnum(Vr)}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ka),state:A.literal("read"),text:A.string(),version:A.string().min(1),contentMatches:A.boolean()}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ka),state:A.literal("not_read"),reason:A.nativeEnum(Vr)}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ao),state:A.literal("read"),version:nt,fileName:A.string().min(1).max(255),mediaType:A.nativeEnum(co)}).strict(),A.object({source:A.literal("other"),key:A.string().regex(Ao),state:A.literal("not_read"),reason:A.nativeEnum(Vr)}).strict()])),instructions:A.array(A.string()).optional()}).strict(),rv=A.object({schemaVersion:A.literal(1),runId:tt,skyrampOrgId:tt,target:sA,policy:sA.nullable(),trigger:A.object({kind:A.nativeEnum(pf),requestedAt:A.string().datetime()}).strict(),configuration:A.object({captureId:tt,revision:Jt.nullable(),hash:nt}).strict(),baseline:A.object({confirmedRunId:tt.nullable(),initialBaselineId:tt.optional(),sources:A.array(A.object({repository:qr,revision:Jr}).strict()).optional()}).strict().optional(),sources:A.array(XS).min(1),execution:A.object({provider:A.nativeEnum(oA),repository:Qf,workflowPath:A.string(),ref:A.string()}).strict(),credentials:A.array(A.object({name:A.string(),purpose:A.nativeEnum(ff),required:A.boolean()}).strict()),requirements:A.array(tv).min(1).optional(),instructions:A.object({contentHash:nt}).strict().optional(),deployedRevisions:A.array(A.object({repository:qr,revision:Jr}).strict()).min(1).optional()}).strict().superRefine((t,e)=>{let n=new Set;(t.requirements??[]).forEach((l,d)=>{let g="fileName"in l?"file":"pasted";l.source==="other"&&l.key!==`${g}-${l.contentHash.slice(0,16)}`&&e.addIssue({code:A.ZodIssueCode.custom,message:"is not the key of its content hash",path:["requirements",d,"key"]});let h=Fu({source:l.source,key:l.key});n.has(h)&&e.addIssue({code:A.ZodIssueCode.custom,message:"names an item that the run already names",path:["requirements",d,"key"]}),n.add(h)});let r=t.trigger.kind,s=zS.includes(r);s!==(t.policy===null)&&e.addIssue({code:A.ZodIssueCode.custom,path:["policy"],message:s?`a ${r} run has no policy`:"names the policy revision"});let i=ev(t);i&&e.addIssue({code:A.ZodIssueCode.custom,path:t.baseline?["baseline","sources"]:["baseline"],message:i}),ZS.includes(r)&&t.sources.forEach((l,d)=>{l.reason!=="BASELINE"&&e.addIssue({code:A.ZodIssueCode.custom,path:["sources",d,"reason"],message:`a ${r} run selects only BASELINE sources`})}),t.deployedRevisions&&r!=="manual"&&e.addIssue({code:A.ZodIssueCode.custom,path:["deployedRevisions"],message:"only a manual run pins deployed revisions"});let a=new Set(t.sources.map(l=>jr(l.repository))),c=new Set;(t.deployedRevisions??[]).forEach((l,d)=>{let g=jr(l.repository);a.has(g)?c.has(g)&&e.addIssue({code:A.ZodIssueCode.custom,path:["deployedRevisions",d,"repository"],message:"repository appears twice"}):e.addIssue({code:A.ZodIssueCode.custom,path:["deployedRevisions",d,"repository"],message:"names a repository outside the snapshot"}),c.add(g)}),t.sources.forEach((l,d)=>{l.compareWith&&(l.reason!=="MANUAL_OVERRIDE"||l.change)&&e.addIssue({code:A.ZodIssueCode.custom,path:["sources",d,"compareWith"],message:"only a MANUAL_OVERRIDE source without a change names a revision to compare with"})})});var bf=(n=>(n.Person="person",n.Policy="policy",n))(bf||{}),sv=A.object({kind:A.nativeEnum(bf),name:A.string().min(1).max(256)}).strict(),iv=A.object({schemaVersion:A.literal(1),attempt:A.object({id:tt,number:A.number().int().positive(),deadlineAt:A.string().datetime()}).strict(),manifest:rv,manifestHash:nt,entitlements:A.array(A.string()).optional(),runToken:A.string().min(1).optional(),requestedBy:sv.nullable().optional(),writeAllowed:A.boolean().optional(),claudeCodeVersion:A.string().regex(/^[0-9]+\.[0-9]+\.[0-9]+$/,"an exact version, such as 2.1.290").nullable().optional()}).strict(),sf={providerRunAttempt:A.number().int().positive(),workflowRef:A.string().min(1)},ov=A.string().regex(/^[^/]+\/[^/]+\/[1-9][0-9]{0,15}\/[1-9][0-9]{0,15}$/),av=A.object({schemaVersion:A.literal(1),runId:tt,execution:A.discriminatedUnion("provider",[A.object({...sf,provider:A.literal("github"),repository:A.object(aA).strict(),providerRunId:Jt}).strict(),A.object({...sf,provider:A.literal("azure-devops"),repository:A.object(AA).strict(),providerRunId:ov}).strict()]),requester:A.literal(!0).optional(),writeCheck:A.literal(!0).optional(),claudeCodePin:A.literal(!0).optional()}).strict(),of=A.object({repository:qr,number:Jt}).strict(),Av=A.discriminatedUnion("status",[A.object({status:A.literal("none")}).strict(),A.object({status:A.literal("delivered"),pullRequests:A.array(of).min(1)}).strict(),A.object({status:A.literal("partial"),pullRequests:A.array(of).min(1),failures:A.array(A.object({repository:qr,message:A.string()}).strict()).min(1)}).strict(),A.object({status:A.literal("failed"),message:A.string()}).strict()]),cv=A.object({sufficiency:A.nativeEnum(uo),rationale:A.string().min(1),gaps:A.array(A.string().min(1)),acceptedEvidence:A.array(A.object({kind:A.nativeEnum(tr),repository:A.string().min(1),revision:Jr,reference:A.string().min(1),summary:A.string().min(1)}).strict()),actionRequired:A.array(A.nativeEnum(lo))}).strict().superRefine((t,e)=>{t.sufficiency==="sufficient"!=(t.gaps.length===0)&&e.addIssue({code:A.ZodIssueCode.custom,path:["gaps"],message:"sufficient evidence has no gaps, and insufficient evidence names at least one"}),new Set(t.actionRequired).size!==t.actionRequired.length&&e.addIssue({code:A.ZodIssueCode.custom,path:["actionRequired"],message:"a reason appears twice"})}),Hu=500,uv=2048,lv=1e3,dv=/[\\/:*?"<>|;#$*{},+=[\]%\p{Cc}\p{Cf}]/u,af=o(t=>t.length>0&&t.length<=64&&t===t.trim()&&!dv.test(t)&&!/[^\S ]/u.test(t)&&!/^[._]/.test(t)&&!t.endsWith("."),"isAzureName"),gv=o(t=>{if(/^[A-Za-z0-9._-]{1,100}\/[A-Za-z0-9._-]{1,100}$/.test(t))return!0;let[e,n,r,...s]=t.split("/");return t.length<=201&&s.length===0&&r!==void 0&&/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,48}[A-Za-z0-9])?$/.test(e)&&af(n)&&af(r)},"isResultRepository"),hv=A.object({testResults:A.array(A.object({resultId:A.string().regex(/^[^\u0000-\u001f]{1,512}$/),repository:A.string().refine(gv,"Invalid"),testType:A.string(),endpoint:A.string(),status:A.enum(["Pass","Fail","Skipped"]),details:A.string(),fileName:A.string().optional(),testId:A.string().regex(/^[^\u0000-\u001f]{1,512}$/).optional(),failureCause:A.object({kind:A.nativeEnum(Uu),family:A.nativeEnum(Mu).optional()}).strict().optional()}).strict()),validation:cv,changes:A.array(A.object({id:A.string().min(1).max(512),text:A.string().max(16384),source:A.string().max(uv),testedBy:A.array(A.string().min(1).max(1024)).max(Hu),writtenBy:A.array(A.string().min(1).max(1024)).max(Hu),maintainedBy:A.array(A.string().min(1).max(1024)).max(Hu)}).strict()).max(lv).optional(),traceVersion:A.literal(1)}).passthrough().superRefine((t,e)=>{let n=new Set;t.testResults.forEach((r,s)=>{let i=r.failureCause;i&&r.status==="Pass"&&e.addIssue({code:A.ZodIssueCode.custom,path:["testResults",s,"failureCause"],message:"a passing result has no failure cause"}),i&&i.kind==="environment"!=(i.family!==void 0)&&e.addIssue({code:A.ZodIssueCode.custom,path:["testResults",s,"failureCause"],message:"an environment cause names its family, and no other cause does"});let a=["testResults",s,"resultId"],c=r.resultId.slice(`${r.repository}:${r.testType}:`.length);(!r.resultId.startsWith(`${r.repository}:${r.testType}:`)||c===""||c.startsWith("/")||c.startsWith("#"))&&e.addIssue({code:A.ZodIssueCode.custom,path:a,message:"is not repository:testType:path for this result"}),n.has(r.resultId)&&e.addIssue({code:A.ZodIssueCode.custom,path:a,message:"stable identity repeated"}),n.add(r.resultId)})}),Af=o(t=>t.replace(/[%:#]/g,e=>encodeURIComponent(e)),"encodeIdPart");function Rf(t,e,n,r){let s=n.replace(/\\/g,"/"),i=s.split("/").filter(l=>l!==""&&l!==".");if(s.startsWith("/")||/^[A-Za-z]:/.test(s)||i.length===0||i.includes(".."))throw new Error(`testResultId needs a path relative to the repository root, got "${n}"`);let a=i.join("/"),c=`${t}:${e}:${Af(a)}`;return r?`${c}#${Af(r)}`:c}o(Rf,"testResultId");var kf=50,cf=A.string().regex(/^(?!.*\.\.)(?!\/)(?!.*\/$)[A-Za-z0-9._/-]{1,255}$/),Sf=A.discriminatedUnion("kind",[A.object({kind:A.literal("branch_pushed"),repository:qr,branch:cf,commit:Jr}).strict(),A.object({kind:A.enum(["pull_request_opened","pull_request_edited"]),repository:qr,number:Jt,branch:cf}).strict()]),vf=A.object({schemaVersion:A.literal(1),run:A.object({runId:tt,attemptNumber:A.number().int().positive(),manifestHash:nt}).strict(),target:sA,policy:sA,provenance:A.object({sources:A.array(A.object({repository:qr,revision:Jr}).strict())}).strict(),delivery:A.object({generatedTests:Av}).strict(),producer:A.object({testbot:A.string().regex(/^[0-9A-Za-z.+-]{1,64}$/),mcp:A.string().regex(/^[0-9A-Za-z.+-]{1,64}$/)}).strict(),report:hv,githubWrites:A.array(Sf).max(kf).optional()}).strict(),hH=vf.pick({schemaVersion:!0,run:!0,target:!0,provenance:!0,producer:!0}).extend({recipe:Kp}).strict().superRefine(({recipe:t},e)=>{let n=o((i,a)=>e.addIssue({code:A.ZodIssueCode.custom,path:["recipe",...i],message:a}),"issue");t.status==="blocked"&&t.blockers.length===0&&n(["blockers"],"a blocked recipe names at least one blocker");let r=new Set,s=0;t.files.forEach((i,a)=>{nA(i.path)||n(["files",a,"path"],"is not .skyramp/workspace.yml or a file under .skyramp/sut/"),r.has(i.path)&&n(["files",a,"path"],"file repeated"),r.add(i.path),Wp.test(i.content)&&n(["files",a,"content"],"is not text");let c=Buffer.byteLength(i.content,"utf8");s+=c,c>Pu&&n(["files",a,"content"],`larger than ${Pu} bytes`)}),s>Ou&&n(["files"],`recipe text over ${Ou} bytes in total`)}),pH=A.object({components:A.array(A.object({name:A.string().min(1),repository:A.string().regex(/^[A-Za-z0-9._-]{1,100}\/[A-Za-z0-9._-]{1,100}$/),observedRevision:A.string().regex(/^[0-9a-f]{7,64}$/).nullable(),source:A.nativeEnum(Xa),evidence:A.string()}).strict().refine(t=>t.source!=="agent"||t.observedRevision===null,{path:["observedRevision"],message:"a component only an agent session can read names no revision"}))}).strict();var pv=A.object({schemaVersion:A.literal(1),stage:A.nativeEnum(Ef),event:A.nativeEnum(Cf),status:A.nativeEnum(If).optional()}).strict().refine(t=>t.status===void 0||t.event==="finished",{path:["status"],message:"only a finished stage has a status"}),xf=100,fv=5e3,Vu=2e3,uf=100,Df=/^[A-Za-z0-9_-]{1,64}$/,mv=20,Ev=200,Cv=100,Iv=100,yv=200,lf="[^/\\s](?:(?:[^/\\s]| )*[^/\\s])?",Qv=new RegExp(`^(?:[^/\\s]+/[^/\\s]+|[^/\\s]+/${lf}/${lf})$`),Bv=500,wv=50,bv=/[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f]|[\ud800-\udbff](?![\udc00-\udfff])|(?<![\ud800-\udbff])[\udc00-\udfff]/,ln=o(t=>A.string().max(t).refine(e=>e.trim().length>0&&!bv.test(e),"blank, or not text"),"setupText"),Gs={sequence:A.number().int().min(1).max(fv),at:A.string().regex(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,6})?Z$/)},Rv=A.discriminatedUnion("kind",[A.object({...Gs,kind:A.literal("log"),phase:A.nativeEnum(zu),text:ln(Vu)}).strict(),A.object({...Gs,kind:A.literal("component"),name:ln(uf),repository:ln(yv).refine(t=>Qv.test(t)||t===un,"not owner/name"),file:ln(Bv).nullable(),status:A.nativeEnum(Zu),version:ln(Iv).optional()}).strict(),A.object({...Gs,kind:A.literal("reply"),to:A.string().uuid(),accepted:A.boolean(),text:ln(Vu)}).strict(),A.object({...Gs,kind:A.literal("question"),id:A.string().regex(Df),type:A.nativeEnum(yf),text:ln(Vu),component:ln(uf).nullable(),choices:A.array(ln(Ev)).max(mv),placeholder:ln(Cv).optional()}).strict(),A.object({...Gs,kind:A.literal("delivered"),ids:A.array(A.string().uuid()).max(xf)}).strict(),A.object({...Gs,kind:A.literal("credentials"),names:A.array(A.string().regex(go)).min(1).max(wv)}).strict()]).superRefine((t,e)=>{t.kind==="credentials"&&new Set(t.names).size!==t.names.length&&e.addIssue({code:A.ZodIssueCode.custom,path:["names"],message:"a name twice"}),t.kind==="question"&&(t.type==="free_text"!=(t.choices.length===0)&&e.addIssue({code:A.ZodIssueCode.custom,path:["choices"],message:"choices exactly when the question is not free_text"}),new Set(t.choices).size!==t.choices.length&&e.addIssue({code:A.ZodIssueCode.custom,path:["choices"],message:"a choice twice"}))}),kv=A.object({schemaVersion:A.literal(1),events:A.array(Rv).max(xf)}).strict(),df={id:A.string().uuid(),text:A.string(),by:A.string().nullable(),at:A.string(),replied:A.literal(!0).optional()},Sv=A.discriminatedUnion("kind",[A.object({...df,kind:A.literal("instruction"),question:A.null()}),A.object({...df,kind:A.literal("answer"),question:A.string().regex(Df)})]),Tf=A.string().regex(/^[A-Za-z0-9+/]{43}=$/),vv=A.object({id:A.string().uuid(),revision:A.string(),by:A.string().nullable(),at:A.string(),target:A.string(),own:A.object({source:A.enum(["policy","test_environment"]),text:A.string()}).nullable()}),xv=A.object({schemaVersion:A.literal(1),leftOut:A.array(A.string()),messages:A.array(Sv).optional(),stop:A.object({key:Tf}).optional(),notes:vv.optional()});var Dv=500*1024*1024,Nf=A.object({id:Jt,name:A.string().regex(/^[A-Za-z0-9._-]{1,200}$/),providerRunId:Jt,expiresAt:A.string().datetime()}).strict(),Tv=A.object({schemaVersion:A.literal(1),artifact:Nf,sessionId:tt,contentHash:nt,bytes:A.number().int().min(1).max(Dv)}).strict(),Nv=A.object({schemaVersion:A.literal(1),checkpoint:A.object({artifact:Nf,repository:A.object({namespace:A.string().min(1),name:A.string().min(1)}).strict(),sessionId:tt,contentHash:nt,key:Tf}).strict().nullable()}).strict(),Fv=200,rA=100,Ff=(r=>(r.Resume="resume",r.Retry="retry",r.Update="update",r))(Ff||{}),Uv=A.object({kind:A.nativeEnum(Ff),setup:A.object({runId:tt,endedAt:A.string().nullable(),outcome:A.string().nullable()}).strict(),components:A.array(A.object({name:A.string().min(1),repository:A.string().min(1),status:A.nativeEnum(Zu)}).strict()).max(rA),credentials:A.array(A.string().min(1)).max(rA),answers:A.array(A.object({question:A.string(),answer:A.string().nullable()}).strict()).max(rA),instructions:A.array(A.object({text:A.string(),reply:A.string().nullable()}).strict()).max(rA),log:A.array(A.object({phase:A.nativeEnum(zu),text:A.string()}).strict()).max(Fv)}).strict(),Mv=A.object({schemaVersion:A.literal(1),context:Uv.nullable()}).strict(),Lv=A.object({schemaVersion:A.literal(1),configuration:A.object({captureId:tt,revision:Jt.nullable(),hash:nt}).strict(),capture:A.object({schemaVersion:A.literal(1),settings:A.object({target:A.object({environment:A.unknown()}).passthrough(),timeoutMinutes:A.number().int().positive(),answerWaitMinutes:A.number().int().positive().optional(),testEnvironment:A.object({name:A.string().min(1),address:A.string().min(1).optional(),readyWhen:A.string().min(1).optional()}).passthrough().optional()}).passthrough(),provenance:A.object({}).passthrough(),hash:nt}).strict()}).strict(),_v=Os.extend({version:A.number().int().positive(),components:A.array(A.object({name:A.string().min(1),repository:A.string().min(1)}).strict()),contentHash:nt.optional(),files:A.array(A.object({path:A.string().refine(t=>nA(t)&&!Yu.includes(t),"not a file of a customer_deployed plan"),content:A.string()}).strict()).optional()}).strict(),Pv=A.object({schemaVersion:A.literal(1),testEnvironment:_v.nullable().optional(),runtimePlan:A.object({version:A.number().int().positive(),contentHash:nt,files:A.array(A.object({path:A.string().refine(nA,"not a recipe file path"),content:A.string()}).strict()).min(1),recipe:A.record(A.unknown()).optional()}).strict().nullable()}).strict().refine(t=>!(t.runtimePlan&&t.testEnvironment),{message:"a run pins a recipe or a customer's Test Environment, never both",path:["testEnvironment"]}),Uf=A.object({schemaVersion:A.literal(1),state:A.nativeEnum(mf),ending:A.nativeEnum(ho).nullable(),cause:A.nativeEnum(po).nullable(),deadlineAt:A.string().datetime()}).strict();function Mf(t,e){return t.state==="ended"?t.ending==="cancelled"?"cancelled":t.cause==="runner_lost"?"expired":"ended":e.getTime()>=Date.parse(t.deadlineAt)?"expired":null}o(Mf,"attemptClosure");function Ju(t){if(typeof t=="number"&&!Number.isFinite(t))throw new TypeError("Canonical JSON requires JSON values");if(Array.isArray(t))return`[${t.map(Ju).join(",")}]`;if(t!==null&&typeof t=="object"){let n=t;return`{${Object.keys(n).sort().map(r=>`${JSON.stringify(r)}:${Ju(n[r])}`).join(",")}}`}let e=JSON.stringify(t);if(e===void 0)throw new TypeError("Canonical JSON requires JSON values");return e}o(Ju,"canonicalJson");function Lf(t){return(0,hf.createHash)("sha256").update(Ju(t),"utf8").digest("hex")}o(Lf,"manifestHash");var iA=o(t=>({provider:t.provider,providerAccountId:t.providerAccountId,providerRepositoryId:t.providerRepositoryId}),"toSourceRef");function _f(t,e){return av.parse({schemaVersion:1,runId:t,execution:e.execution(),requester:!0,writeCheck:!0,claudeCodePin:!0})}o(_f,"handshakeRequest");function Pf(t){let e=iv.parse(t);if(Lf(e.manifest)!==e.manifestHash)throw new Error("The handshake manifest hash does not match its manifest");return e}o(Pf,"parseHandshakeResponse");function Ov(t){let e=o(n=>n.map(r=>({repository:iA(r.repository),number:r.number})),"pullRequests");return t.status==="delivered"?{status:t.status,pullRequests:e(t.pullRequests)}:t.status==="partial"?{status:t.status,pullRequests:e(t.pullRequests),failures:t.failures.map(n=>({repository:iA(n.repository),message:n.message}))}:t}o(Ov,"toDelivery");function Gv(t){return t.issues.map(e=>`${e.path.map((r,s)=>typeof r=="number"?`[${r}]`:s===0?r:`.${r}`).join("")}: ${e.message}`).join("; ")}o(Gv,"describeIssues");function Of(t){let{manifest:e}=t;if(KS.includes(e.trigger.kind))throw new Error(`The report upload is invalid: a ${e.trigger.kind} run uploads its SUT recipe, never a report`);if(e.trigger.kind==="revision_read")throw new Error("The report upload is invalid: a revision_read run uploads what each component runs, never a report");let n=vf.safeParse({schemaVersion:1,run:{runId:e.runId,attemptNumber:t.attemptNumber,manifestHash:Lf(e)},target:{id:e.target.id,revision:e.target.revision},policy:e.policy&&{id:e.policy.id,revision:e.policy.revision},provenance:{sources:t.checkedOut.map(r=>({repository:iA(r.repository),revision:r.revision}))},delivery:{generatedTests:Ov(t.generatedTests)},producer:t.producer,report:t.report,...t.githubWrites?.length?{githubWrites:t.githubWrites.map(r=>({...r,repository:iA(r.repository)}))}:{}});if(!n.success)throw new Error(`The report upload is invalid: ${Gv(n.error)}`);return $v(n.data,e,t.checkedOut),n.data}o(Of,"buildReportUpload");function $v(t,e,n){let r=o(i=>n.find(a=>jr(a.repository)===jr(i.repository))?.revision??i.revision,"revisionOf"),s=new Map(e.sources.map(i=>[`${i.repository.namespace}/${i.repository.name}`.toLowerCase(),r(i)]));t.report.validation.acceptedEvidence.forEach((i,a)=>{let c=`report.validation.acceptedEvidence[${a}]`,l=s.get(i.repository.toLowerCase());if(!l)throw new Error(`${c}.repository: ${i.repository} is outside the run's snapshot`);if(i.revision!==l)throw new Error(`${c}.revision: evidence is not from the checked-out revision ${l}`)})}o($v,"assertEvidenceFromSnapshot");function Gf(t){return t.reportUploaded?{schemaVersion:1,reason:"report_uploaded",cause:null}:t.recipeUploaded?{schemaVersion:1,reason:"recipe_uploaded",cause:null}:t.revisionsUploaded?{schemaVersion:1,reason:"revisions_uploaded",cause:null}:t.cancelled?{schemaVersion:1,reason:"cancelled",cause:null}:{schemaVersion:1,reason:"no_report",cause:Yv(t)}}o(Gf,"attemptEndFor");function Yv(t){return t.credentialMissing?"credential_missing":t.checkoutFailed?"checkout_failed":t.environmentUnverified?"environment_unverified":t.setupFailed?"setup_failed":t.timedOut?"timed_out":"agent_failed"}o(Yv,"noReportCause");var IH={"application/pdf":"PDF","text/csv":"CSV","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX"};var Vv=10*1024*1024;var Jv=["generate-unit","native-run"],RH=["preflight","plan","write",...Jv,"report","deliver"];var cA=(r=>(r.Unit="unit",r.Integration="integration",r.E2e="e2e",r))(cA||{});var fo=He(require("fs")),mo=He(require("path"));var qv=8;function lt(t,e,n={}){let r=e.slice(0,qv),s=e.length-r.length;return{name:t,passed:!1,details:r.join("; ")+(s>0?`; \u2026and ${s} more`:""),...n.fatal?{fatal:!0}:{}}}o(lt,"fail");function Ys(t){if(fo.existsSync(t))try{return JSON.parse(fo.readFileSync(t,"utf-8"))}catch{return}}o(Ys,"readJsonFile");function qt(t,e){return Ys(mo.join(t.outputsDir,e))}o(qt,"readArtifact");function sr(t,e){return{name:t,verify(n,r){let{errors:s}=e(n,r);return s.length===0?{name:this.name,passed:!0}:lt(this.name,s,{fatal:!0})}}}o(sr,"schemaGate");function Eo(t){return t.replace(/\s+/g," ").trim()}o(Eo,"normalizeCode");var uA=new RegExp("(^|/)("+["test_[^/]+\\.py","[^/]+_test\\.py","[^/]+\\.(spec|test)\\.[cm]?[jt]sx?","[^/]+\\.e2e-(spec|test)\\.[cm]?[jt]sx?","[^/]+_test\\.go","[^/]+Tests?\\.(java|kts?)","[^/]+_(test|spec)\\.rb","[^/]+\\.feature","[^/]+Tests?\\.cs","[^/]+_test\\.rs","tests/[^/]+\\.rs","[^/]+Test\\.php","[^/]+(Test|Spec|Suite)\\.scala","[^/]+Tests?\\.swift","[^/]+_test\\.exs","[^/]+_test\\.dart","[^/]+_test\\.(c|cc|cpp|cxx)","test_[^/]+\\.(c|cc|cpp|cxx)","[^/]+(Spec|Test)\\.groovy"].join("|")+")$","i");var jv=4,$f="\xABredacted\xBB";function Yf(t){let e=new Set;for(let n of t){let r=(n??"").trim();r.length>=jv&&e.add(r)}return[...e].sort((n,r)=>r.length-n.length)}o(Yf,"redactionsFrom");function Hs(t,e){if(!t||e.length===0)return t;let n=t;for(let r of e)!r||!n.includes(r)||(n=n.split(r).join($f));return n}o(Hs,"redactSecrets");function Wv(t,e){let n=o(r=>typeof r=="string"?e(r):Array.isArray(r)?r.map(n):r&&typeof r=="object"?Object.fromEntries(Object.entries(r).map(([s,i])=>[s,n(i)])):r,"walk");return n(t)}o(Wv,"mapStrings");function Vs(t,e){return e.length===0?t:Wv(t,n=>Hs(n,e))}o(Vs,"redactDeep");var LH=new TextDecoder("utf-8",{fatal:!0});var Co=(n=>(n.Full="full",n.Static="static",n))(Co||{}),ir=(r=>(r.Contract="contract",r.Integration="integration",r.Ui="ui",r))(ir||{}),Io=(i=>(i.OwnSurface="own_surface",i.StateReadBack="state_read_back",i.Referential="referential",i.Lifecycle="lifecycle",i.Boundaries="boundaries",i))(Io||{}),Wr=(s=>(s.Update="update",s.Regenerate="regenerate",s.Delete="delete",s.Verify="verify",s))(Wr||{}),lA=(d=>(d.Equals="equals",d.NotEquals="not_equals",d.GreaterThan="greater_than",d.LessThan="less_than",d.Contains="contains",d.NotContains="not_contains",d.Matches="matches",d.Absent="absent",d.Present="present",d))(lA||{});var It=A.string().trim().min(1),zv=A.object({subject:It.describe('what the test READS: a response field path, the literal "status", or the on-screen text for a ui case \u2014 the FINAL read in a multi-step case'),comparator:A.nativeEnum(lA),value:A.union([A.string(),A.number(),A.boolean(),A.null()]).optional().describe("the ONE value a broken build would not produce; OMIT for absent/present")}),Zv=A.object({test:It.describe("existing test path, relative to its repository"),repository:It.optional().describe("owner/repo the test lives in, when the run has several checkouts; omit for the working checkout"),action:A.nativeEnum(Wr),evidence:It.describe("why \u2014 drift vs the diff, or a finding"),covers_behaviors:A.array(A.string()).optional().describe("analyze behavior ids this maintenance covers")}),Kv=A.object({surface:It.describe("a surface from the list, copied verbatim"),axis:A.nativeEnum(Io)}),Xv=A.object({id:It.describe("short-slug, unique across generate[]"),type:A.nativeEnum(ir),target:It.describe('"METHOD /path", or a business-flow name'),from_finding:A.string().optional().describe("analyze finding id this case catches"),from_behavior:A.string().optional().describe("analyze behavior id this case pins"),derived_from:Kv.optional().describe("the surface \xD7 axis this case pins when no analyze behavior or finding names it \u2014 one of the three is required"),rationale:It.describe("why this test matters"),expected_observable:It.describe("one sentence for a human: what a catching test asserts, and what a broken build does instead"),expected:zv.describe("the same intent AS DATA \u2014 see the rules below"),seededPrecondition:It.optional().describe("seeded non-initial state + how to reach it; only when a seeded-state transition applies"),verifiable:A.boolean().describe("true only when a live SUT could confirm this test (full mode)")}),e0=A.object({covered:A.array(A.string()).optional(),abstain:A.string().optional()}).superRefine((t,e)=>{let n=Array.isArray(t.covered),r=typeof t.abstain=="string";if(n===r)return void e.addIssue({code:A.ZodIssueCode.custom,message:"must have exactly one of covered[] or abstain"});n&&t.covered.length===0&&e.addIssue({code:A.ZodIssueCode.custom,path:["covered"],message:"must list at least one id (else abstain)"}),r&&!t.abstain.trim()&&e.addIssue({code:A.ZodIssueCode.custom,path:["abstain"],message:"must give a reason"})}).describe('{ "covered": [ids] } OR { "abstain": "reason" } \u2014 exactly one'),t0=A.object({surface:It.describe("a surface from the list, copied verbatim"),axes:A.object(Object.fromEntries(Object.values(Io).map(t=>[t,e0])))}),Hf=A.object({schemaVersion:A.literal(1),mode:A.nativeEnum(Co),maintenance:A.array(Zv),generate:A.array(Xv),surfaces:A.array(t0).describe("one entry per changed surface in the list \u2014 none missing, none invented"),budget:A.object({total:A.number().describe("case count"),rationale:It}),summary:It.describe("one paragraph")});var dA=["-c","core.fsmonitor=false"],n0=new Set(["GH_TOKEN","GITHUB_TOKEN","GH_ENTERPRISE_TOKEN","GITHUB_ENTERPRISE_TOKEN","ACTIONS_RUNTIME_TOKEN","ACTIONS_ID_TOKEN_REQUEST_TOKEN","ACTIONS_ID_TOKEN_REQUEST_URL","SYSTEM_ACCESSTOKEN","SYSTEM_OIDCREQUESTURI","SKYRAMP_MCP_GITHUB_TOKEN","SSH_AUTH_SOCK","GIT_SSH","GIT_SSH_COMMAND","GITHUB_STEP_SUMMARY"]),r0=new Set(["ANTHROPIC_API_KEY","ANTHROPIC_AUTH_TOKEN","CLAUDE_CODE_OAUTH_TOKEN","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_BEARER_TOKEN_BEDROCK","AWS_PROFILE","AWS_WEB_IDENTITY_TOKEN_FILE","AWS_ROLE_ARN","AWS_ROLE_SESSION_NAME","AWS_CONTAINER_CREDENTIALS_FULL_URI","AWS_CONTAINER_CREDENTIALS_RELATIVE_URI","AWS_CONTAINER_AUTHORIZATION_TOKEN","AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE"]);function vn(t=process.env,e,n="repo-command"){let r={};for(let[s,i]of Object.entries(t))n==="repo-command"&&r0.has(s)||(r[s]=i);Object.assign(r,e??{});for(let s of Object.keys(r))(n0.has(s)||s.startsWith("INPUT_"))&&delete r[s];return r}o(vn,"untrustedChildEnv");var s0=".skyramp/sut/deployed-revisions.sh",Xu=(n=>(n.Running="running",n.Requested="requested",n))(Xu||{});var WH=new Set(Object.values(Xu));var zH=`Fix ${s0} so it prints the full commit each component runs, then set it up again.`;var el="shared-environment";var dV=64*1024;var gV=new Set(["version_endpoint","api"]);function tl(t){return(t?.components??[]).filter(e=>!!e.repository&&!!e.expectedRevision)}o(tl,"verifiableComponents");function Vf(t){return tl(t).length>0||(t?.dependencies.length??0)>0}o(Vf,"hasSharedSystem");function i0(t){let e=t.inputs?.sharedEnvironment;if(!Vf(e))return;let n=qt(t,`${el}.json`);if(n)return{components:o0(e,n.components),dependencies:n.dependencies};let r="Not checked: the run ended before it checked the shared environment.";return{components:tl(e).map(s=>Jf(s,r)),dependencies:e.dependencies.map(s=>({name:s.name,url:s.url,version:null,evidence:r}))}}o(i0,"sharedSystem");var Jf=o((t,e)=>({name:t.name,repository:t.repository,url:t.url,expectedRevision:t.expectedRevision,observedRevision:null,status:"unverifiable",source:t.revisionUrl||t.revisionScript?"probe":"agent",evidence:e}),"unrecordedRow");function o0(t,e){let n=new Set(e.map(s=>s.name.toLowerCase())),r=tl(t).filter(s=>s.touched&&!n.has(s.name.toLowerCase()));return[...e,...r.map(s=>Jf(s,"Not checked: the run recorded no read of it."))]}o(o0,"withUnrecordedTouched");function nl(t){return(i0(t)?.components??[]).filter(e=>e.status!=="verified")}o(nl,"unverifiedComponents");function rl(t){return(t?.components??[]).filter(e=>!!e.repository&&!e.expectedRevision)}o(rl,"unfrozenComponents");function Mt(t,e=[]){let n=t.trim();if(!n)return{error:"session produced no output"};let r=o(l=>{try{let d=JSON.parse(l);return typeof d=="object"&&d!==null&&!Array.isArray(d)?d:void 0}catch{return}},"tryParse"),s=r(n);if(s!==void 0)return{value:s};let i;if(n.startsWith("{")&&n.endsWith("}"))try{JSON.parse(n)}catch(l){i=l instanceof Error?l.message:String(l)}let a=[...n.matchAll(/```(?:json)?\s*\n([\s\S]*?)```/g)];for(let l=a.length-1;l>=0;l--){let d=r(a[l][1].trim());if(d!==void 0)return{value:d}}let c;for(let l=n.indexOf("{");l!==-1;l=n.indexOf("{",l+1)){let d=0,g=!1,h=!1;for(let f=l;f<n.length;f++){let m=n[f];if(h){h=!1;continue}if(m==="\\"){h=g;continue}if(m==='"'){g=!g;continue}if(!g){if(m==="{")d++;else if(m==="}"&&(d--,d===0)){let C=r(n.slice(l,f+1));C!==void 0&&Object.keys(C).length>0&&(c=C,l=f);break}}}}return i&&(c===void 0||Object.keys(c).length<3)?{error:`final message is not valid JSON \u2014 ${i}. Most often an unescaped double quote inside a string (e.g. in "summary" or "evidence"): escape it as \\" or use single quotes in prose`}:c!==void 0?{value:c}:i?{error:`final message is not valid JSON \u2014 ${i}. Most often an unescaped double quote inside a string (e.g. in "summary" or "evidence"): escape it as \\" or use single quotes in prose`}:{error:`no parseable JSON object found in session output \u2014 the final message was: "${a0(Hs(n,e))}"`}}o(Mt,"extractJsonObject");var qf=240;function a0(t){let e=t.replace(/\s+/g," ").trim();return e.length<=qf?e:`\u2026${e.slice(-qf)}`}o(a0,"snippetOf");function A0(t){return t.issues.map(e=>{let n=e.path.map(s=>typeof s=="number"?`[${s}]`:`.${s}`).join("").replace(/^\./,""),r=n||"output";if(!/^(Expected |Required$|Invalid |String must|Array must|Number must)/.test(e.message))return`${r} ${e.message}`;switch(e.code){case"invalid_type":return n?e.expected==="object"?`${r} must be an object`:e.received==="undefined"?`${r} is required`:`${r} must be ${e.expected}, got ${e.received}`:"output is not a JSON object";case"invalid_enum_value":{let s=JSON.stringify(e.received),i=e.options.find(c=>typeof c=="string"&&typeof e.received=="string"&&e.received.startsWith(c)),a=i?` \u2014 you sent ${s}; the value must be exactly ${JSON.stringify(i)}, with any qualifier moved to a field that takes free text`:` \u2014 you sent ${s}`;return`${r} must be one of: ${e.options.join(", ")}${a}`}case"invalid_literal":return`${r} must be ${JSON.stringify(e.expected)}`;case"too_small":return e.type==="string"?`${r} must be a non-empty string`:`${r} must have at least ${e.minimum} item(s)`;case"unrecognized_keys":return`${r} has unknown key(s): ${e.keys.join(", ")}`;default:return`${r}: ${e.message}`}})}o(A0,"issuesToMessages");function xn(t,e){let n=t.safeParse(e);if(n.success)return{value:n.data,errors:[]};let r=o((i,a)=>a.reduce((c,l)=>c&&typeof c=="object"?c[l]:void 0,i),"at"),s=n.error.issues.filter(i=>i.path.length&&r(e,i.path)===null);if(s.length===n.error.issues.length)try{let i=t.safeParse(s.reduce((a,{path:c})=>jf(a,c),e));if(i.success)return{value:i.data,errors:[]}}catch{}return{errors:A0(n.error)}}o(xn,"validateWith");function jf(t,e){if(!e.length||!t||typeof t!="object")return t;let[n,...r]=e,s=Array.isArray(t)?t.slice():{...t};return r.length?s[n]=jf(s[n],r):delete s[n],s}o(jf,"withoutAt");var xV=new Set(Object.values(tr));var DV=A.object({checks:A.array(A.object({repository:A.string().optional(),name:A.string().min(1),headSha:A.string().regex(/^[0-9a-f]{40}$|^[0-9a-f]{64}$/i),status:A.string().default("completed"),conclusion:A.string().nullable().optional(),url:A.string().optional(),summary:A.string().optional()}))});var qs=He(require("path"));function c0(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}o(c0,"getDefaultExportFromCjs");var Ze={},gA={},or={},Wf;function yo(){if(Wf)return or;Wf=1;function t(a){return typeof a>"u"||a===null}o(t,"isNothing");function e(a){return typeof a=="object"&&a!==null}o(e,"isObject");function n(a){return Array.isArray(a)?a:t(a)?[]:[a]}o(n,"toArray");function r(a,c){if(c){let l=Object.keys(c);for(let d=0,g=l.length;d<g;d+=1){let h=l[d];a[h]=c[h]}}return a}o(r,"extend");function s(a,c){let l="";for(let d=0;d<c;d+=1)l+=a;return l}o(s,"repeat");function i(a){return a===0&&Number.NEGATIVE_INFINITY===1/a}return o(i,"isNegativeZero"),or.isNothing=t,or.isObject=e,or.toArray=n,or.repeat=s,or.isNegativeZero=i,or.extend=r,or}o(yo,"requireCommon");var sl,zf;function Qo(){if(zf)return sl;zf=1;function t(n,r){let s="",i=n.reason||"(unknown reason)";return n.mark?(n.mark.name&&(s+='in "'+n.mark.name+'" '),s+="("+(n.mark.line+1)+":"+(n.mark.column+1)+")",!r&&n.mark.snippet&&(s+=`
47
+
48
+ `+n.mark.snippet),i+" "+s):i}o(t,"formatError");function e(n,r){Error.call(this),this.name="YAMLException",this.reason=n,this.mark=r,this.message=t(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}return o(e,"YAMLException2"),e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e.prototype.toString=o(function(r){return this.name+": "+t(this,r)},"toString"),sl=e,sl}o(Qo,"requireException");var il,Zf;function u0(){if(Zf)return il;Zf=1;let t=yo();function e(s,i,a,c,l){let d="",g="",h=Math.floor(l/2)-1;return c-i>h&&(d=" ... ",i=c-h+d.length),a-c>h&&(g=" ...",a=c+h-g.length),{str:d+s.slice(i,a).replace(/\t/g,"\u2192")+g,pos:c-i+d.length}}o(e,"getLine");function n(s,i){return t.repeat(" ",i-s.length)+s}o(n,"padStart");function r(s,i){if(i=Object.create(i||null),!s.buffer)return null;i.maxLength||(i.maxLength=79),typeof i.indent!="number"&&(i.indent=1),typeof i.linesBefore!="number"&&(i.linesBefore=3),typeof i.linesAfter!="number"&&(i.linesAfter=2);let a=/\r?\n|\r|\0/g,c=[0],l=[],d,g=-1;for(;d=a.exec(s.buffer);)l.push(d.index),c.push(d.index+d[0].length),s.position<=d.index&&g<0&&(g=c.length-2);g<0&&(g=c.length-1);let h="",f=Math.min(s.line+i.linesAfter,l.length).toString().length,m=i.maxLength-(i.indent+f+3);for(let y=1;y<=i.linesBefore&&!(g-y<0);y++){let v=e(s.buffer,c[g-y],l[g-y],s.position-(c[g]-c[g-y]),m);h=t.repeat(" ",i.indent)+n((s.line-y+1).toString(),f)+" | "+v.str+`
49
+ `+h}let C=e(s.buffer,c[g],l[g],s.position,m);h+=t.repeat(" ",i.indent)+n((s.line+1).toString(),f)+" | "+C.str+`
50
+ `,h+=t.repeat("-",i.indent+f+3+C.pos)+`^
51
+ `;for(let y=1;y<=i.linesAfter&&!(g+y>=l.length);y++){let v=e(s.buffer,c[g+y],l[g+y],s.position-(c[g]-c[g+y]),m);h+=t.repeat(" ",i.indent)+n((s.line+y+1).toString(),f)+" | "+v.str+`
52
+ `}return h.replace(/\n$/,"")}return o(r,"makeSnippet"),il=r,il}o(u0,"requireSnippet");var ol,Kf;function rt(){if(Kf)return ol;Kf=1;let t=Qo(),e=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],n=["scalar","sequence","mapping"];function r(i){let a={};return i!==null&&Object.keys(i).forEach(function(c){i[c].forEach(function(l){a[String(l)]=c})}),a}o(r,"compileStyleAliases");function s(i,a){if(a=a||{},Object.keys(a).forEach(function(c){if(e.indexOf(c)===-1)throw new t('Unknown option "'+c+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(c){return c},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=r(a.styleAliases||null),n.indexOf(this.kind)===-1)throw new t('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}return o(s,"Type2"),ol=s,ol}o(rt,"requireType");var al,Xf;function Im(){if(Xf)return al;Xf=1;let t=Qo(),e=rt();function n(i,a){let c=[];return i[a].forEach(function(l){let d=c.length;c.forEach(function(g,h){g.tag===l.tag&&g.kind===l.kind&&g.multi===l.multi&&(d=h)}),c[d]=l}),c}o(n,"compileList");function r(){let i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function a(c){c.multi?(i.multi[c.kind].push(c),i.multi.fallback.push(c)):i[c.kind][c.tag]=i.fallback[c.tag]=c}o(a,"collectType");for(let c=0,l=arguments.length;c<l;c+=1)arguments[c].forEach(a);return i}o(r,"compileMap");function s(i){return this.extend(i)}return o(s,"Schema2"),s.prototype.extend=o(function(a){let c=[],l=[];if(a instanceof e)l.push(a);else if(Array.isArray(a))l=l.concat(a);else if(a&&(Array.isArray(a.implicit)||Array.isArray(a.explicit)))a.implicit&&(c=c.concat(a.implicit)),a.explicit&&(l=l.concat(a.explicit));else throw new t("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");c.forEach(function(g){if(!(g instanceof e))throw new t("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(g.loadKind&&g.loadKind!=="scalar")throw new t("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(g.multi)throw new t("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),l.forEach(function(g){if(!(g instanceof e))throw new t("Specified list of YAML types (or a single Type object) contains a non-Type object.")});let d=Object.create(s.prototype);return d.implicit=(this.implicit||[]).concat(c),d.explicit=(this.explicit||[]).concat(l),d.compiledImplicit=n(d,"implicit"),d.compiledExplicit=n(d,"explicit"),d.compiledTypeMap=r(d.compiledImplicit,d.compiledExplicit),d},"extend"),al=s,al}o(Im,"requireSchema");var Al,em;function ym(){if(em)return Al;em=1;let t=rt();return Al=new t("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(e){return e!==null?e:""},"construct")}),Al}o(ym,"requireStr");var cl,tm;function Qm(){if(tm)return cl;tm=1;let t=rt();return cl=new t("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(e){return e!==null?e:[]},"construct")}),cl}o(Qm,"requireSeq");var ul,nm;function Bm(){if(nm)return ul;nm=1;let t=rt();return ul=new t("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(e){return e!==null?e:{}},"construct")}),ul}o(Bm,"requireMap");var ll,rm;function wm(){if(rm)return ll;rm=1;let t=Im();return ll=new t({explicit:[ym(),Qm(),Bm()]}),ll}o(wm,"requireFailsafe");var dl,sm;function bm(){if(sm)return dl;sm=1;let t=rt();function e(s){if(s===null)return!0;let i=s.length;return i===1&&s==="~"||i===4&&(s==="null"||s==="Null"||s==="NULL")}o(e,"resolveYamlNull");function n(){return null}o(n,"constructYamlNull");function r(s){return s===null}return o(r,"isNull"),dl=new t("tag:yaml.org,2002:null",{kind:"scalar",resolve:e,construct:n,predicate:r,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"}),dl}o(bm,"require_null");var gl,im;function Rm(){if(im)return gl;im=1;let t=rt();function e(s){if(s===null)return!1;let i=s.length;return i===4&&(s==="true"||s==="True"||s==="TRUE")||i===5&&(s==="false"||s==="False"||s==="FALSE")}o(e,"resolveYamlBoolean");function n(s){return s==="true"||s==="True"||s==="TRUE"}o(n,"constructYamlBoolean");function r(s){return Object.prototype.toString.call(s)==="[object Boolean]"}return o(r,"isBoolean"),gl=new t("tag:yaml.org,2002:bool",{kind:"scalar",resolve:e,construct:n,predicate:r,represent:{lowercase:o(function(s){return s?"true":"false"},"lowercase"),uppercase:o(function(s){return s?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(s){return s?"True":"False"},"camelcase")},defaultStyle:"lowercase"}),gl}o(Rm,"requireBool");var hl,om;function km(){if(om)return hl;om=1;let t=yo(),e=rt();function n(d){return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}o(n,"isHexCode");function r(d){return d>=48&&d<=55}o(r,"isOctCode");function s(d){return d>=48&&d<=57}o(s,"isDecCode");function i(d){if(d===null)return!1;let g=d.length,h=0,f=!1;if(!g)return!1;let m=d[h];if((m==="-"||m==="+")&&(m=d[++h]),m==="0"){if(h+1===g)return!0;if(m=d[++h],m==="b"){for(h++;h<g;h++){if(m=d[h],m!=="0"&&m!=="1")return!1;f=!0}return f&&isFinite(a(d))}if(m==="x"){for(h++;h<g;h++){if(!n(d.charCodeAt(h)))return!1;f=!0}return f&&isFinite(a(d))}if(m==="o"){for(h++;h<g;h++){if(!r(d.charCodeAt(h)))return!1;f=!0}return f&&isFinite(a(d))}}for(;h<g;h++){if(!s(d.charCodeAt(h)))return!1;f=!0}return f?isFinite(a(d)):!1}o(i,"resolveYamlInteger");function a(d){let g=d,h=1,f=g[0];if((f==="-"||f==="+")&&(f==="-"&&(h=-1),g=g.slice(1),f=g[0]),g==="0")return 0;if(f==="0"){if(g[1]==="b")return h*parseInt(g.slice(2),2);if(g[1]==="x")return h*parseInt(g.slice(2),16);if(g[1]==="o")return h*parseInt(g.slice(2),8)}return h*parseInt(g,10)}o(a,"parseYamlInteger");function c(d){return a(d)}o(c,"constructYamlInteger");function l(d){return Object.prototype.toString.call(d)==="[object Number]"&&d%1===0&&!t.isNegativeZero(d)}return o(l,"isInteger"),hl=new e("tag:yaml.org,2002:int",{kind:"scalar",resolve:i,construct:c,predicate:l,represent:{binary:o(function(d){return d>=0?"0b"+d.toString(2):"-0b"+d.toString(2).slice(1)},"binary"),octal:o(function(d){return d>=0?"0o"+d.toString(8):"-0o"+d.toString(8).slice(1)},"octal"),decimal:o(function(d){return d.toString(10)},"decimal"),hexadecimal:o(function(d){return d>=0?"0x"+d.toString(16).toUpperCase():"-0x"+d.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),hl}o(km,"requireInt");var pl,am;function Sm(){if(am)return pl;am=1;let t=yo(),e=rt(),n=new RegExp("^(?:[-+]?(?:[0-9]+)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),r=new RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function s(d){return d===null||!n.test(d)?!1:isFinite(parseFloat(d,10))?!0:r.test(d)}o(s,"resolveYamlFloat");function i(d){let g=d.toLowerCase(),h=g[0]==="-"?-1:1;return"+-".indexOf(g[0])>=0&&(g=g.slice(1)),g===".inf"?h===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:g===".nan"?NaN:h*parseFloat(g,10)}o(i,"constructYamlFloat");let a=/^[-+]?[0-9]+e/;function c(d,g){if(isNaN(d))switch(g){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===d)switch(g){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===d)switch(g){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(t.isNegativeZero(d))return"-0.0";let h=d.toString(10);return a.test(h)?h.replace("e",".e"):h}o(c,"representYamlFloat");function l(d){return Object.prototype.toString.call(d)==="[object Number]"&&(d%1!==0||t.isNegativeZero(d))}return o(l,"isFloat"),pl=new e("tag:yaml.org,2002:float",{kind:"scalar",resolve:s,construct:i,predicate:l,represent:c,defaultStyle:"lowercase"}),pl}o(Sm,"requireFloat");var fl,Am;function vm(){return Am||(Am=1,fl=wm().extend({implicit:[bm(),Rm(),km(),Sm()]})),fl}o(vm,"requireJson");var ml,cm;function xm(){return cm||(cm=1,ml=vm()),ml}o(xm,"requireCore");var El,um;function Dm(){if(um)return El;um=1;let t=rt(),e=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function r(a){return a===null?!1:e.exec(a)!==null||n.exec(a)!==null}o(r,"resolveYamlTimestamp");function s(a){let c=0,l=null,d=e.exec(a);if(d===null&&(d=n.exec(a)),d===null)throw new Error("Date resolve error");let g=+d[1],h=+d[2]-1,f=+d[3];if(!d[4])return new Date(Date.UTC(g,h,f));let m=+d[4],C=+d[5],y=+d[6];if(d[7]){for(c=d[7].slice(0,3);c.length<3;)c+="0";c=+c}if(d[9]){let Q=+d[10],x=+(d[11]||0);l=(Q*60+x)*6e4,d[9]==="-"&&(l=-l)}let v=new Date(Date.UTC(g,h,f,m,C,y,c));return l&&v.setTime(v.getTime()-l),v}o(s,"constructYamlTimestamp");function i(a){return a.toISOString()}return o(i,"representYamlTimestamp"),El=new t("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:r,construct:s,instanceOf:Date,represent:i}),El}o(Dm,"requireTimestamp");var Cl,lm;function Tm(){if(lm)return Cl;lm=1;let t=rt();function e(n){return n==="<<"||n===null}return o(e,"resolveYamlMerge"),Cl=new t("tag:yaml.org,2002:merge",{kind:"scalar",resolve:e}),Cl}o(Tm,"requireMerge");var Il,dm;function Nm(){if(dm)return Il;dm=1;let t=rt(),e=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
53
+ \r`;function n(a){if(a===null)return!1;let c=0,l=a.length,d=e;for(let g=0;g<l;g++){let h=d.indexOf(a.charAt(g));if(!(h>64)){if(h<0)return!1;c+=6}}return c%8===0}o(n,"resolveYamlBinary");function r(a){let c=a.replace(/[\r\n=]/g,""),l=c.length,d=e,g=0,h=[];for(let m=0;m<l;m++)m%4===0&&m&&(h.push(g>>16&255),h.push(g>>8&255),h.push(g&255)),g=g<<6|d.indexOf(c.charAt(m));let f=l%4*6;return f===0?(h.push(g>>16&255),h.push(g>>8&255),h.push(g&255)):f===18?(h.push(g>>10&255),h.push(g>>2&255)):f===12&&h.push(g>>4&255),new Uint8Array(h)}o(r,"constructYamlBinary");function s(a){let c="",l=0,d=a.length,g=e;for(let f=0;f<d;f++)f%3===0&&f&&(c+=g[l>>18&63],c+=g[l>>12&63],c+=g[l>>6&63],c+=g[l&63]),l=(l<<8)+a[f];let h=d%3;return h===0?(c+=g[l>>18&63],c+=g[l>>12&63],c+=g[l>>6&63],c+=g[l&63]):h===2?(c+=g[l>>10&63],c+=g[l>>4&63],c+=g[l<<2&63],c+=g[64]):h===1&&(c+=g[l>>2&63],c+=g[l<<4&63],c+=g[64],c+=g[64]),c}o(s,"representYamlBinary");function i(a){return Object.prototype.toString.call(a)==="[object Uint8Array]"}return o(i,"isBinary"),Il=new t("tag:yaml.org,2002:binary",{kind:"scalar",resolve:n,construct:r,predicate:i,represent:s}),Il}o(Nm,"requireBinary");var yl,gm;function Fm(){if(gm)return yl;gm=1;let t=rt(),e=Object.prototype.hasOwnProperty,n=Object.prototype.toString;function r(i){if(i===null)return!0;let a={},c=i;for(let l=0,d=c.length;l<d;l+=1){let g=c[l],h=!1;if(n.call(g)!=="[object Object]")return!1;let f;for(f in g)if(e.call(g,f))if(!h)h=!0;else return!1;if(!h||e.call(a,f))return!1;Object.defineProperty(a,f,{value:!0})}return!0}o(r,"resolveYamlOmap");function s(i){return i!==null?i:[]}return o(s,"constructYamlOmap"),yl=new t("tag:yaml.org,2002:omap",{kind:"sequence",resolve:r,construct:s}),yl}o(Fm,"requireOmap");var Ql,hm;function Um(){if(hm)return Ql;hm=1;let t=rt(),e=Object.prototype.toString;function n(s){if(s===null)return!0;let i=s,a=new Array(i.length);for(let c=0,l=i.length;c<l;c+=1){let d=i[c];if(e.call(d)!=="[object Object]")return!1;let g=Object.keys(d);if(g.length!==1)return!1;a[c]=[g[0],d[g[0]]]}return!0}o(n,"resolveYamlPairs");function r(s){if(s===null)return[];let i=s,a=new Array(i.length);for(let c=0,l=i.length;c<l;c+=1){let d=i[c],g=Object.keys(d);a[c]=[g[0],d[g[0]]]}return a}return o(r,"constructYamlPairs"),Ql=new t("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:n,construct:r}),Ql}o(Um,"requirePairs");var Bl,pm;function Mm(){if(pm)return Bl;pm=1;let t=rt(),e=Object.prototype.hasOwnProperty;function n(s){if(s===null)return!0;let i=s;for(let a in i)if(e.call(i,a)&&i[a]!==null)return!1;return!0}o(n,"resolveYamlSet");function r(s){return s!==null?s:{}}return o(r,"constructYamlSet"),Bl=new t("tag:yaml.org,2002:set",{kind:"mapping",resolve:n,construct:r}),Bl}o(Mm,"requireSet");var wl,fm;function Rl(){return fm||(fm=1,wl=xm().extend({implicit:[Dm(),Tm()],explicit:[Nm(),Fm(),Um(),Mm()]})),wl}o(Rl,"require_default");var mm;function l0(){if(mm)return gA;mm=1;let t=yo(),e=Qo(),n=u0(),r=Rl(),s=Object.prototype.hasOwnProperty,i=1,a=2,c=3,l=4,d=1,g=2,h=3,f=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,m=/[\x85\u2028\u2029]/,C=/[,\[\]{}]/,y=/^(?:!|!!|![0-9A-Za-z-]+!)$/,v=/^(?:!|[^,\[\]{}])(?:%[0-9a-f]{2}|[0-9a-z\-#;/?:@&=+$,_.!~*'()\[\]])*$/i;function Q(u){return Object.prototype.toString.call(u)}o(Q,"_class");function x(u){return u===10||u===13}o(x,"isEol");function G(u){return u===9||u===32}o(G,"isWhiteSpace");function P(u){return u===9||u===32||u===10||u===13}o(P,"isWsOrEol");function ae(u){return u===44||u===91||u===93||u===123||u===125}o(ae,"isFlowIndicator");function Ee(u){if(u>=48&&u<=57)return u-48;let E=u|32;return E>=97&&E<=102?E-97+10:-1}o(Ee,"fromHexCode");function Ce(u){return u===120?2:u===117?4:u===85?8:0}o(Ce,"escapedHexLen");function De(u){return u>=48&&u<=57?u-48:-1}o(De,"fromDecimalCode");function et(u){switch(u){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:return" ";case 9:return" ";case 110:return`
54
+ `;case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1B";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"\x85";case 95:return"\xA0";case 76:return"\u2028";case 80:return"\u2029";default:return""}}o(et,"simpleEscapeSequence");function sn(u){return u<=65535?String.fromCharCode(u):String.fromCharCode((u-65536>>10)+55296,(u-65536&1023)+56320)}o(sn,"charFromCodepoint");function At(u,E,R){E==="__proto__"?Object.defineProperty(u,E,{configurable:!0,enumerable:!0,writable:!0,value:R}):u[E]=R}o(At,"setProperty");let Ge=new Array(256),Tt=new Array(256);for(let u=0;u<256;u++)Ge[u]=et(u)?1:0,Tt[u]=et(u);function be(u,E){this.input=u,this.filename=E.filename||null,this.schema=E.schema||r,this.onWarning=E.onWarning||null,this.legacy=E.legacy||!1,this.json=E.json||!1,this.listener=E.listener||null,this.maxDepth=typeof E.maxDepth=="number"?E.maxDepth:100,this.maxTotalMergeKeys=typeof E.maxTotalMergeKeys=="number"?E.maxTotalMergeKeys:1e4,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=u.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.depth=0,this.totalMergeKeys=0,this.firstTabInLine=-1,this.documents=[],this.anchorMapTransactions=[]}o(be,"State");function Jn(u,E){let R={name:u.filename,buffer:u.input.slice(0,-1),position:u.position,line:u.line,column:u.position-u.lineStart};return R.snippet=n(R),new e(E,R)}o(Jn,"generateError");function $(u,E){throw Jn(u,E)}o($,"throwError");function Ss(u,E){u.onWarning&&u.onWarning.call(null,Jn(u,E))}o(Ss,"throwWarning");function Bn(u,E,R){let k=u.anchorMapTransactions;if(k.length!==0){let w=k[k.length-1];s.call(w,E)||(w[E]={existed:s.call(u.anchorMap,E),value:u.anchorMap[E]})}u.anchorMap[E]=R}o(Bn,"storeAnchor");function bu(u){u.anchorMapTransactions.push(Object.create(null))}o(bu,"beginAnchorTransaction");function Sr(u){let E=u.anchorMapTransactions.pop(),R=u.anchorMapTransactions;if(R.length===0)return;let k=R[R.length-1],w=Object.keys(E);for(let p=0,I=w.length;p<I;p+=1){let B=w[p];s.call(k,B)||(k[B]=E[B])}}o(Sr,"commitAnchorTransaction");function Ru(u){let E=u.anchorMapTransactions.pop(),R=Object.keys(E);for(let k=R.length-1;k>=0;k-=1){let w=E[R[k]];w.existed?u.anchorMap[R[k]]=w.value:delete u.anchorMap[R[k]]}}o(Ru,"rollbackAnchorTransaction");function Zi(u){return{position:u.position,line:u.line,lineStart:u.lineStart,lineIndent:u.lineIndent,firstTabInLine:u.firstTabInLine,tag:u.tag,anchor:u.anchor,kind:u.kind,result:u.result}}o(Zi,"snapshotState");function vs(u,E){u.position=E.position,u.line=E.line,u.lineStart=E.lineStart,u.lineIndent=E.lineIndent,u.firstTabInLine=E.firstTabInLine,u.tag=E.tag,u.anchor=E.anchor,u.kind=E.kind,u.result=E.result}o(vs,"restoreState");let _a={YAML:o(function(E,R,k){E.version!==null&&$(E,"duplication of %YAML directive"),k.length!==1&&$(E,"YAML directive accepts exactly one argument");let w=/^([0-9]+)\.([0-9]+)$/.exec(k[0]);w===null&&$(E,"ill-formed argument of the YAML directive");let p=parseInt(w[1],10),I=parseInt(w[2],10);p!==1&&$(E,"unacceptable YAML version of the document"),E.version=k[0],E.checkLineBreaks=I<2,I!==1&&I!==2&&Ss(E,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(E,R,k){let w;k.length!==2&&$(E,"TAG directive accepts exactly two arguments");let p=k[0];w=k[1],y.test(p)||$(E,"ill-formed tag handle (first argument) of the TAG directive"),s.call(E.tagMap,p)&&$(E,'there is a previously declared suffix for "'+p+'" tag handle'),v.test(w)||$(E,"ill-formed tag prefix (second argument) of the TAG directive");try{w=decodeURIComponent(w)}catch{$(E,"tag prefix is malformed: "+w)}E.tagMap[p]=w},"handleTagDirective")};function Ct(u,E,R,k){if(E<R){let w=u.input.slice(E,R);if(k)for(let p=0,I=w.length;p<I;p+=1){let B=w.charCodeAt(p);B===9||B>=32&&B<=1114111||$(u,"expected valid JSON character")}else f.test(w)&&$(u,"the stream contains non-printable characters");u.result+=w}}o(Ct,"captureSegment");function qn(u){u.totalMergeKeys++,u.maxTotalMergeKeys!==-1&&u.totalMergeKeys>u.maxTotalMergeKeys&&$(u,"merge keys exceeded maxTotalMergeKeys ("+u.maxTotalMergeKeys+")")}o(qn,"chargeMergeWork");function Ki(u,E,R,k){t.isObject(R)||$(u,"cannot merge mappings; the provided source object is unacceptable"),qn(u);let w=Object.keys(R);for(let p=0,I=w.length;p<I;p+=1){let B=w[p];qn(u),s.call(E,B)||(At(E,B,R[B]),k[B]=!0)}}o(Ki,"mergeMappings");function wn(u,E,R,k,w,p,I,B,S){if(Array.isArray(w)){w=Array.prototype.slice.call(w);for(let D=0,F=w.length;D<F;D+=1)Array.isArray(w[D])&&$(u,"nested arrays are not supported inside keys"),typeof w=="object"&&Q(w[D])==="[object Object]"&&(w[D]="[object Object]")}if(typeof w=="object"&&Q(w)==="[object Object]"&&(w="[object Object]"),w=String(w),E===null&&(E={}),k==="tag:yaml.org,2002:merge")if(Array.isArray(p)){p.length>100&&$(u,"abnormal merge sequence size");for(let D=0,F=p.length;D<F;D+=1)Ki(u,E,p[D],R)}else Ki(u,E,p,R);else!u.json&&!s.call(R,w)&&s.call(E,w)&&(u.line=I||u.line,u.lineStart=B||u.lineStart,u.position=S||u.position,$(u,"duplicated mapping key")),At(E,w,p),delete R[w];return E}o(wn,"storeMappingPair");function Xi(u){let E=u.input.charCodeAt(u.position);E===10?u.position++:E===13?(u.position++,u.input.charCodeAt(u.position)===10&&u.position++):$(u,"a line break is expected"),u.line+=1,u.lineStart=u.position,u.firstTabInLine=-1}o(Xi,"readLineBreak");function Te(u,E,R){let k=0,w=u.input.charCodeAt(u.position);for(;w!==0;){for(;G(w);)w===9&&u.firstTabInLine===-1&&(u.firstTabInLine=u.position),w=u.input.charCodeAt(++u.position);if(E&&w===35)do w=u.input.charCodeAt(++u.position);while(w!==10&&w!==13&&w!==0);if(x(w))for(Xi(u),w=u.input.charCodeAt(u.position),k++,u.lineIndent=0;w===32;)u.lineIndent++,w=u.input.charCodeAt(++u.position);else break}return R!==-1&&k!==0&&u.lineIndent<R&&Ss(u,"deficient indentation"),k}o(Te,"skipSeparationSpace");function on(u){let E=u.position,R=u.input.charCodeAt(E);return!!((R===45||R===46)&&R===u.input.charCodeAt(E+1)&&R===u.input.charCodeAt(E+2)&&(E+=3,R=u.input.charCodeAt(E),R===0||P(R)))}o(on,"testDocumentSeparator");function xs(u,E){E===1?u.result+=" ":E>1&&(u.result+=t.repeat(`
55
+ `,E-1))}o(xs,"writeFoldedLines");function Pa(u,E,R){let k,w,p,I,B,S,D=u.kind,F=u.result,b=u.input.charCodeAt(u.position);if(P(b)||ae(b)||b===35||b===38||b===42||b===33||b===124||b===62||b===39||b===34||b===37||b===64||b===96)return!1;if(b===63||b===45){let M=u.input.charCodeAt(u.position+1);if(P(M)||R&&ae(M))return!1}for(u.kind="scalar",u.result="",k=w=u.position,p=!1;b!==0;){if(b===58){let M=u.input.charCodeAt(u.position+1);if(P(M)||R&&ae(M))break}else if(b===35){let M=u.input.charCodeAt(u.position-1);if(P(M))break}else{if(u.position===u.lineStart&&on(u)||R&&ae(b))break;if(x(b))if(I=u.line,B=u.lineStart,S=u.lineIndent,Te(u,!1,-1),u.lineIndent>=E){p=!0,b=u.input.charCodeAt(u.position);continue}else{u.position=w,u.line=I,u.lineStart=B,u.lineIndent=S;break}}p&&(Ct(u,k,w,!1),xs(u,u.line-I),k=w=u.position,p=!1),G(b)||(w=u.position+1),b=u.input.charCodeAt(++u.position)}return Ct(u,k,w,!1),u.result?!0:(u.kind=D,u.result=F,!1)}o(Pa,"readPlainScalar");function eo(u,E){let R,k,w=u.input.charCodeAt(u.position);if(w!==39)return!1;for(u.kind="scalar",u.result="",u.position++,R=k=u.position;(w=u.input.charCodeAt(u.position))!==0;)if(w===39)if(Ct(u,R,u.position,!0),w=u.input.charCodeAt(++u.position),w===39)R=u.position,u.position++,k=u.position;else return!0;else x(w)?(Ct(u,R,k,!0),xs(u,Te(u,!1,E)),R=k=u.position):u.position===u.lineStart&&on(u)?$(u,"unexpected end of the document within a single quoted scalar"):(u.position++,G(w)||(k=u.position));$(u,"unexpected end of the stream within a single quoted scalar")}o(eo,"readSingleQuotedScalar");function Oa(u,E){let R,k,w,p=u.input.charCodeAt(u.position);if(p!==34)return!1;for(u.kind="scalar",u.result="",u.position++,R=k=u.position;(p=u.input.charCodeAt(u.position))!==0;){if(p===34)return Ct(u,R,u.position,!0),u.position++,!0;if(p===92){if(Ct(u,R,u.position,!0),p=u.input.charCodeAt(++u.position),x(p))Te(u,!1,E);else if(p<256&&Ge[p])u.result+=Tt[p],u.position++;else if((w=Ce(p))>0){let I=w,B=0;for(;I>0;I--)p=u.input.charCodeAt(++u.position),(w=Ee(p))>=0?B=(B<<4)+w:$(u,"expected hexadecimal character");u.result+=sn(B),u.position++}else $(u,"unknown escape sequence");R=k=u.position}else x(p)?(Ct(u,R,k,!0),xs(u,Te(u,!1,E)),R=k=u.position):u.position===u.lineStart&&on(u)?$(u,"unexpected end of the document within a double quoted scalar"):(u.position++,G(p)||(k=u.position))}$(u,"unexpected end of the stream within a double quoted scalar")}o(Oa,"readDoubleQuotedScalar");function Ga(u,E){let R=!0,k,w,p,I=u.tag,B,S=u.anchor,D,F,b,M,Y=Object.create(null),z,K,se,ce=u.input.charCodeAt(u.position);if(ce===91)D=93,M=!1,B=[];else if(ce===123)D=125,M=!0,B={};else return!1;for(u.anchor!==null&&Bn(u,u.anchor,B),ce=u.input.charCodeAt(++u.position);ce!==0;){if(Te(u,!0,E),ce=u.input.charCodeAt(u.position),ce===D)return u.position++,u.tag=I,u.anchor=S,u.kind=M?"mapping":"sequence",u.result=B,!0;if(R?ce===44&&$(u,"expected the node content, but found ','"):$(u,"missed comma between flow collection entries"),K=z=se=null,F=b=!1,ce===63){let zn=u.input.charCodeAt(u.position+1);P(zn)&&(F=b=!0,u.position++,Te(u,!0,E))}k=u.line,w=u.lineStart,p=u.position,Wn(u,E,i,!1,!0),K=u.tag,z=u.result,Te(u,!0,E),ce=u.input.charCodeAt(u.position),(b||u.line===k)&&ce===58&&(F=!0,ce=u.input.charCodeAt(++u.position),Te(u,!0,E),Wn(u,E,i,!1,!0),se=u.result),M?wn(u,B,Y,K,z,se,k,w,p):F?B.push(wn(u,null,Y,K,z,se,k,w,p)):B.push(z),Te(u,!0,E),ce=u.input.charCodeAt(u.position),ce===44?(R=!0,ce=u.input.charCodeAt(++u.position)):R=!1}$(u,"unexpected end of the stream within a flow collection")}o(Ga,"readFlowCollection");function jn(u,E){let R,k=d,w=!1,p=!1,I=E,B=0,S=!1,D,F=u.input.charCodeAt(u.position);if(F===124)R=!1;else if(F===62)R=!0;else return!1;for(u.kind="scalar",u.result="";F!==0;)if(F=u.input.charCodeAt(++u.position),F===43||F===45)d===k?k=F===43?h:g:$(u,"repeat of a chomping mode identifier");else if((D=De(F))>=0)D===0?$(u,"bad explicit indentation width of a block scalar; it cannot be less than one"):p?$(u,"repeat of an indentation width identifier"):(I=E+D-1,p=!0);else break;if(G(F)){do F=u.input.charCodeAt(++u.position);while(G(F));if(F===35)do F=u.input.charCodeAt(++u.position);while(!x(F)&&F!==0)}for(;F!==0;){for(Xi(u),u.lineIndent=0,F=u.input.charCodeAt(u.position);(!p||u.lineIndent<I)&&F===32;)u.lineIndent++,F=u.input.charCodeAt(++u.position);if(!p&&u.lineIndent>I&&(I=u.lineIndent),x(F)){B++;continue}if(!p&&I===0&&$(u,"missing indentation for block scalar"),u.lineIndent<I){k===h?u.result+=t.repeat(`
56
+ `,w?1+B:B):k===d&&w&&(u.result+=`
57
+ `);break}R?G(F)?(S=!0,u.result+=t.repeat(`
58
+ `,w?1+B:B)):S?(S=!1,u.result+=t.repeat(`
59
+ `,B+1)):B===0?w&&(u.result+=" "):u.result+=t.repeat(`
60
+ `,B):u.result+=t.repeat(`
61
+ `,w?1+B:B),w=!0,p=!0,B=0;let b=u.position;for(;!x(F)&&F!==0;)F=u.input.charCodeAt(++u.position);Ct(u,b,u.position,!1)}return!0}o(jn,"readBlockScalar");function $a(u,E){let R=u.tag,k=u.anchor,w=[],p=!1;if(u.firstTabInLine!==-1)return!1;u.anchor!==null&&Bn(u,u.anchor,w);let I=u.input.charCodeAt(u.position);for(;I!==0&&(u.firstTabInLine!==-1&&(u.position=u.firstTabInLine,$(u,"tab characters must not be used in indentation")),I===45);){let B=u.input.charCodeAt(u.position+1);if(!P(B))break;if(p=!0,u.position++,Te(u,!0,-1)&&u.lineIndent<=E){w.push(null),I=u.input.charCodeAt(u.position);continue}let S=u.line;if(Wn(u,E,c,!1,!0),w.push(u.result),Te(u,!0,-1),I=u.input.charCodeAt(u.position),(u.line===S||u.lineIndent>E)&&I!==0)$(u,"bad indentation of a sequence entry");else if(u.lineIndent<E)break}return p?(u.tag=R,u.anchor=k,u.kind="sequence",u.result=w,!0):!1}o($a,"readBlockSequence");function Ya(u,E,R){let k,w,p,I,B=u.tag,S=u.anchor,D={},F=Object.create(null),b=null,M=null,Y=null,z=!1,K=!1;if(u.firstTabInLine!==-1)return!1;u.anchor!==null&&Bn(u,u.anchor,D);let se=u.input.charCodeAt(u.position);for(;se!==0;){!z&&u.firstTabInLine!==-1&&(u.position=u.firstTabInLine,$(u,"tab characters must not be used in indentation"));let ce=u.input.charCodeAt(u.position+1),zn=u.line;if((se===63||se===58)&&P(ce))se===63?(z&&(wn(u,D,F,b,M,null,w,p,I),b=M=Y=null),K=!0,z=!0,k=!0):z?(z=!1,k=!0):$(u,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),u.position+=1,se=ce;else{if(w=u.line,p=u.lineStart,I=u.position,!Wn(u,R,a,!1,!0))break;if(u.line===zn){for(se=u.input.charCodeAt(u.position);G(se);)se=u.input.charCodeAt(++u.position);if(se===58)se=u.input.charCodeAt(++u.position),P(se)||$(u,"a whitespace character is expected after the key-value separator within a block mapping"),z&&(wn(u,D,F,b,M,null,w,p,I),b=M=Y=null),K=!0,z=!1,k=!1,b=u.tag,M=u.result;else if(K)$(u,"can not read an implicit mapping pair; a colon is missed");else return u.tag=B,u.anchor=S,!0}else if(K)$(u,"can not read a block mapping entry; a multiline key may not be an implicit key");else return u.tag=B,u.anchor=S,!0}if((u.line===zn||u.lineIndent>E)&&(z&&(w=u.line,p=u.lineStart,I=u.position),Wn(u,E,l,!0,k)&&(z?M=u.result:Y=u.result),z||(wn(u,D,F,b,M,Y,w,p,I),b=M=Y=null),Te(u,!0,-1),se=u.input.charCodeAt(u.position)),(u.line===zn||u.lineIndent>E)&&se!==0)$(u,"bad indentation of a mapping entry");else if(u.lineIndent<E)break}return z&&wn(u,D,F,b,M,null,w,p,I),K&&(u.tag=B,u.anchor=S,u.kind="mapping",u.result=D),K}o(Ya,"readBlockMapping");function Ha(u){let E=!1,R=!1,k,w,p=u.input.charCodeAt(u.position);if(p!==33)return!1;u.tag!==null&&$(u,"duplication of a tag property"),p=u.input.charCodeAt(++u.position),p===60?(E=!0,p=u.input.charCodeAt(++u.position)):p===33?(R=!0,k="!!",p=u.input.charCodeAt(++u.position)):k="!";let I=u.position;if(E){do p=u.input.charCodeAt(++u.position);while(p!==0&&p!==62);u.position<u.length?(w=u.input.slice(I,u.position),p=u.input.charCodeAt(++u.position)):$(u,"unexpected end of the stream within a verbatim tag")}else{for(;p!==0&&!P(p);)p===33&&(R?$(u,"tag suffix cannot contain exclamation marks"):(k=u.input.slice(I-1,u.position+1),y.test(k)||$(u,"named tag handle cannot contain such characters"),R=!0,I=u.position+1)),p=u.input.charCodeAt(++u.position);w=u.input.slice(I,u.position),C.test(w)&&$(u,"tag suffix cannot contain flow indicator characters")}w&&!v.test(w)&&$(u,"tag name cannot contain such characters: "+w);try{w=decodeURIComponent(w)}catch{$(u,"tag name is malformed: "+w)}return E?u.tag=w:s.call(u.tagMap,k)?u.tag=u.tagMap[k]+w:k==="!"?u.tag="!"+w:k==="!!"?u.tag="tag:yaml.org,2002:"+w:$(u,'undeclared tag handle "'+k+'"'),!0}o(Ha,"readTagProperty");function Va(u){let E=u.input.charCodeAt(u.position);if(E!==38)return!1;u.anchor!==null&&$(u,"duplication of an anchor property"),E=u.input.charCodeAt(++u.position);let R=u.position;for(;E!==0&&!P(E)&&!ae(E);)E=u.input.charCodeAt(++u.position);return u.position===R&&$(u,"name of an anchor node must contain at least one character"),u.anchor=u.input.slice(R,u.position),!0}o(Va,"readAnchorProperty");function ku(u){let E=u.input.charCodeAt(u.position);if(E!==42)return!1;E=u.input.charCodeAt(++u.position);let R=u.position;for(;E!==0&&!P(E)&&!ae(E);)E=u.input.charCodeAt(++u.position);u.position===R&&$(u,"name of an alias node must contain at least one character");let k=u.input.slice(R,u.position);return s.call(u.anchorMap,k)||$(u,'unidentified alias "'+k+'"'),u.result=u.anchorMap[k],Te(u,!0,-1),!0}o(ku,"readAlias");function Ja(u,E,R,k){let w=Zi(u);return bu(u),vs(u,E),u.tag=null,u.anchor=null,u.kind=null,u.result=null,Ya(u,R,k)&&u.kind==="mapping"?(Sr(u),!0):(Ru(u),vs(u,w),!1)}o(Ja,"tryReadBlockMappingFromProperty");function Wn(u,E,R,k,w){let p,I,B=1,S=!1,D=!1,F=null,b,M,Y;u.depth>=u.maxDepth&&$(u,"nesting exceeded maxDepth ("+u.maxDepth+")"),u.depth+=1,u.listener!==null&&u.listener("open",u),u.tag=null,u.anchor=null,u.kind=null,u.result=null;let z=p=I=l===R||c===R;if(k&&Te(u,!0,-1)&&(S=!0,u.lineIndent>E?B=1:u.lineIndent===E?B=0:u.lineIndent<E&&(B=-1)),B===1)for(;;){let K=u.input.charCodeAt(u.position),se=Zi(u);if(S&&(K===33&&u.tag!==null||K===38&&u.anchor!==null)||!Ha(u)&&!Va(u))break;F===null&&(F=se),Te(u,!0,-1)?(S=!0,I=z,u.lineIndent>E?B=1:u.lineIndent===E?B=0:u.lineIndent<E&&(B=-1)):I=!1}if(I&&(I=S||w),B===1||l===R)if(i===R||a===R?M=E:M=E+1,Y=u.position-u.lineStart,B===1)if(I&&($a(u,Y)||Ya(u,Y,M))||Ga(u,M))D=!0;else{let K=u.input.charCodeAt(u.position);F!==null&&z&&!I&&K!==124&&K!==62&&Ja(u,F,F.position-F.lineStart,M)||p&&jn(u,M)||eo(u,M)||Oa(u,M)?D=!0:ku(u)?(D=!0,(u.tag!==null||u.anchor!==null)&&$(u,"alias node should not have any properties")):Pa(u,M,i===R)&&(D=!0,u.tag===null&&(u.tag="?")),u.anchor!==null&&Bn(u,u.anchor,u.result)}else B===0&&(D=I&&$a(u,Y));if(u.tag===null)u.anchor!==null&&Bn(u,u.anchor,u.result);else if(u.tag==="?"){u.result!==null&&u.kind!=="scalar"&&$(u,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+u.kind+'"');for(let K=0,se=u.implicitTypes.length;K<se;K+=1)if(b=u.implicitTypes[K],b.resolve(u.result)){u.result=b.construct(u.result),u.tag=b.tag,u.anchor!==null&&Bn(u,u.anchor,u.result);break}}else if(u.tag!=="!"){if(s.call(u.typeMap[u.kind||"fallback"],u.tag))b=u.typeMap[u.kind||"fallback"][u.tag];else{b=null;let K=u.typeMap.multi[u.kind||"fallback"];for(let se=0,ce=K.length;se<ce;se+=1)if(u.tag.slice(0,K[se].tag.length)===K[se].tag){b=K[se];break}}b||$(u,"unknown tag !<"+u.tag+">"),u.result!==null&&b.kind!==u.kind&&$(u,"unacceptable node kind for !<"+u.tag+'> tag; it should be "'+b.kind+'", not "'+u.kind+'"'),b.resolve(u.result,u.tag)?(u.result=b.construct(u.result,u.tag),u.anchor!==null&&Bn(u,u.anchor,u.result)):$(u,"cannot resolve a node with !<"+u.tag+"> explicit tag")}return u.listener!==null&&u.listener("close",u),u.depth-=1,u.tag!==null||u.anchor!==null||D}o(Wn,"composeNode");function Su(u){let E=u.position,R=!1,k;for(u.version=null,u.checkLineBreaks=u.legacy,u.tagMap=Object.create(null),u.anchorMap=Object.create(null);(k=u.input.charCodeAt(u.position))!==0&&(Te(u,!0,-1),k=u.input.charCodeAt(u.position),!(u.lineIndent>0||k!==37));){R=!0,k=u.input.charCodeAt(++u.position);let w=u.position;for(;k!==0&&!P(k);)k=u.input.charCodeAt(++u.position);let p=u.input.slice(w,u.position),I=[];for(p.length<1&&$(u,"directive name must not be less than one character in length");k!==0;){for(;G(k);)k=u.input.charCodeAt(++u.position);if(k===35){do k=u.input.charCodeAt(++u.position);while(k!==0&&!x(k));break}if(x(k))break;for(w=u.position;k!==0&&!P(k);)k=u.input.charCodeAt(++u.position);I.push(u.input.slice(w,u.position))}k!==0&&Xi(u),s.call(_a,p)?_a[p](u,p,I):Ss(u,'unknown document directive "'+p+'"')}if(Te(u,!0,-1),u.lineIndent===0&&u.input.charCodeAt(u.position)===45&&u.input.charCodeAt(u.position+1)===45&&u.input.charCodeAt(u.position+2)===45?(u.position+=3,Te(u,!0,-1)):R&&$(u,"directives end mark is expected"),Wn(u,u.lineIndent-1,l,!1,!0),Te(u,!0,-1),u.checkLineBreaks&&m.test(u.input.slice(E,u.position))&&Ss(u,"non-ASCII line breaks are interpreted as content"),u.documents.push(u.result),u.position===u.lineStart&&on(u)){u.input.charCodeAt(u.position)===46&&(u.position+=3,Te(u,!0,-1));return}u.position<u.length-1&&$(u,"end of the stream or a document separator is expected")}o(Su,"readDocument");function to(u,E){u=String(u),E=E||{},u.length!==0&&(u.charCodeAt(u.length-1)!==10&&u.charCodeAt(u.length-1)!==13&&(u+=`
62
+ `),u.charCodeAt(0)===65279&&(u=u.slice(1)));let R=new be(u,E),k=u.indexOf("\0");for(k!==-1&&(R.position=k,$(R,"null byte is not allowed in input")),R.input+="\0";R.input.charCodeAt(R.position)===32;)R.lineIndent+=1,R.position+=1;for(;R.position<R.length-1;)Su(R);return R.documents}o(to,"loadDocuments");function vu(u,E,R){E!==null&&typeof E=="object"&&typeof R>"u"&&(R=E,E=null);let k=to(u,R);if(typeof E!="function")return k;for(let w=0,p=k.length;w<p;w+=1)E(k[w])}o(vu,"loadAll2");function xu(u,E){let R=to(u,E);if(R.length!==0){if(R.length===1)return R[0];throw new e("expected a single document in the stream, but found more")}}return o(xu,"load2"),gA.loadAll=vu,gA.load=xu,gA}o(l0,"requireLoader");var bl={},Em;function d0(){if(Em)return bl;Em=1;let t=yo(),e=Qo(),n=Rl(),r=Object.prototype.toString,s=Object.prototype.hasOwnProperty,i=65279,a=9,c=10,l=13,d=32,g=33,h=34,f=35,m=37,C=38,y=39,v=42,Q=44,x=45,G=58,P=61,ae=62,Ee=63,Ce=64,De=91,et=93,sn=96,At=123,Ge=124,Tt=125,be={};be[0]="\\0",be[7]="\\a",be[8]="\\b",be[9]="\\t",be[10]="\\n",be[11]="\\v",be[12]="\\f",be[13]="\\r",be[27]="\\e",be[34]='\\"',be[92]="\\\\",be[133]="\\N",be[160]="\\_",be[8232]="\\L",be[8233]="\\P";let Jn=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],$=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Ss(p,I){if(I===null)return{};let B={},S=Object.keys(I);for(let D=0,F=S.length;D<F;D+=1){let b=S[D],M=String(I[b]);b.slice(0,2)==="!!"&&(b="tag:yaml.org,2002:"+b.slice(2));let Y=p.compiledTypeMap.fallback[b];Y&&s.call(Y.styleAliases,M)&&(M=Y.styleAliases[M]),B[b]=M}return B}o(Ss,"compileStyleMap");function Bn(p){let I,B,S=p.toString(16).toUpperCase();if(p<=255)I="x",B=2;else if(p<=65535)I="u",B=4;else if(p<=4294967295)I="U",B=8;else throw new e("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+I+t.repeat("0",B-S.length)+S}o(Bn,"encodeHex");let bu=1,Sr=2;function Ru(p){this.schema=p.schema||n,this.indent=Math.max(1,p.indent||2),this.noArrayIndent=p.noArrayIndent||!1,this.skipInvalid=p.skipInvalid||!1,this.flowLevel=t.isNothing(p.flowLevel)?-1:p.flowLevel,this.styleMap=Ss(this.schema,p.styles||null),this.sortKeys=p.sortKeys||!1,this.lineWidth=p.lineWidth||80,this.noRefs=p.noRefs||!1,this.noCompatMode=p.noCompatMode||!1,this.condenseFlow=p.condenseFlow||!1,this.quotingType=p.quotingType==='"'?Sr:bu,this.forceQuotes=p.forceQuotes||!1,this.replacer=typeof p.replacer=="function"?p.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}o(Ru,"State");function Zi(p,I){let B=t.repeat(" ",I),S=0,D="",F=p.length;for(;S<F;){let b,M=p.indexOf(`
63
+ `,S);M===-1?(b=p.slice(S),S=F):(b=p.slice(S,M+1),S=M+1),b.length&&b!==`
64
+ `&&(D+=B),D+=b}return D}o(Zi,"indentString");function vs(p,I){return`
65
+ `+t.repeat(" ",p.indent*I)}o(vs,"generateNextLine");function _a(p,I){for(let B=0,S=p.implicitTypes.length;B<S;B+=1)if(p.implicitTypes[B].resolve(I))return!0;return!1}o(_a,"testImplicitResolving");function Ct(p){return p===d||p===a}o(Ct,"isWhitespace");function qn(p){return p>=32&&p<=126||p>=161&&p<=55295&&p!==8232&&p!==8233||p>=57344&&p<=65533&&p!==i||p>=65536&&p<=1114111}o(qn,"isPrintable");function Ki(p){return qn(p)&&p!==i&&p!==l&&p!==c}o(Ki,"isNsCharOrWhitespace");function wn(p,I,B){let S=Ki(p),D=S&&!Ct(p);return(B?S:S&&p!==Q&&p!==De&&p!==et&&p!==At&&p!==Tt)&&p!==f&&!(I===G&&!D)||Ki(I)&&!Ct(I)&&p===f||I===G&&D}o(wn,"isPlainSafe");function Xi(p){return qn(p)&&p!==i&&!Ct(p)&&p!==x&&p!==Ee&&p!==G&&p!==Q&&p!==De&&p!==et&&p!==At&&p!==Tt&&p!==f&&p!==C&&p!==v&&p!==g&&p!==Ge&&p!==P&&p!==ae&&p!==y&&p!==h&&p!==m&&p!==Ce&&p!==sn}o(Xi,"isPlainSafeFirst");function Te(p){return!Ct(p)&&p!==G}o(Te,"isPlainSafeLast");function on(p,I){let B=p.charCodeAt(I),S;return B>=55296&&B<=56319&&I+1<p.length&&(S=p.charCodeAt(I+1),S>=56320&&S<=57343)?(B-55296)*1024+S-56320+65536:B}o(on,"codePointAt");function xs(p){return/^\n* /.test(p)}o(xs,"needIndentIndicator");let Pa=1,eo=2,Oa=3,Ga=4,jn=5;function $a(p,I,B,S,D,F,b,M){let Y,z=0,K=null,se=!1,ce=!1,zn=S!==-1,no=-1,ro=Xi(on(p,0))&&Te(on(p,p.length-1));if(I||b)for(Y=0;Y<p.length;z>=65536?Y+=2:Y++){if(z=on(p,Y),!qn(z))return jn;ro=ro&&wn(z,K,M),K=z}else{for(Y=0;Y<p.length;z>=65536?Y+=2:Y++){if(z=on(p,Y),z===c)se=!0,zn&&(ce=ce||Y-no-1>S&&p[no+1]!==" ",no=Y);else if(!qn(z))return jn;ro=ro&&wn(z,K,M),K=z}ce=ce||zn&&Y-no-1>S&&p[no+1]!==" "}return!se&&!ce?ro&&!b&&!D(p)?Pa:F===Sr?jn:eo:B>9&&xs(p)?jn:b?F===Sr?jn:eo:ce?Ga:Oa}o($a,"chooseScalarStyle");function Ya(p,I,B,S,D){p.dump=(function(){if(I.length===0)return p.quotingType===Sr?'""':"''";if(!p.noCompatMode&&(Jn.indexOf(I)!==-1||$.test(I)))return p.quotingType===Sr?'"'+I+'"':"'"+I+"'";let F=p.indent*Math.max(1,B),b=p.lineWidth===-1?-1:Math.max(Math.min(p.lineWidth,40),p.lineWidth-F),M=S||p.flowLevel>-1&&B>=p.flowLevel;function Y(z){return _a(p,z)}switch(o(Y,"testAmbiguity"),$a(I,M,p.indent,b,Y,p.quotingType,p.forceQuotes&&!S,D)){case Pa:return I;case eo:return"'"+I.replace(/'/g,"''")+"'";case Oa:return"|"+Ha(I,p.indent)+Va(Zi(I,F));case Ga:return">"+Ha(I,p.indent)+Va(Zi(ku(I,b),F));case jn:return'"'+Wn(I)+'"';default:throw new e("impossible error: invalid scalar style")}})()}o(Ya,"writeScalar");function Ha(p,I){let B=xs(p)?String(I):"",S=p[p.length-1]===`
66
+ `,F=S&&(p[p.length-2]===`
67
+ `||p===`
68
+ `)?"+":S?"":"-";return B+F+`
69
+ `}o(Ha,"blockHeader");function Va(p){return p[p.length-1]===`
70
+ `?p.slice(0,-1):p}o(Va,"dropEndingNewline");function ku(p,I){let B=/(\n+)([^\n]*)/g,S=(function(){let M=p.indexOf(`
71
+ `);return M=M!==-1?M:p.length,B.lastIndex=M,Ja(p.slice(0,M),I)})(),D=p[0]===`
72
+ `||p[0]===" ",F,b;for(;b=B.exec(p);){let M=b[1],Y=b[2];F=Y[0]===" ",S+=M+(!D&&!F&&Y!==""?`
73
+ `:"")+Ja(Y,I),D=F}return S}o(ku,"foldString");function Ja(p,I){if(p===""||p[0]===" ")return p;let B=/ [^ ]/g,S,D=0,F,b=0,M=0,Y="";for(;S=B.exec(p);)M=S.index,M-D>I&&(F=b>D?b:M,Y+=`
74
+ `+p.slice(D,F),D=F+1),b=M;return Y+=`
75
+ `,p.length-D>I&&b>D?Y+=p.slice(D,b)+`
76
+ `+p.slice(b+1):Y+=p.slice(D),Y.slice(1)}o(Ja,"foldLine");function Wn(p){let I="",B=0;for(let S=0;S<p.length;B>=65536?S+=2:S++){B=on(p,S);let D=be[B];!D&&qn(B)?(I+=p[S],B>=65536&&(I+=p[S+1])):I+=D||Bn(B)}return I}o(Wn,"escapeString");function Su(p,I,B){let S="",D=p.tag;for(let F=0,b=B.length;F<b;F+=1){let M=B[F];p.replacer&&(M=p.replacer.call(B,String(F),M)),(E(p,I,M,!1,!1)||typeof M>"u"&&E(p,I,null,!1,!1))&&(S!==""&&(S+=","+(p.condenseFlow?"":" ")),S+=p.dump)}p.tag=D,p.dump="["+S+"]"}o(Su,"writeFlowSequence");function to(p,I,B,S){let D="",F=p.tag;for(let b=0,M=B.length;b<M;b+=1){let Y=B[b];p.replacer&&(Y=p.replacer.call(B,String(b),Y)),(E(p,I+1,Y,!0,!0,!1,!0)||typeof Y>"u"&&E(p,I+1,null,!0,!0,!1,!0))&&((!S||D!=="")&&(D+=vs(p,I)),p.dump&&c===p.dump.charCodeAt(0)?D+="-":D+="- ",D+=p.dump)}p.tag=F,p.dump=D||"[]"}o(to,"writeBlockSequence");function vu(p,I,B){let S="",D=p.tag,F=Object.keys(B);for(let b=0,M=F.length;b<M;b+=1){let Y="";S!==""&&(Y+=", "),p.condenseFlow&&(Y+='"');let z=F[b],K=B[z];p.replacer&&(K=p.replacer.call(B,z,K)),E(p,I,z,!1,!1)&&(p.dump.length>1024&&(Y+="? "),Y+=p.dump+(p.condenseFlow?'"':"")+":"+(p.condenseFlow?"":" "),E(p,I,K,!1,!1)&&(Y+=p.dump,S+=Y))}p.tag=D,p.dump="{"+S+"}"}o(vu,"writeFlowMapping");function xu(p,I,B,S){let D="",F=p.tag,b=Object.keys(B);if(p.sortKeys===!0)b.sort();else if(typeof p.sortKeys=="function")b.sort(p.sortKeys);else if(p.sortKeys)throw new e("sortKeys must be a boolean or a function");for(let M=0,Y=b.length;M<Y;M+=1){let z="";(!S||D!=="")&&(z+=vs(p,I));let K=b[M],se=B[K];if(p.replacer&&(se=p.replacer.call(B,K,se)),!E(p,I+1,K,!0,!0,!0))continue;let ce=p.tag!==null&&p.tag!=="?"||p.dump&&p.dump.length>1024;ce&&(p.dump&&c===p.dump.charCodeAt(0)?z+="?":z+="? "),z+=p.dump,ce&&(z+=vs(p,I)),E(p,I+1,se,!0,ce)&&(p.dump&&c===p.dump.charCodeAt(0)?z+=":":z+=": ",z+=p.dump,D+=z)}p.tag=F,p.dump=D||"{}"}o(xu,"writeBlockMapping");function u(p,I,B){let S=B?p.explicitTypes:p.implicitTypes;for(let D=0,F=S.length;D<F;D+=1){let b=S[D];if((b.instanceOf||b.predicate)&&(!b.instanceOf||typeof I=="object"&&I instanceof b.instanceOf)&&(!b.predicate||b.predicate(I))){if(B?b.multi&&b.representName?p.tag=b.representName(I):p.tag=b.tag:p.tag="?",b.represent){let M=p.styleMap[b.tag]||b.defaultStyle,Y;if(r.call(b.represent)==="[object Function]")Y=b.represent(I,M);else if(s.call(b.represent,M))Y=b.represent[M](I,M);else throw new e("!<"+b.tag+'> tag resolver accepts not "'+M+'" style');p.dump=Y}return!0}}return!1}o(u,"detectType");function E(p,I,B,S,D,F,b){p.tag=null,p.dump=B,u(p,B,!1)||u(p,B,!0);let M=r.call(p.dump),Y=S;S&&(S=p.flowLevel<0||p.flowLevel>I);let z=M==="[object Object]"||M==="[object Array]",K,se;if(z&&(K=p.duplicates.indexOf(B),se=K!==-1),(p.tag!==null&&p.tag!=="?"||se||p.indent!==2&&I>0)&&(D=!1),se&&p.usedDuplicates[K])p.dump="*ref_"+K;else{if(z&&se&&!p.usedDuplicates[K]&&(p.usedDuplicates[K]=!0),M==="[object Object]")S&&Object.keys(p.dump).length!==0?(xu(p,I,p.dump,D),se&&(p.dump="&ref_"+K+p.dump)):(vu(p,I,p.dump),se&&(p.dump="&ref_"+K+" "+p.dump));else if(M==="[object Array]")S&&p.dump.length!==0?(p.noArrayIndent&&!b&&I>0?to(p,I-1,p.dump,D):to(p,I,p.dump,D),se&&(p.dump="&ref_"+K+p.dump)):(Su(p,I,p.dump),se&&(p.dump="&ref_"+K+" "+p.dump));else if(M==="[object String]")p.tag!=="?"&&Ya(p,p.dump,I,F,Y);else{if(M==="[object Undefined]")return!1;if(p.skipInvalid)return!1;throw new e("unacceptable kind of an object to dump "+M)}if(p.tag!==null&&p.tag!=="?"){let ce=encodeURI(p.tag[0]==="!"?p.tag.slice(1):p.tag).replace(/!/g,"%21");p.tag[0]==="!"?ce="!"+ce:ce.slice(0,18)==="tag:yaml.org,2002:"?ce="!!"+ce.slice(18):ce="!<"+ce+">",p.dump=ce+" "+p.dump}}return!0}o(E,"writeNode");function R(p,I){let B=[],S=[];k(p,B,S);let D=S.length;for(let F=0;F<D;F+=1)I.duplicates.push(B[S[F]]);I.usedDuplicates=new Array(D)}o(R,"getDuplicateReferences");function k(p,I,B){if(p!==null&&typeof p=="object"){let S=I.indexOf(p);if(S!==-1)B.indexOf(S)===-1&&B.push(S);else if(I.push(p),Array.isArray(p))for(let D=0,F=p.length;D<F;D+=1)k(p[D],I,B);else{let D=Object.keys(p);for(let F=0,b=D.length;F<b;F+=1)k(p[D[F]],I,B)}}}o(k,"inspectNode");function w(p,I){I=I||{};let B=new Ru(I);B.noRefs||R(p,B);let S=p;return B.replacer&&(S=B.replacer.call({"":S},"",S)),E(B,0,S,!0,!0)?B.dump+`
77
+ `:""}return o(w,"dump2"),bl.dump=w,bl}o(d0,"requireDumper");var Cm;function g0(){if(Cm)return Ze;Cm=1;let t=l0(),e=d0();function n(r,s){return function(){throw new Error("Function yaml."+r+" is removed in js-yaml 4. Use yaml."+s+" instead, which is now safe by default.")}}return o(n,"renamed"),Ze.Type=rt(),Ze.Schema=Im(),Ze.FAILSAFE_SCHEMA=wm(),Ze.JSON_SCHEMA=vm(),Ze.CORE_SCHEMA=xm(),Ze.DEFAULT_SCHEMA=Rl(),Ze.load=t.load,Ze.loadAll=t.loadAll,Ze.dump=e.dump,Ze.YAMLException=Qo(),Ze.types={binary:Nm(),float:Sm(),map:Bm(),null:bm(),pairs:Um(),set:Mm(),timestamp:Dm(),bool:Rm(),int:km(),merge:Tm(),omap:Fm(),seq:Qm(),str:ym()},Ze.safeLoad=n("safeLoad","load"),Ze.safeLoadAll=n("safeLoadAll","loadAll"),Ze.safeDump=n("safeDump","dump"),Ze}o(g0,"requireJsYaml");var h0=g0(),p0=c0(h0),{Type:HV,Schema:VV,FAILSAFE_SCHEMA:JV,JSON_SCHEMA:qV,CORE_SCHEMA:jV,DEFAULT_SCHEMA:WV,load:kl,loadAll:f0,dump:zV,YAMLException:ZV,types:KV,safeLoad:XV,safeLoadAll:eJ,safeDump:tJ}=p0;var rJ=qs.join(".skyramp","workspace.yml");var m0={py:"python",go:"go",java:"java",kt:"kotlin",rb:"ruby",cs:"csharp",ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",kts:"kotlin",rs:"rust",php:"php",scala:"scala",swift:"swift",ex:"elixir",exs:"elixir",dart:"dart",c:"c",h:"c",cpp:"cpp",cc:"cpp",cxx:"cpp",hpp:"cpp",hh:"cpp",groovy:"groovy"};var sJ=new Set(Object.values(m0));function xl(t){return Pm(t)&&nl(t).length===0&&rl(t.inputs?.sharedEnvironment).length===0}o(xl,"sutIsHealthy");function Pm(t){let e=b0(t);if(!e&&t.state.stages.deploy?.status!=="passed")return!1;let n=qt(t,"deploy.json");return n?n.outcome==="clean"||n.outcome==="recipe-drift":!e}o(Pm,"sutCameUp");function b0(t){let e=t.state.stages.plan,n=t.state.stages.deploy;return!(t.inputs?.pipeline?t.inputs.pipeline==="two-step":!n)||e?.status!=="passed"?!1:!n||n.updatedAt<=e.updatedAt}o(b0,"broughtUpByPlan");var js=(a=>(a.Place="place",a.Update="update",a.Regenerate="regenerate",a.Delete="delete",a.Verify="verify",a.None="none",a))(js||{}),jt=(r=>(r.Pass="pass",r.Fail="fail",r.Skip="skip",r))(jt||{}),Lt=A.string().trim().min(1),Om=A.object({case:Lt.describe("a covers id \u2014 the recommend case this test realizes"),status:A.nativeEnum(jt)}),Gm=A.object({exit:A.number({invalid_type_error:"must be a number or null"}).nullable().describe("process exit of the re-run; null when no SUT was available"),details:A.string().optional().describe("what failed, or why a file was not run \u2014 required on any non-zero exit"),tests:A.array(Om).optional().describe("ONE ENTRY PER CASE the file covers; must agree with exit (0 \u2192 no fail; non-zero \u2192 at least one)")}),$m=A.object({from:A.string().optional().describe("staged path \u2014 required for placements"),file:Lt.describe("final path relative to its repository, inside that checkout, with a source-file extension"),repository:Lt.optional().describe("owner/repo the file lives in, when the run has several checkouts; omit for the working checkout"),action:A.nativeEnum(js),covers:A.array(A.string()).optional().describe("recommend ids a placed test covers"),repro:A.boolean().optional().describe("this test is MEANT to fail \u2014 it reproduces a reported bug"),finding:A.boolean().optional().describe("a non-repro test that failed on a REAL product bug"),placementBroken:A.boolean().optional().describe('placement/harness problem one repair could not fix \u2014 every reran.tests entry is then "skip"'),keptReason:Lt.optional().describe("why a planned delete/regenerate was declined and the file kept"),isolatedRun:Lt.optional().describe('only for a test marked "runs alone": the command, from its checkout root and without a shell, that runs only this file and writes its JUnit XML into $SKYRAMP_RESULTS_DIR (named by its path: no shell expands it) \u2014 the harness runs it, so leave reran.exit null'),reran:Gm,assertionCount:A.number().int().nonnegative().optional().describe("[derived] assertions reachable from the file, counted at write time")}).refine(t=>t.action!=="place"||typeof t.from=="string"&&t.from.trim().length>0,{message:'is a place but has no "from" staged path',path:[]}),Ym=(n=>(n.Junit="junit",n.Converter="converter",n))(Ym||{}),R0=Lt.optional().describe("the items[].file this test is in \u2014 needed only when two of this suite's files cover the same case id"),k0=A.object({results:Lt.describe("the JUnit XML file this run wrote, a plain file name inside $SKYRAMP_RESULTS_DIR (e.g. backend.xml)"),source:A.nativeEnum(Ym),run:Lt.describe("the command you ran that wrote it, exactly as you ran it (with any converter)"),files:A.array(Lt).min(1).describe("the items[].file paths this run covered"),cases:A.array(A.object({test:Lt.describe("the test's name as the runner reports it, qualified by its class or file (e.g. tests/test_a.py::test_x) when the bare name repeats"),case:Lt.describe("the covers id it realizes"),file:R0})).describe("map each reported test name to the case it covers")}),S0=A.object({suites:A.array(k0).min(1)}),Dl=A.object({schemaVersion:A.literal(1),items:A.array($m),runnerResults:S0.optional().describe("the JUnit XML your test runs wrote into $SKYRAMP_RESULTS_DIR, so the harness reads each test's result from the runner \u2014 omit only when no SUT is available"),ignored:A.array(A.string()).describe("existing tests assessed and deliberately left untouched"),summary:Lt.describe("one paragraph")});var JJ=10*6e4;var zr=He(require("fs"));function Vm(t){let e=[];for(let n of F0(t)){let r=n;r?.type==="tool_use"&&typeof r.name=="string"&&e.push(r.name)}return e}o(Vm,"toolUsesFromTrace");function Jm(t){return Vm(t).some(e=>/^mcp__skyramp__skyramp_(contract|integration)_test_generation$/.test(e))}o(Jm,"usedSkyrampCodegen");function qm(t){return Vm(t).some(e=>e==="mcp__skyramp__skyramp_ui_test_generation")}o(qm,"usedSkyrampUiCodegen");function N0(t){if(!zr.existsSync(t))return{};for(let e of zr.readFileSync(t,"utf-8").split(`
78
+ `)){let n=e.trim();if(n)try{let r=JSON.parse(n);if(r.type==="system"&&r.subtype==="init"&&Array.isArray(r.mcp_servers))return Object.fromEntries(r.mcp_servers.filter(s=>typeof s.name=="string").map(s=>[s.name,typeof s.status=="string"?s.status:"unknown"]))}catch{}}return{}}o(N0,"mcpServerStatuses");function jm(t){let e=N0(t).skyramp;return e===void 0||e==="connected"}o(jm,"skyrampConnected");function F0(t){if(!zr.existsSync(t))return[];let e=[];for(let n of zr.readFileSync(t,"utf-8").split(`
79
+ `)){let r=n.trim();if(!r)continue;let s;try{s=JSON.parse(r)}catch{continue}let i=s.message?.content;Array.isArray(i)&&e.push(...i)}return e}o(F0,"contentBlocks");var U0=A.object({route:A.string().describe('the page this step happens on, e.g. "/products/:id"'),action:A.string().describe('what the user does there, through the UI, e.g. "clicks Add to cart"'),clauses:A.array(A.string()).optional().describe("the plan clause ids this step exercises"),check:A.string().optional().describe("what the user then sees that shows the step worked; the test asserts it")}),Bo=(n=>(n.InProcess="in-process",n.Browser="browser",n))(Bo||{}),Wm=(r=>(r.Spec="spec",r.PrDescription="pr-description",r.Inferred="inferred",r))(Wm||{}),zm=A.object({id:A.string().describe('e.g. "J1"'),name:A.string().describe(`the flow in a user's words, e.g. "buy a product with a coupon"`),entry:A.string().describe("the route the user starts the flow on: the app's normal starting page for it, never a deep link into its middle"),steps:A.array(U0).describe("every step, in order, from the entry page to the outcome: at least two"),outcome:A.string().describe("what the user sees at the end that shows the flow worked: every part of it"),finishes:A.string().optional().describe('the user action that completes the task, verb first, e.g. "places the order"; the journey walks on to it'),kind:A.nativeEnum(Bo).optional().describe("in-process when the repo's in-process tests (components, app routes) can walk the whole flow and check it; else browser"),source:A.nativeEnum(Wm).optional().describe("spec or pr-description when one describes this flow (quote it under evidence), else inferred"),evidence:A.string().optional().describe("for spec or pr-description: its words that describe the flow"),testFile:A.string().describe("the browser test file it goes in, beside the repo's existing e2e tests")}),pA=A.object({journey:A.string().describe("the plan's journey id"),file:A.string().describe("the browser test file that walks it"),brokeAt:A.object({step:A.number().int().describe("the 1-based step whose check failed first"),expected:A.string(),actual:A.string().describe("what the app did instead, from the runner's output"),notReached:A.array(A.number().int()).optional().describe("later steps the test could not get to")}).optional().describe("only when the journey's test failed on a check: where"),test:A.string().describe("the title of the one test in that file that walks it end to end")});var Fl=(s=>(s.RestApi="rest-api",s.Frontend="frontend",s.FullStack="full-stack",s.Other="other",s))(Fl||{}),wo=(s=>(s.Critical="critical",s.High="high",s.Medium="medium",s.Low="low",s))(wo||{}),fA=(r=>(r.Suspected="suspected",r.Latent="latent",r.Refuted="refuted",r))(fA||{}),Km=(r=>(r.Skyramp="skyramp",r.External="external",r.Unknown="unknown",r))(Km||{}),Xm=(s=>(s.Cascade="cascade",s.Restrict="restrict",s.Orphan="orphan",s.Unknown="unknown",s))(Xm||{}),Ws=(s=>(s.RequirementReference="requirement-reference",s.Spec="spec",s.PrDescription="pr-description",s.CouldBreak="could-break",s))(Ws||{}),Ie=A.string().trim().min(1),zs=Ie.describe("file:line"),Zm=o(t=>Ie.refine(e=>e.length<=400,e=>({message:`is ${e.length} characters, over the 400 cap \u2014 ${t}`})),"cap400"),bo=Ie.optional().describe('multi-repo only: the OTHER checkout this lives in \u2014 its "owner/repo" slug, or the directory name if the run discovered it; omit for the working checkout'),Nl=A.object({method:Ie,path:Ie,service:A.string().optional(),evidence:zs,repository:bo}),M0=A.object({id:Ie.describe("short-slug, e.g. R9"),statement:Ie.max(400,"exceeds 400 characters \u2014 state the requirement, do not paste the spec section").describe("a testable obligation, not a summary"),source:A.nativeEnum(Ws).describe("spec outranks pr-description when both state it"),evidence:Ie.describe("spec: file:line or a section locator. pr-description: the quoted phrase it comes from.")}),L0=A.object({id:Ie.describe("short-slug"),statement:Ie.max(400,"exceeds 400 characters \u2014 state the behaviour, do not paste the code").describe("what the change makes true"),surface:Ie.describe("METHOD /path, or a component/page name"),evidence:Ie.describe("file:line from the diff that introduces it"),repository:bo,satisfies:A.array(Ie).optional().describe("requirement ids (from `requirements`) this behaviour correctly implements \u2014 a requirement met only in part is ALSO named by the finding that shows the rest (conflictsWith)")}),_0=A.object({id:Ie.describe("short-slug"),file:Ie,line:A.number().optional(),claim:Zm("shorten it to the one sentence that states the defect, and move the supporting detail into `evidence`"),severity:A.nativeEnum(wo),evidence:Zm("cite the file:line and the one line that shows it, rather than reproducing the surrounding code").describe("quoted diff/code line"),status:A.nativeEnum(fA),repository:bo,conflictsWith:A.array(Ie).optional().describe("requirement ids (from `requirements`) this defect contradicts or leaves unimplemented \u2014 a lower-precedence source (the diff, or the PR description) lost")}),P0=A.object({name:Ie,language:A.string().optional(),framework:A.string().optional(),evidence:zs,repository:bo}),O0=A.object({dir:Ie,framework:A.string().optional(),kind:A.nativeEnum(Km),evidence:zs,repository:bo}),G0=A.object({from:Ie,to:Ie,onDelete:A.nativeEnum(Xm),evidence:zs}),$0=A.object({entity:Ie,field:Ie,values:A.array(A.string()),evidence:zs}),Y0=A.object({entities:A.array(A.object({name:Ie,evidence:zs})),references:A.array(G0).describe("INBOUND references \u2014 what still points at an entity when it is deleted"),stateFields:A.array($0)}),cq=A.object({schemaVersion:A.literal(1),repository:A.object({path:Ie.describe("absolute repo path"),currentBranch:Ie,baseBranch:Ie}),project:A.object({type:A.nativeEnum(Fl),primaryLanguage:Ie,languages:A.array(A.string()),frameworks:A.array(A.string())}),services:A.array(P0),infrastructure:A.object({containerized:A.boolean(),hasDockerCompose:A.boolean(),composeFiles:A.array(A.string()),hasCiCd:A.boolean()}),diff:A.object({changedFiles:A.array(A.string()).describe("as git reports them; a file in another checkout may carry that repo's name"),nonApplicationOnly:A.boolean(),summary:Ie.describe("\u2264400 chars")}),endpoints:A.object({new:A.array(Nl),modified:A.array(Nl),removed:A.array(Nl)}),existingTests:A.object({locations:A.array(O0)}),entityMap:Y0,requirements:A.array(M0).describe("from a spec (attached or linked) and/or the PR description; empty when neither states a testable obligation"),behaviors:A.array(L0),findings:A.array(_0),unexamined:A.array(A.string()).describe("files or areas outside this change you did not open"),summary:Ie.describe("one paragraph on what this change does and its test-relevant risk")});var mA=(n=>(n.Skyramp="skyramp",n.Llm="llm",n))(mA||{}),Dn=A.string().trim().min(1),H0=A.object({case:Dn.describe("recommend id this assertion enforces"),evidence:Dn.describe("the exact assertion line from the file that checks that case's observable")}),V0=A.object({kind:A.nativeEnum(eA),target:Dn.describe("the dependency, endpoint or data it affects"),mechanism:A.nativeEnum(tA).describe("test_code: the test applies and undoes it; skyramp_mocker: a mock the test applies on a Skyramp worker; recipe_override: the mocker cannot reach the dependency (its URL is fixed in the build)"),detail:Dn.describe("what it sets up"),worker:Dn.optional().describe("skyramp_mocker: host:port of the worker the test applies the mock to (default localhost:35142)"),cleanup:Dn.optional().describe("seed: a command, without a shell, that removes the data when the test does not")}),J0=A.object({file:Dn.describe("staged path under .skyramp/staged/"),source:A.nativeEnum(mA),language:Dn,covers:A.array(A.string()).min(1,"must be a non-empty array of recommend ids").describe("recommend ids this test covers"),assertions:A.array(H0).min(1,"must be a non-empty array").describe("one per case covered, citing the real line"),context:A.array(V0).optional().describe("what the test sets up against the running app, in order: data it seeds, Skyramp mocks it applies, env overrides; omit when none")}),Ul=A.object({schemaVersion:A.literal(1),tests:A.array(J0),deferredUi:A.array(A.string()).describe("recommend ui ids left for the UI stage (generate) \u2014 [] for generate-ui"),summary:Dn.describe("one paragraph")});var Zr=A.string().trim().min(1),Ro=72,q0=A.object({repository:Zr.optional().describe("owner/repo of the checkout this lint ran in, when the run has several; omit for the working checkout"),tool:A.string(),command:A.string().describe("the exact command you ran, scoped to the changed files"),clean:A.boolean(),fixed:A.array(A.string()).optional().describe("files you fixed"),uncovered:A.array(A.string()).describe("changed/new files this linter's own config does not match (wrong extension, wrong directory) \u2014 so `clean` never examined them, even though CI may still execute them. Empty array, not omitted, when every changed/new file IS covered.")}),Cq=A.object({schemaVersion:A.literal(1),lint:A.array(q0).min(1).describe("one entry per checkout this run wrote tests in, each run from that checkout"),fileConventions:A.object({ok:A.boolean(),notes:A.string().optional()}),ciReadiness:A.object({covered:A.boolean().describe("will the repo's CI run these tests?"),notes:A.string().optional()}),dependencies:A.object({added:A.array(A.object({package:A.string(),manifest:A.string(),repository:Zr.optional().describe("owner/repo of the manifest's checkout; omit for the working checkout"),reason:Zr.optional().describe("why the test must run inside the application's own test environment, so its manifest had to change \u2014 required for every entry")})).describe("every package added to an APPLICATION manifest (an exception, surfaced in the report); never the Testbot test package's own")}),commit:A.object({message:Zr.refine(t=>t.split(`
80
+ `)[0].length<=Ro,{message:`subject line must be <= ${Ro} chars`})}),pr:A.object({title:Zr.max(Ro,`must be <= ${Ro} chars`),body:Zr}),ready:A.boolean().describe("a statement of fact: true only if the tests are fit to commit as they stand"),blockers:A.array(A.string()).describe("what blocks the commit \u2014 required non-empty when ready is false"),summary:Zr.describe("one paragraph")});var Ar=He(require("fs")),Ks=He(require("path")),iE=require("child_process");var Tn="{junit}",tE=(r=>(r.Junit="junit",r.Trx="trx",r.GoTestJson="go-test-json",r))(tE||{}),nE=(e=>(e.Minitest="minitest",e))(nE||{}),eE=A.string().trim().min(1),Zs=A.object({cwd:eE.describe('repo-relative directory the command starts in ("." for the root)'),argv:A.array(eE).min(1).describe(`the command as separate arguments, run without a shell; for a junit or trx report one argument holds ${Tn}, where the report is written (not for Maven or Gradle, whose build writes its own)`),env:A.record(A.string(),A.string()).optional().describe("plain settings the tests read beyond the repository's CI test job (RAILS_ENV=test, DB_CONNECTION=sqlite); never a credential, PATH, or a tool's install path"),report:A.object({format:A.nativeEnum(tE).describe(`junit (JUnit XML to ${Tn}), trx (to ${Tn}), or go-test-json (go test -json on the command's output)`),reporter:A.nativeEnum(nE).optional().describe("a reporter Testbot loads for a runner that writes no report: minitest")}).optional().describe("the report the command writes; junit when omitted")});var bq=`pytest, Jest, Vitest and node --test tests run as the run already knows them. A test in any other framework also gives "run": the repository's own command for only those tests, from the directory the repository runs it in, as separate arguments without a shell. Its "report" says what the runner writes: junit (JUnit XML to the argument ${Tn}), trx (a TRX file to ${Tn}, which every dotnet test writes with its built-in logger), or go-test-json (go test -json, read from the command's output). A Maven or Gradle command names no ${Tn}: its build writes JUnit XML to its own report directory, which the run reads. Use a reporter the repository already has, or one of those; a reporter or converter the command fetches is the version the repository pins, or else its latest release (an older one may not build with the repository's toolchain). For minitest, which writes none, give report.reporter "minitest" and the run fills ${Tn} itself. A setting the tests read goes in "env" (RAILS_ENV=test): the run sets it, so never wrap the command in a shell to set one. The run executes the command and reads that report.`;var Kr=(s=>(s.ExistingEvidenceSufficient="existing_evidence_sufficient",s.TargetedUnit="targeted_unit",s.RuntimeRequired="runtime_required",s.BlockedPreflight="blocked_preflight",s))(Kr||{}),ar=(i=>(i.ExistingEvidence="existing_evidence",i.Unaffected="unaffected",i.ExistingUnit="existing_unit",i.NewUnit="new_unit",i.Runtime="runtime",i))(ar||{}),Ll=(n=>(n.Repository="repository",n.Testbot="testbot",n))(Ll||{}),_l=(r=>(r.Identified="identified",r.Passed="passed",r.Failed="failed",r))(_l||{}),dt=A.string().trim().min(1),j0=A.string().regex(/^[a-z0-9][a-z0-9-]*$/,"must be a short lowercase slug").describe("short-slug");var W0=A.object({id:j0,source:A.nativeEnum(Ll),kind:A.nativeEnum(tr),outcome:A.nativeEnum(_l),summary:dt.max(400).describe("one line: what it shows"),tests:A.array(dt).optional().describe("source repository: the existing tests, as repo-relative paths, optionally path::test-name"),repository:dt.optional().describe("source repository: owner/repo the tests live in, when the run has several checkouts; omit for the working checkout"),command:dt.optional().describe("source testbot: the exact command you ran, as you ran it"),run:Zs.optional().describe("source repository, for tests in a framework other than pytest, jest, vitest and node --test: how the run executes only these tests, all of them in one command, with the repository's own runner writing JUnit XML to {junit}. Name each test (path::test-name): a test is credited to a file only by its name or by a report that names the file")}),z0=A.object({behaviorId:dt.describe("an id from analyze's behaviors"),mechanism:A.nativeEnum(ar),evidenceIds:A.array(dt).default([]).describe("existing_evidence: the ci-<n> or evidence ids that establish it; existing_unit: the evidence id naming the tests to run"),covers:A.string().trim().optional().describe('new_unit / runtime: the missing evidence this obtains, e.g. "the boundary the change moved"; unaffected: why the change cannot reach it, citing path:line')}),Z0=A.object({behaviorId:A.string().trim().optional().describe("an id from analyze's behaviors, when it is about one"),missing:dt.max(600).describe("the evidence that is required and cannot be obtained in this run")}),K0=A.object({file:dt.describe("the changed file the failure is in"),repository:dt.optional().describe("owner/repo the file is in, when the run has several checkouts; omit for the working checkout"),reason:dt.max(300).describe("what prerequisite the change fails"),evidence:dt.max(400).describe("the error line, quoted")}),X0=A.object({behaviorId:dt.describe("an id from analyze's behaviors"),reason:dt.max(600).describe("\u2264600 characters: why this change leaves the behavior's result as it was, citing the unchanged line that decides it (path:line)")}),ko=A.object({schemaVersion:A.literal(1),decision:A.nativeEnum(Kr),evidence:A.array(W0).describe("evidence this session found or produced; CI results are the ci-<n> items and are not restated here"),plan:A.array(z0).describe("how each changed behavior's evidence is obtained"),gaps:A.array(Z0),outOfScope:A.array(X0).optional().describe("behaviors analyze found that this change neither changes nor states"),blocked:K0.optional().describe("only for blocked_preflight"),rationale:dt.max(1200).describe("\u22641200 characters: why this evidence is enough, or what it still lacks \u2014 the scope you chose and why")});function CA(t){let e=qt(t,"recommend.json");if(!(!e||!Array.isArray(e.generate)||!Array.isArray(e.maintenance)))return e}o(CA,"readRecommend");function nx(t){return xn(Ul,t).errors}o(nx,"validateGenerateOutput");function rx(t,e=[]){let{value:n,error:r}=Mt(t,e);if(r)return{errors:[r]};let s=nx(n);return s.length>0?{errors:s}:{generate:n,errors:[]}}o(rx,"parseGenerateText");function IA(t,e=[]){return rx(t.stdout,e)}o(IA,"parseGenerateFromSession");function sx(t){return t.generate.filter(e=>e.type!=="ui").map(e=>e.id)}o(sx,"backendCases");function oE(t){return t.generate.filter(e=>e.type==="ui").map(e=>e.id)}o(oE,"uiCases");var yA={backend:{stage:"generate",cases:sx,noRecommendCoverage:"recommend.json missing or malformed \u2014 cannot check coverage",noRecommendIntent:"recommend.json missing or malformed \u2014 cannot check intent",uncovered:o(t=>`recommend case "${t}" is not covered by any generated test`,"uncovered"),unknownCovered:o(t=>`test covers unknown recommend id "${t}"`,"unknownCovered"),unasserted:o(t=>`case "${t}" has no verified assertion enforcing its expected_observable`,"unasserted"),usedCodegen:Jm,codegenHint:"These tests were hand-written. Skyramp codegen (skyramp_contract_test_generation / skyramp_integration_test_generation) was available but not used \u2014 it computes valid sample data and response correlations. Prefer scaffolding with it and then refining, especially for the failures above."},ui:{stage:"generate-ui",cases:oE,noRecommendCoverage:"recommend.json not found \u2014 cannot check UI coverage",noRecommendIntent:"recommend.json not found \u2014 cannot check UI intent",uncovered:o(t=>`UI case "${t}" is not covered by any generated UI test`,"uncovered"),unknownCovered:o(t=>`test covers "${t}" which is not a recommend UI case`,"unknownCovered"),unasserted:o(t=>`UI case "${t}" has no verified assertion enforcing its expected_observable`,"unasserted"),usedCodegen:qm,codegenHint:"This UI test was hand-authored. Skyramp UI codegen (skyramp_ui_test_generation) was available but not used. Prefer scaffolding with it and then refining, especially for the failures above."}},aj=sr("generate-schema",(t,e)=>IA(e,t.secretValues));function ix(t){let e=yA[t];return{name:`${e.stage}-coverage`,verify(n,r){let{generate:s,errors:i}=IA(r,n.secretValues);if(!s)return lt(this.name,i);let a=CA(n);if(!a)return lt(this.name,[e.noRecommendCoverage]);let c=new Set(s.tests.flatMap(h=>h.covers)),l=[],d=e.cases(a);for(let h of d)c.has(h)||l.push(e.uncovered(h));let g=new Set(t==="ui"?d:a.generate.map(h=>h.id));for(let h of c)g.has(h)||l.push(e.unknownCovered(h));if(t==="backend"){let h=new Set(s.deferredUi),f=new Set(oE(a));for(let m of f)!h.has(m)&&!c.has(m)&&l.push(`UI case "${m}" is neither covered nor deferred to the UI stage`);for(let m of h)f.has(m)||l.push(`deferredUi lists "${m}" which is not a UI case`)}return l.length===0?{name:this.name,passed:!0}:lt(this.name,l)}}}o(ix,"generateCoverageGateFor");function ox(t){let e=yA[t];return{name:`${e.stage}-intent`,verify(n,r){let{generate:s,errors:i}=IA(r,n.secretValues);if(!s)return lt(this.name,i);let a=CA(n);if(!a)return lt(this.name,[e.noRecommendIntent]);let{asserted:c,errors:l,badFiles:d}=gx(s,n.inputs.repositoryPath),g=l.length;for(let f of e.cases(a))c.has(f)||l.push(e.unasserted(f));if(l.length===0)return{name:this.name,passed:!0};let h=lt(this.name,l);return g>0&&g===l.length&&d.size>0?{...h,droppable:[...d]}:h}}}o(ox,"generateIntentGateFor");function ax(t){let e=yA[t];return n=>{if(!n.inputs.skyrampMcp?.command||t==="backend"&&!xl(n))return;let r=Ks.join(n.outputsDir,`${e.stage}-stream.ndjson`);if(!(!Ar.existsSync(r)||e.usedCodegen(r)))return jm(r)?e.codegenHint:"Skyramp codegen tools were configured but the MCP server did not connect this session, so they were not available. Hand-authoring was the only option; this is an environment problem, not yours."}}o(ax,"codegenRetryHintFor");var Aj=ix("backend"),cj=ox("backend"),uj=ax("backend");var sE=o(t=>t.replace(/\s+/g,""),"squeeze");var Pl={python:[/\bassert\s*[({\w"'`]/g,/\bpytest\.raises\s*\(/g,/\bself\.assert\w*\s*\(/g],typescript:[/\bexpect\s*\(/g,/\.should\b/g,/\bassert\s*[.(]/g],go:[/\bt\.(Error|Errorf|Fatal|Fatalf|Fail|FailNow)\s*\(/g,/\b(assert|require)\.\w+\s*\(/g],java:[/\bassert\w*\s*\(/g,/\bassertThat\s*\(/g],ruby:[/\bexpect\s*[({]/g,/\bassert\w*\b/g,/\.should\b/g]};for(let[t,e]of[["javascript","typescript"],["kotlin","java"]])Pl[t]=Pl[e];function Ax(t,e){if(t.includes(Eo(e))||sE(t).includes(sE(e)))return!0;let n=e.split(/\r?\n/).map(r=>r.trim()).filter(r=>r&&!/^(\/\/|#|\*|\/\*)/.test(r));return n.length>0&&n.every(r=>t.includes(Eo(r)))?!0:dx(t,e)}o(Ax,"evidenceFound");var cx=/\bassert\w*\b|\bexpect\s*\(|\.should\b|\brequire\s*\(/i,ux=12,lx=/,\s*\(\s*#|,\s*f?["'`]|\s+#\s|\s+\/\/|\s*\((?:line|lines|at line)\b|\s*,\s*$/i;function dx(t,e){let n=e.split(/\s*;\s*|\s*\.\.\.\s*|\r?\n/),r=0;for(let s of n){let i=cx.exec(s);if(!i)continue;let a=s.slice(i.index),c=lx.exec(a);if(c&&(a=a.slice(0,c.index)),a=Eo(a).replace(/[,\s]+$/,""),a.length<ux||!t.includes(a))return!1;r++}return r>0}o(dx,"annotatedAssertionFound");function gx(t,e){let n=new Set,r=[],s=new Set;for(let i of t.tests){let a=Ks.resolve(e,i.file);if(!Ar.existsSync(a))continue;let c=Eo(Ar.readFileSync(a,"utf-8"));for(let l of i.assertions??[]){if(!Ax(c,l.evidence)){r.push(`assertion evidence for "${l.case}" not found in ${i.file} \u2014 cite the real assertion line`),s.add(i.file);continue}i.covers.includes(l.case)?n.add(l.case):(r.push(`assertion cites case "${l.case}" not in that test's covers[]`),s.add(i.file))}}return{asserted:n,errors:r,badFiles:s}}o(gx,"verifiedAssertions");var hx=/\.(spec|test)\.[cm]?[jt]sx?$/i;function aE(t){let e;try{e=(0,iE.execFileSync)("git",[...dA,"status","--porcelain","--untracked-files=all"],{env:vn(),cwd:t,encoding:"utf-8",stdio:["ignore","pipe","ignore"]})}catch{return}let n=o(s=>/_scaffold/i.test(s)||uA.test(s),"isTestLitter"),r=[];for(let s of e.split(`
81
+ `)){if(!s.trim()||s.length>1&&s[1]==="D")continue;let i=s.slice(3).trim(),a=i.indexOf(" -> ");if(a!==-1&&(i=i.slice(a+4).trim()),i=i.replace(/^"|"$/g,""),!i)continue;let c=i.replace(/^\.\//,"");c.startsWith(".skyramp/")||!n(c)||r.push(c)}return r}o(aE,"testLitter");function px(t){let e=yA[t],n=t==="ui";return{name:`${e.stage}-no-litter`,verify(r){let s=aE(r.inputs.repositoryPath);if(s===void 0)return{name:this.name,passed:!0};let i=s.filter(a=>hx.test(a)===n);return i.length===0?{name:this.name,passed:!0}:lt(this.name,[`${e.stage} left files outside .skyramp/ \u2014 move the staged test into .skyramp/staged/ and delete any codegen draft (e.g. *_scaffold.*): ${i.slice(0,6).join(", ")}`])}}}o(px,"noLitterGateFor");var lj=px("backend");var So=He(require("fs")),Xr=He(require("path"));function uE(t){return xn(Dl,t).errors}o(uE,"validateAdaptOutput");function Ex(t,e=[]){let{value:n,error:r}=Mt(t,e);if(r)return{errors:[r]};let s=uE(n);return s.length>0?{errors:s}:{adapt:n,errors:[]}}o(Ex,"parseAdaptText");var Cx="adapt-scratch",AE=`${Cx}/adapt-result.json`;function lE(t,e){let n=Xr.join(t.outputsDir,AE),r;try{r=So.readFileSync(n,"utf-8")}catch{r=void 0}if(r!==void 0&&(t.secretValues??[]).some(a=>r.includes(a)))return{errors:[`${AE} contains a secret value (token / credential) \u2014 never write it anywhere`]};let s=Ex(e.stdout,t.secretValues);if(s.adapt)return s;let i=r!==void 0?Ys(n):void 0;return i!==void 0&&uE(i).length===0?{adapt:i,errors:[]}:s}o(lE,"parseAdaptFromSession");var Uj=sr("adapt-schema",lE);var Vj=2*1024*1024;var re=A.string().trim().min(1),yx=o(t=>{if(!t||typeof t!="object")return t;let e=t;return typeof e.skip=="string"&&e.skip.trim()&&(e.expected===void 0||e.expected===null)?{...e,expected:"(not tested)"}:t},"skippedNeedsNoExpected"),Qx=A.preprocess(yx,A.object({id:re.describe(`its requirement's id plus a letter, e.g. "R1a", "AC-3a"`),clause:re.describe("one testable part of the requirement"),expected:re.describe("the outcome the requirement calls for \u2014 taken from the requirement, never from what the code does"),skip:A.string().optional().describe("only when no test can check this clause here: why"),type:A.nativeEnum(ir).optional().describe("the test that checks this clause: contract / integration (the API, or code called directly in-process: a function, hook or module) or ui (a page)"),target:A.string().optional().describe('its "METHOD /path", or the page / flow'),steps:A.string().optional().describe("what that test does; its expected outcome is this clause's"),finding:A.string().optional().describe("the finding id, when this clause's test also catches that defect (the defect still gets a case of its own)"),code:A.string().optional().describe("path:line of the code that decides this clause, when there is one"),mutates:A.boolean().optional().describe("true when its test changes state, in the test or its setup: an API POST, PUT, PATCH or DELETE, or a UI flow that submits, creates, edits or deletes"),browserOnly:A.boolean().optional().describe("true when its behaviour happens only in a browser: real clicks or keys driving page script, client-side sorting or filtering, script-driven DOM updates, focus, drag-and-drop, navigation, rendering that depends on CSS or JavaScript"),browserHarness:A.string().optional().describe("browserOnly, off the runtime path: the path of the repo's in-process browser suite its test goes in (e.g. a Django StaticLiveServerTestCase test that drives Selenium)")})),Bx=A.object({id:re.describe('the label its source gives it ("AC-3", "REQ-12"; item 4 of a numbered list is "R4"), else "R1", "R2"\u2026 in order'),statement:re,source:A.nativeEnum(Ws).describe("requirement-reference (an item the run was given), spec, pr-description (also for what the change is evidently meant to do when nothing is written down), or could-break (what the change could break that no requirement mentions)"),reference:A.string().optional().describe('requirement-reference only: the key of its item as listed, e.g. "PAY-184", or a Confluence page id such as "3021"'),evidence:re.describe("where it is stated: for requirement-reference, the item's own words, copied exactly; else file:line, a doc section, or the quoted phrase"),criterion:A.number().int().positive().optional().describe("requirement-reference only: leave it out; Testbot numbers each criterion by the item's own label (AC2, 2.), else after the item's labels"),notInChange:A.string().optional().describe("requirement-reference only: when the change does not touch this criterion at all (e.g. a later step of a staged rollout), why; give it no clauses"),overrules:A.array(A.object({spec:re.describe("file:line of the spec in the repository"),says:re.describe("what the spec says there, in its own words")})).optional().describe("requirement-reference only: each spec in the repository that says otherwise; the item wins, so test what it says"),clauses:A.array(Qx)}),wx=A.object({id:re.describe('e.g. "F1"'),file:re,line:A.number().optional(),claim:re.describe("the defect, in one sentence"),severity:A.nativeEnum(wo),evidence:re.describe("the code line, or the probe request and response, that shows it"),conflictsWith:A.array(re).optional().describe("requirement or clause ids it violates"),existing:A.string().optional().describe("only when the base already does this, in code the change left as it was: where the base does it (its file:line); such a defect gets no case"),needsApp:A.enum(["browser","live-api"]).optional().describe("only when the running app alone can show this defect and the repo has no in-process test that can: browser (page script, what the user sees after a click or a save) or live-api (code the repo tests only against the running app's API)")}),bx=A.object({id:re.describe('e.g. "Q1"'),question:re.describe("what is unsettled, as a question the PR author can answer"),readings:A.array(re).min(2).describe("each reasonable behaviour, with what points to it (file:line, or the words that suggest it)"),about:A.string().optional().describe("the requirement or clause id it is about, when there is one")}),Rx=A.object({id:re.describe('unique, a short kebab-case name for what the case checks, e.g. "ship-twice-409"'),type:A.nativeEnum(ir).describe("contract / integration: checks the API, or calls code directly in-process (a function, hook or module); ui: checks what a user sees or does on a page"),target:re.describe('"METHOD /path", or the page / flow'),clause:A.string().optional().describe("the clause id this case checks"),finding:A.string().optional().describe("the finding id this case catches"),steps:re.describe("what the test does"),expected:re.describe("the expected outcome, from the clause"),mutates:A.boolean().optional().describe("true when its test changes state, in the test or its setup: an API POST, PUT, PATCH or DELETE, or a UI flow that submits, creates, edits or deletes")}),kx=A.object({test:re.describe("existing test file"),action:A.nativeEnum(Wr),reason:re,mutates:A.boolean().optional().describe("true when the maintained test changes state"),clauses:A.array(re).optional().describe("the clause ids this test checks")}),Sx=A.object({outcome:A.nativeEnum(rr).describe("clean | recipe-drift (you had to fix the recipe) | change-broke-bringup (this PR broke start-up) | bringup-failed (the environment, not the PR)"),baseUrls:A.record(A.string()).optional().describe("service \u2192 base URL of the running app"),health:A.object({url:A.string().optional(),command:A.string().optional(),output:A.string().optional()}).optional().describe("the check that shows the app serves real data, and what it returned"),teardown:A.string().optional().describe("command that stops the app"),dependencies:A.record(A.boolean()).optional().describe("every backing service: true = really running, false = mocked"),recipeFixes:A.array(A.string()).optional().describe("what you changed in the recipe"),error:A.string().optional().describe("when it did not come up: the failing command and what it printed"),suspectFiles:A.array(A.string()).optional().describe("change-broke-bringup: the changed files to blame"),revisions:Gu.optional()}),IW=A.object({schemaVersion:A.literal(1),requirements:A.array(Bx),findings:A.array(wx),cases:A.array(Rx).describe("a second test for a clause, and one case per finding that fails on this branch"),questions:A.array(bx).optional().describe("behaviours the change leaves unsettled; no case asserts any of them"),maintenance:A.array(kx),journeys:A.array(zm).optional().describe("the user journeys that, together, pass through everything the change alters that a user sees or does; empty when it alters nothing a user sees"),notInJourney:A.array(A.object({clause:re,why:re})).optional().describe("a clause a user sees or does that no journey can reach through the UI, and why"),triage:ko.optional().describe("the validation triage decision, made before the app is started; its behaviorIds are clause ids"),app:Sx.optional().describe("omit when no app was needed or none was started"),summary:re.describe("one paragraph: what the change does and where the risk is")});var dE=(n=>(n.Backend="backend",n.Ui="ui",n))(dE||{}),Ol=(s=>(s.Added="added",s.Updated="updated",s.Deleted="deleted",s.Unchanged="unchanged",s))(Ol||{}),vx=A.object({file:re.describe("repo-relative path; in another repo of the change, that repo's directory name then its path"),kind:A.nativeEnum(dE),change:A.nativeEnum(Ol).describe("added: a file you created; updated / deleted / unchanged: an existing test"),covers:A.array(A.string()).describe("the plan case ids this file tests"),defect:A.boolean().optional().describe("true when a case of it fails because the app is wrong and the test is right \u2014 kept failing on purpose"),staleBecause:A.object({requirement:re.describe("the requirement or clause id the change deliberately alters"),line:re.describe("path:line (or path) of the application code the change altered that makes this test's old expectation wrong")}).optional().describe("for an existing test you updated: why it is out of date"),result:A.object({exit:A.number().nullable().describe("exit code of your last run of this file; null if it could not be run"),cases:A.array(A.object({case:re,status:A.nativeEnum(jt),defect:A.boolean().optional().describe("for a failing case: true when the app is wrong and the test is right; false when the test is at fault and you could not fix it"),failure:A.string().optional().describe("for a failing case: the runner's failure for it as printed (the error and the line it was raised at), not a summary"),cause:A.string().optional().describe("for a case you keep as a defect: path:line of the application code that makes it fail"),requires:A.string().optional().describe("for a case you keep as a defect: the words of the PR description or the plan's requirement that state what its failing check expects, quoted exactly")})).describe("one entry per covered case, from the runner's own output"),details:A.string().optional().describe("what failed and why, or why it was not run")}),assertions:A.array(A.object({case:re,evidence:re})).optional().describe("per covered case, the assertion line that checks its expected outcome"),functions:A.array(A.object({name:re.describe("the test function as the runner names it within its file, without the file (test_x, TestClass::test_x, TestSuite/TestCase)"),cases:A.array(re).describe("the plan case ids it checks")})).optional().describe("for a file you added or updated: each test function in it and the plan case ids it checks"),run:Zs.optional().describe(`for a file in a framework other than pytest, jest, vitest and node --test (go test, rails test, mvn, dotnet test), added, updated or re-run: how the run executes only this file's tests, with the repository's own runner and the report it writes (junit or trx to ${Tn}, or go-test-json); Testbot runs it before write ends and re-runs the tests with it`)}),xx=A.object({description:re.describe("what is wrong and how to reproduce it: endpoint or page, input, what you got vs what was expected"),severity:A.nativeEnum(wo).optional(),sourceFile:A.string().optional().describe("the app file at fault"),sourceLine:A.number().optional(),test:A.string().optional().describe("the test file that shows it"),finding:A.string().optional().describe("the plan's finding id, when it is one"),requirements:A.array(re).optional().describe("the plan's requirement or clause ids it violates")}),yW=A.object({schemaVersion:A.literal(1),tests:A.array(vx),notWritten:A.array(A.object({case:re,reason:re})).describe("every plan case no test covers, and why"),journeys:A.array(pA).optional().describe("one entry per planned user journey: the browser test that walks it end to end"),lint:A.object({command:A.string(),clean:A.boolean()}).optional().describe("the linter/formatter you ran on your test files, if the repo has one: the exact command, with its file paths (Testbot re-runs it)"),dependenciesAdded:A.array(A.object({package:re,manifest:re,repository:re.optional().describe("owner/repo of the manifest's checkout; omit for the repo under test"),reason:re.optional().describe("why the test must run inside the application's own test environment, so its manifest had to change \u2014 required for every entry")})).optional().describe("every package you added to an APPLICATION manifest (an exception, surfaced in the report); never the Testbot test package's own"),ciRunsTests:A.boolean().optional().describe("will the repo's CI pick these tests up as they are?"),commit:A.object({message:re.describe('"Skyramp Testbot: \u2026", subject line at most 72 characters'),prTitle:re.describe("at most 72 characters"),prBody:re.describe("what the tests cover and what they found")}),report:A.object({summary:re.describe("1-2 sentences for the PR author: does the change do what it says?"),issues:A.array(xx).describe("every defect the tests found"),nextSteps:A.array(A.string())})});var QW={added:"place",updated:"update",deleted:"delete",unchanged:"verify"};var hE=(r=>(r.Requirement="requirement",r.PrDescription="pr_description",r.Code="code",r))(hE||{}),Je=A.string().trim().min(1),Dx=A.object({expectation:Je.max(300).describe("the behavior this assertion pins, in words"),source:A.nativeEnum(hE),expected:Je.max(200).describe("the exact value or outcome asserted, as the test asserts it")}),Tx=A.object({file:Je.describe("path of the NEW test file you wrote, relative to its repository"),repository:Je.optional().describe("owner/repo the file lives in, when the run has several checkouts; omit for the working checkout"),framework:Je.describe("the framework the repository runs this file with: pytest, jest, vitest, node-test, or the name of any other"),run:Zs.optional().describe("for a framework other than pytest, jest, vitest and node-test: how the run executes only the tests in names, with the repository's own runner writing JUnit XML to {junit}"),covers:A.array(Je).length(1).describe("the ONE behavior id, or defect id, from the plan that the tests in names provide evidence for; a file covering several is listed once per id"),names:A.array(Je).min(1).describe("the test functions/cases in the file that provide evidence for that behavior, as the framework names them"),assertions:A.array(Dx).min(1)}),Gl=(n=>(n.Updated="updated",n.Deleted="deleted",n))(Gl||{}),gE=300,Nx=A.object({file:Je.describe("path of the EXISTING test file you updated or deleted, relative to its repository"),repository:Je.optional().describe("owner/repo the file lives in, when the run has several checkouts; omit for the working checkout"),change:A.nativeEnum(Gl),staleBecause:A.object({requirement:Je.describe("the requirement or clause id the change deliberately alters"),line:Je.describe("path:line (or path) of the application code the change altered that makes this test's old expectation wrong")}).optional().describe("for an existing test you updated: why it is out of date"),reason:A.preprocess(t=>typeof t=="string"?t.trim().slice(0,gE):t,Je.max(gE)).describe("what the change deliberately altered that made the test wrong")}),$l=A.object({schemaVersion:A.literal(1),tests:A.array(Tx),maintained:A.array(Nx).optional().describe("existing tests the change made stale that you updated or deleted; omit when there were none"),defectsNotTested:A.array(A.object({id:Je,reason:Je.max(300)})).optional().describe("defects the plan found that no in-process test can reach, each with why; omit when every defect has a test"),journeys:A.array(pA).optional().describe("one entry per planned user journey: the in-process test that walks it end to end"),journeysNotWritten:A.array(A.object({journey:Je,missing:Je.transform(t=>t.length>300?`${t.slice(0,299)}\u2026`:t)})).optional().describe("a planned journey no in-process test can walk here, with what it needs that is missing; it is reported as not covered"),lint:A.object({command:A.string(),clean:A.boolean()}).optional().describe("the linter/formatter you ran on your test files, if the repository has one you can run; omit otherwise"),commitMessage:Je.optional().describe("the commit message for your tests: a subject line of at most 72 characters, then what they cover")});var qW=5*6e4;function Lx(t){let{value:e,error:n}=Mt(t);if(n)return{errors:[n]};let{value:r,errors:s}=xn($l,e);return s.length?{errors:s}:{output:r,errors:[]}}o(Lx,"parseGenerateUnitText");function _x(t){return Lx(t.stdout)}o(_x,"parseGenerateUnitFromSession");var n9=sr("generate-unit-schema",(t,e)=>_x(e));var QA=String.raw`(?:node:)?(?:http|https|http2|net|tls|dgram)`,r9=[[/\b(localhost|127\.0\.0\.1|0\.0\.0\.0)\b/,"a local server address"],[/^\s*(import|from)\s+(requests|aiohttp|urllib3|websockets?)\b/m,"an HTTP client"],[/^\s*(?:import|from)\s+(?:urllib\.request|http\.client|http\.server|socket|ssl|ftplib|smtplib|telnetlib)\b|^\s*from\s+urllib\s+import\b[^\n]*\brequest\b|\burlopen\s*\(/m,"a standard-library network client"],[/\bfrom\s+["'](axios|node-fetch|undici|ws)["']|require\(\s*["'](axios|node-fetch|undici|ws)["']\s*\)/,"an HTTP client"],[new RegExp(String.raw`\bfrom\s+["']${QA}["']|\bimport\s+["']${QA}["']|require\(\s*["']${QA}["']\s*\)|\bimport\(\s*["']${QA}["']\s*\)`),"Node's network modules"],[/\bfetch\s*\(|\bnew\s+(XMLHttpRequest|WebSocket)\b/,"a network call (fetch, XMLHttpRequest, WebSocket)"],[/\bskyramp\b/i,"the Skyramp runtime (a runtime mock or client)"]];var pE=String.raw`\b(?:real browser|browser|javascript|js|htmx|client-side)\b`,fE=String.raw`\b(?:not|isn't|aren't|never|no)\s+(?:be\s+)?(?:covered|tested|exercised|verified|checked|walked|executed|run)\b|\buncovered\b|\bunverified\b`,C9=[new RegExp(`${pE}[^.;\\n]{0,100}(?:${fE})`,"i"),new RegExp(`(?:${fE})[^.;\\n]{0,100}${pE}`,"i")];var I9=new Set(["targeted_unit","existing_evidence_sufficient"]);var uZ=new Set(["existing_evidence","unaffected","existing_unit","new_unit","runtime"]),lZ={existing_evidence:"existing evidence",unaffected:"showing the change cannot reach it",existing_unit:"running the existing unit tests",new_unit:"a new unit test",runtime:"tests against the running application"};function Gx(t){let{value:e,error:n}=Mt(t);if(n)return{errors:[n]};let{value:r,errors:s}=xn(ko,e);return s.length?{errors:s}:{triage:r,errors:[]}}o(Gx,"parseTriageText");function $x(t){return Gx(t.stdout)}o($x,"parseTriageFromSession");var dZ=sr("triage-schema",(t,e)=>$x(e));var gZ=new Set(["deploy","recommend","generate","generate-ui","adapt","generate-unit","native-run","finalize","deliver"]);var mE=He(require("fs"));var Yx="SKYRAMP_AZURE_SUPERVISED",Hx=3;function Vx(t,e=process.env){e[Yx]==="1"?mE.writeSync(Hx,`${JSON.stringify(t)}
82
+ `):process.stdout.write(t.command!==void 0?`${t.command}
83
+ `:t.text??"")}o(Vx,"writeFrame");function Jx(t){Vx({command:t})}o(Jx,"writeAzureCommand");function EE(t){return t.replace(/%/g,"%AZP25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}o(EE,"escapeData");function qx(t){return EE(t).replace(/;/g,"%3B").replace(/]/g,"%5D")}o(qx,"escapeProperty");function jx(t,e,n){let r=Object.entries(e).map(([s,i])=>`${s}=${qx(i)}`).join(";");return`##vso[${t}${r?` ${r}`:""}]${EE(n)}`}o(jx,"vsoCommand");function Wx(t){if(!t)return[];let e=t.split(/\r?\n/).filter(n=>n.trim()&&n!==t);return[t,...e].map(n=>jx("task.setsecret",{},n))}o(Wx,"setSecretLines");function CE(t,e=Jx){for(let n of Wx(t))e(n)}o(CE,"azureSetSecret");function xo(t){return t.replace(/\/+$/,"")}o(xo,"withoutTrailingSlash");function Yl(t){let e=new URL(t),n=e.pathname.split("/").filter(Boolean);if(n.length)return decodeURIComponent(n[n.length-1]);if(e.hostname.endsWith(".visualstudio.com"))return e.hostname.split(".")[0];throw new Error(`SYSTEM_COLLECTIONURI "${t}" names no organization`)}o(Yl,"azureOrganization");var zx=/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,48}[A-Za-z0-9])?$/,Zx=/[\\/:*?"<>|;#${},+=[\]%\p{Cc}\p{Cf}]/u;function IE(t){return t.length>0&&t.length<=64&&t===t.trim()&&!Zx.test(t)&&!/[^\S ]/u.test(t)&&!/^[._]/.test(t)&&!t.endsWith(".")}o(IE,"isName");function BA(t){return Hl(`${t.namespace}/${t.name}`)}o(BA,"azureRepositoryOfSource");function Hl(t){let e=t.indexOf("/"),n=t.lastIndexOf("/"),r=t.slice(0,e),s=t.slice(e+1,n),i=t.slice(n+1);if(e<0||e===n||!zx.test(r)||!IE(s)||!IE(i))throw new Error(`"${t}" is not an Azure DevOps organization/project/repository`);return{organization:r,project:s,name:i}}o(Hl,"azureRepositoryOf");function yE(t,e){let n=Yl(t);if(n.toLowerCase()!==e.organization.toLowerCase())throw new Error(`${e.organization}/${e.project}/${e.name} is not in ${n}, the Azure DevOps organization this job runs in`)}o(yE,"inOrganization");function QE(t,e){return yE(t,e),`${xo(t)}/${encodeURIComponent(e.project)}/_git/${encodeURIComponent(e.name)}`}o(QE,"azureCloneUrl");function Vl(t,e){return yE(t,e),`${xo(t)}/${encodeURIComponent(e.project)}/_apis/git/repositories/${encodeURIComponent(e.name)}`}o(Vl,"azureRepositoryApi");var Kx="7.1",vo=class extends Error{constructor(n,r){super(n);this.status=r}status;static{o(this,"AzureRestError")}};async function Jl(t){let e=t.accept??"application/json",n=new URL(t.url);n.searchParams.has("api-version")||n.searchParams.set("api-version",Kx);let r=await(t.fetch??fetch)(n.toString(),{method:t.method??"GET",headers:{Authorization:`Bearer ${t.token}`,Accept:e,...t.body!==void 0?{"Content-Type":"application/json"}:{}},...t.body!==void 0?{body:JSON.stringify(t.body)}:{},redirect:"error",signal:AbortSignal.timeout(3e4)});if(!r.ok){let s=(await r.json().catch(()=>({}))).message;throw new vo(`Azure DevOps answered ${r.status}${typeof s=="string"?`: ${s}`:""}`,r.status)}return e!=="application/json"?Buffer.from(await r.arrayBuffer()):r.status===204?{}:await r.json()}o(Jl,"azureRest");function Xx(t){return`AUTHORIZATION: bearer ${t}`}o(Xx,"azureGitAuthorization");function BE(t,e){return{GIT_CONFIG_COUNT:"1",GIT_CONFIG_KEY_0:`http.${xo(t)}/.extraheader`,GIT_CONFIG_VALUE_0:Xx(e)}}o(BE,"azureGitAuthEnv");var eD="7.1-preview.1",tD=".azure-pipelines/skyramp-testbot-v3.yml";function ql(t){return t.GITHUB_ACTIONS!=="true"&&/^true$/i.test(t.TF_BUILD??"")}o(ql,"isAzurePipelines");function RE(t,e={}){let n=o(h=>{let f=t[h];if(!f)throw new Error(`${h} is not set; the V3 runner handshake needs it`);return f},"read"),r=xo(t.SYSTEM_COLLECTIONURI??""),s=o(()=>Yl(n("SYSTEM_COLLECTIONURI")),"organization"),i=t.SYSTEM_TEAMPROJECT,a=t.BUILD_REPOSITORY_NAME,c=t.BUILD_REPOSITORY_ID?.toLowerCase(),l=t.SYSTEM_ACCESSTOKEN,d=e.mask??(h=>CE(h)),g=o(h=>async()=>{if(!h)throw new Error("The job cannot request an OIDC token: the Testbot step's env must set SYSTEM_OIDCREQUESTURI to $(System.OidcRequestUri).");if(!l)throw new Error("The job cannot request an OIDC token: the Testbot step's env must set SYSTEM_ACCESSTOKEN to $(System.AccessToken).");let f=new URL(h);if(f.protocol!=="https:")throw new Error("SYSTEM_OIDCREQUESTURI is not an https URL");f.searchParams.set("api-version",eD);let m=await(e.fetch??fetch)(f.toString(),{method:"POST",headers:{Authorization:`Bearer ${l}`,"Content-Type":"application/json",Accept:"application/json"},body:"{}",redirect:"error",signal:AbortSignal.timeout(3e4)});if(!m.ok)throw new Error(`Azure DevOps refused the OIDC token request: ${m.status}`);let C=(await m.json().catch(()=>({}))).oidcToken;if(typeof C!="string"||!C)throw new Error("Azure DevOps's OIDC token response carried no token");return d(C),C},"mint");return{runnerPlatform:ql(t)?"azure":void 0,workspace:t.BUILD_SOURCESDIRECTORY||void 0,serverUrl:r,apiUrl:r,repository:c&&i&&a&&r?{id:c,slug:`${s()}/${i}/${a}`}:void 0,runId:t.BUILD_BUILDID||void 0,runAttempt:t.SYSTEM_STAGEATTEMPT||void 0,job:t.SYSTEM_JOBNAME||void 0,execution(){let h=n("SYSTEM_STAGEATTEMPT");if(!/^[1-9][0-9]*$/.test(h))throw new Error(`SYSTEM_STAGEATTEMPT is "${h}", not a positive whole number`);let f=n("SYSTEM_COLLECTIONID").toLowerCase();if(!$s.test(f))throw new Error(`SYSTEM_COLLECTIONID is "${f}", not a GUID`);let m=n("BUILD_REPOSITORY_ID").toLowerCase();if(!$s.test(m))throw new Error(`BUILD_REPOSITORY_ID is "${m}", not a GUID`);let C=[s(),n("SYSTEM_TEAMPROJECT"),n("SYSTEM_DEFINITIONID"),n("BUILD_BUILDID")].map(encodeURIComponent).join("/");return{provider:"azure-devops",repository:{provider:"azure-devops",providerAccountId:f,providerRepositoryId:m},providerRunId:C,providerRunAttempt:Number(h),workflowRef:`${tD}@${n("BUILD_SOURCEBRANCH")}`}},takeIdToken(){let h=t.SYSTEM_OIDCREQUESTURI;delete t.SYSTEM_OIDCREQUESTURI;let f=g(h);return()=>f()},takeSourceToken(){return delete t.SYSTEM_ACCESSTOKEN,l||void 0},webIdentity(){if(!t.SYSTEM_OIDCREQUESTURI?.trim()||!l)return;let h=g(t.SYSTEM_OIDCREQUESTURI);return{token:o(()=>h(),"token"),runId:t.BUILD_BUILDID}},v3RunsOnly:!0,assumesBedrockRole:!0,namesSourceToMcp:!0,checkSourceName(h){BA(h)},cloneUrl(h){return QE(r,BA(h))},gitAuthEnv(h){return BE(r,h)},async pullRequest(h,f,m){let C=await Jl({token:await m.token(),url:`${Vl(r,BA(h))}/pullrequests/${f}`,fetch:m.fetch}),y=C.status==="completed";return{...typeof C.title=="string"?{title:C.title}:{},...typeof C.description=="string"?{body:C.description}:{},...typeof C.status=="string"?{merged:y}:{},...y&&typeof C.lastMergeCommit?.commitId=="string"?{mergeCommit:C.lastMergeCommit.commitId}:{},...y&&typeof C.lastMergeSourceCommit?.commitId=="string"?{mergedHead:C.lastMergeSourceCommit.commitId}:{}}},async commit(h,f,m){let C;try{C=Vl(r,Hl(h))}catch{return{lookup:"unknown"}}try{let y=await Jl({token:await m.token(),url:`${C}/commits/${encodeURIComponent(f)}`,fetch:m.fetch});return typeof y.commitId=="string"?{sha:y.commitId}:{lookup:"missing"}}catch(y){return{lookup:y instanceof vo&&(y.status===404||y.status===400)?"missing":"unknown"}}}}}o(RE,"azureRunnerHost");var SE=He(require("os"),1);function Do(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}o(Do,"toCommandValue");function Wl(t,e,n){let r=new jl(t,e,n);process.stdout.write(r.toString()+SE.EOL)}o(Wl,"issueCommand");var kE="::",jl=class{static{o(this,"Command")}constructor(e,n,r){e||(e="missing.command"),this.command=e,this.properties=n,this.message=r}toString(){let e=kE+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let n=!0;for(let r in this.properties)if(this.properties.hasOwnProperty(r)){let s=this.properties[r];s&&(n?n=!1:e+=",",e+=`${r}=${rD(s)}`)}}return e+=`${kE}${nD(this.message)}`,e}};function nD(t){return Do(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}o(nD,"escapeData");function rD(t){return Do(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}o(rD,"escapeProperty");var Fa=He(require("http"),1),kp=He(require("https"),1);function zl(t){let e=t.protocol==="https:";if(sD(t))return;let n=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(n)try{return new wA(n)}catch{if(!n.startsWith("http://")&&!n.startsWith("https://"))return new wA(`http://${n}`)}else return}o(zl,"getProxyUrl");function sD(t){if(!t.hostname)return!1;let e=t.hostname;if(iD(e))return!0;let n=process.env.no_proxy||process.env.NO_PROXY||"";if(!n)return!1;let r;t.port?r=Number(t.port):t.protocol==="http:"?r=80:t.protocol==="https:"&&(r=443);let s=[t.hostname.toUpperCase()];typeof r=="number"&&s.push(`${s[0]}:${r}`);for(let i of n.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(i==="*"||s.some(a=>a===i||a.endsWith(`.${i}`)||i.startsWith(".")&&a.endsWith(`${i}`)))return!0;return!1}o(sD,"checkBypass");function iD(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}o(iD,"isLoopbackAddress");var wA=class extends URL{static{o(this,"DecodedURL")}constructor(e,n){super(e,n),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var kr=He(FE(),1),ok=He(ik(),1);var Le=function(t,e,n,r){function s(i){return i instanceof n?i:new n(function(a){a(i)})}return o(s,"adopt"),new(n||(n=Promise))(function(i,a){function c(g){try{d(r.next(g))}catch(h){a(h)}}o(c,"fulfilled");function l(g){try{d(r.throw(g))}catch(h){a(h)}}o(l,"rejected");function d(g){g.done?i(g.value):s(g.value).then(c,l)}o(d,"step"),d((r=r.apply(t,e||[])).next())})},Ht;(function(t){t[t.OK=200]="OK",t[t.MultipleChoices=300]="MultipleChoices",t[t.MovedPermanently=301]="MovedPermanently",t[t.ResourceMoved=302]="ResourceMoved",t[t.SeeOther=303]="SeeOther",t[t.NotModified=304]="NotModified",t[t.UseProxy=305]="UseProxy",t[t.SwitchProxy=306]="SwitchProxy",t[t.TemporaryRedirect=307]="TemporaryRedirect",t[t.PermanentRedirect=308]="PermanentRedirect",t[t.BadRequest=400]="BadRequest",t[t.Unauthorized=401]="Unauthorized",t[t.PaymentRequired=402]="PaymentRequired",t[t.Forbidden=403]="Forbidden",t[t.NotFound=404]="NotFound",t[t.MethodNotAllowed=405]="MethodNotAllowed",t[t.NotAcceptable=406]="NotAcceptable",t[t.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",t[t.RequestTimeout=408]="RequestTimeout",t[t.Conflict=409]="Conflict",t[t.Gone=410]="Gone",t[t.TooManyRequests=429]="TooManyRequests",t[t.InternalServerError=500]="InternalServerError",t[t.NotImplemented=501]="NotImplemented",t[t.BadGateway=502]="BadGateway",t[t.ServiceUnavailable=503]="ServiceUnavailable",t[t.GatewayTimeout=504]="GatewayTimeout"})(Ht||(Ht={}));var at;(function(t){t.Accept="accept",t.ContentType="content-type"})(at||(at={}));var Vn;(function(t){t.ApplicationJson="application/json"})(Vn||(Vn={}));var kY=[Ht.MovedPermanently,Ht.ResourceMoved,Ht.SeeOther,Ht.TemporaryRedirect,Ht.PermanentRedirect],SY=[Ht.BadGateway,Ht.ServiceUnavailable,Ht.GatewayTimeout],vY=["OPTIONS","GET","DELETE","HEAD"],xY=10,DY=5,bp=class t extends Error{static{o(this,"HttpClientError")}constructor(e,n){super(e),this.name="HttpClientError",this.statusCode=n,Object.setPrototypeOf(this,t.prototype)}},Rp=class{static{o(this,"HttpClientResponse")}constructor(e){this.message=e}readBody(){return Le(this,void 0,void 0,function*(){return new Promise(e=>Le(this,void 0,void 0,function*(){let n=Buffer.alloc(0);this.message.on("data",r=>{n=Buffer.concat([n,r])}),this.message.on("end",()=>{e(n.toString())})}))})}readBodyBuffer(){return Le(this,void 0,void 0,function*(){return new Promise(e=>Le(this,void 0,void 0,function*(){let n=[];this.message.on("data",r=>{n.push(r)}),this.message.on("end",()=>{e(Buffer.concat(n))})}))})}};var yu=class{static{o(this,"HttpClient")}constructor(e,n,r){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=this._getUserAgentWithOrchestrationId(e),this.handlers=n||[],this.requestOptions=r,r&&(r.ignoreSslError!=null&&(this._ignoreSslError=r.ignoreSslError),this._socketTimeout=r.socketTimeout,r.allowRedirects!=null&&(this._allowRedirects=r.allowRedirects),r.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=r.allowRedirectDowngrade),r.maxRedirects!=null&&(this._maxRedirects=Math.max(r.maxRedirects,0)),r.keepAlive!=null&&(this._keepAlive=r.keepAlive),r.allowRetries!=null&&(this._allowRetries=r.allowRetries),r.maxRetries!=null&&(this._maxRetries=r.maxRetries))}options(e,n){return Le(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,n||{})})}get(e,n){return Le(this,void 0,void 0,function*(){return this.request("GET",e,null,n||{})})}del(e,n){return Le(this,void 0,void 0,function*(){return this.request("DELETE",e,null,n||{})})}post(e,n,r){return Le(this,void 0,void 0,function*(){return this.request("POST",e,n,r||{})})}patch(e,n,r){return Le(this,void 0,void 0,function*(){return this.request("PATCH",e,n,r||{})})}put(e,n,r){return Le(this,void 0,void 0,function*(){return this.request("PUT",e,n,r||{})})}head(e,n){return Le(this,void 0,void 0,function*(){return this.request("HEAD",e,null,n||{})})}sendStream(e,n,r,s){return Le(this,void 0,void 0,function*(){return this.request(e,n,r,s)})}getJson(e){return Le(this,arguments,void 0,function*(n,r={}){r[at.Accept]=this._getExistingOrDefaultHeader(r,at.Accept,Vn.ApplicationJson);let s=yield this.get(n,r);return this._processResponse(s,this.requestOptions)})}postJson(e,n){return Le(this,arguments,void 0,function*(r,s,i={}){let a=JSON.stringify(s,null,2);i[at.Accept]=this._getExistingOrDefaultHeader(i,at.Accept,Vn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Vn.ApplicationJson);let c=yield this.post(r,a,i);return this._processResponse(c,this.requestOptions)})}putJson(e,n){return Le(this,arguments,void 0,function*(r,s,i={}){let a=JSON.stringify(s,null,2);i[at.Accept]=this._getExistingOrDefaultHeader(i,at.Accept,Vn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Vn.ApplicationJson);let c=yield this.put(r,a,i);return this._processResponse(c,this.requestOptions)})}patchJson(e,n){return Le(this,arguments,void 0,function*(r,s,i={}){let a=JSON.stringify(s,null,2);i[at.Accept]=this._getExistingOrDefaultHeader(i,at.Accept,Vn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Vn.ApplicationJson);let c=yield this.patch(r,a,i);return this._processResponse(c,this.requestOptions)})}request(e,n,r,s){return Le(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let i=new URL(n),a=this._prepareRequest(e,i,s),c=this._allowRetries&&vY.includes(e)?this._maxRetries+1:1,l=0,d;do{if(d=yield this.requestRaw(a,r),d&&d.message&&d.message.statusCode===Ht.Unauthorized){let h;for(let f of this.handlers)if(f.canHandleAuthentication(d)){h=f;break}return h?h.handleAuthentication(this,a,r):d}let g=this._maxRedirects;for(;d.message.statusCode&&kY.includes(d.message.statusCode)&&this._allowRedirects&&g>0;){let h=d.message.headers.location;if(!h)break;let f=new URL(h);if(i.protocol==="https:"&&i.protocol!==f.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(yield d.readBody(),f.hostname!==i.hostname)for(let m in s)m.toLowerCase()==="authorization"&&delete s[m];a=this._prepareRequest(e,f,s),d=yield this.requestRaw(a,r),g--}if(!d.message.statusCode||!SY.includes(d.message.statusCode))return d;l+=1,l<c&&(yield d.readBody(),yield this._performExponentialBackoff(l))}while(l<c);return d})}dispose(){this._agent&&this._agent.destroy(),this._disposed=!0}requestRaw(e,n){return Le(this,void 0,void 0,function*(){return new Promise((r,s)=>{function i(a,c){a?s(a):c?r(c):s(new Error("Unknown error"))}o(i,"callbackForResult"),this.requestRawWithCallback(e,n,i)})})}requestRawWithCallback(e,n,r){typeof n=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(n,"utf8"));let s=!1;function i(l,d){s||(s=!0,r(l,d))}o(i,"handleResult");let a=e.httpModule.request(e.options,l=>{let d=new Rp(l);i(void 0,d)}),c;a.on("socket",l=>{c=l}),a.setTimeout(this._socketTimeout||3*6e4,()=>{c&&c.end(),i(new Error(`Request timeout: ${e.options.path}`))}),a.on("error",function(l){i(l)}),n&&typeof n=="string"&&a.write(n,"utf8"),n&&typeof n!="string"?(n.on("close",function(){a.end()}),n.pipe(a)):a.end()}getAgent(e){let n=new URL(e);return this._getAgent(n)}getAgentDispatcher(e){let n=new URL(e),r=zl(n);if(r&&r.hostname)return this._getProxyAgentDispatcher(n,r)}_prepareRequest(e,n,r){let s={};s.parsedUrl=n;let i=s.parsedUrl.protocol==="https:";s.httpModule=i?kp:Fa;let a=i?443:80;if(s.options={},s.options.host=s.parsedUrl.hostname,s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):a,s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||""),s.options.method=e,s.options.headers=this._mergeHeaders(r),this.userAgent!=null&&(s.options.headers["user-agent"]=this.userAgent),s.options.agent=this._getAgent(s.parsedUrl),this.handlers)for(let c of this.handlers)c.prepareRequest(s.options);return s}_mergeHeaders(e){return this.requestOptions&&this.requestOptions.headers?Object.assign({},Na(this.requestOptions.headers),Na(e||{})):Na(e||{})}_getExistingOrDefaultHeader(e,n,r){let s;if(this.requestOptions&&this.requestOptions.headers){let a=Na(this.requestOptions.headers)[n];a&&(s=typeof a=="number"?a.toString():a)}let i=e[n];return i!==void 0?typeof i=="number"?i.toString():i:s!==void 0?s:r}_getExistingOrDefaultContentTypeHeader(e,n){let r;if(this.requestOptions&&this.requestOptions.headers){let i=Na(this.requestOptions.headers)[at.ContentType];i&&(typeof i=="number"?r=String(i):Array.isArray(i)?r=i.join(", "):r=i)}let s=e[at.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:r!==void 0?r:n}_getAgent(e){let n,r=zl(e),s=r&&r.hostname;if(this._keepAlive&&s&&(n=this._proxyAgent),s||(n=this._agent),n)return n;let i=e.protocol==="https:",a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||Fa.globalAgent.maxSockets),r&&r.hostname){let c={maxSockets:a,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(r.username||r.password)&&{proxyAuth:`${r.username}:${r.password}`}),{host:r.hostname,port:r.port})},l,d=r.protocol==="https:";i?l=d?kr.httpsOverHttps:kr.httpsOverHttp:l=d?kr.httpOverHttps:kr.httpOverHttp,n=l(c),this._proxyAgent=n}if(!n){let c={keepAlive:this._keepAlive,maxSockets:a};n=i?new kp.Agent(c):new Fa.Agent(c),this._agent=n}return i&&this._ignoreSslError&&(n.options=Object.assign(n.options||{},{rejectUnauthorized:!1})),n}_getProxyAgentDispatcher(e,n){let r;if(this._keepAlive&&(r=this._proxyAgentDispatcher),r)return r;let s=e.protocol==="https:";return r=new ok.ProxyAgent(Object.assign({uri:n.href,pipelining:this._keepAlive?1:0},(n.username||n.password)&&{token:`Basic ${Buffer.from(`${n.username}:${n.password}`).toString("base64")}`})),this._proxyAgentDispatcher=r,s&&this._ignoreSslError&&(r.options=Object.assign(r.options.requestTls||{},{rejectUnauthorized:!1})),r}_getUserAgentWithOrchestrationId(e){let n=e||"actions/http-client",r=process.env.ACTIONS_ORCHESTRATION_ID;if(r){let s=r.replace(/[^a-z0-9_.-]/gi,"_");return`${n} actions_orchestration_id/${s}`}return n}_performExponentialBackoff(e){return Le(this,void 0,void 0,function*(){e=Math.min(xY,e);let n=DY*Math.pow(2,e);return new Promise(r=>setTimeout(()=>r(),n))})}_processResponse(e,n){return Le(this,void 0,void 0,function*(){return new Promise((r,s)=>Le(this,void 0,void 0,function*(){let i=e.message.statusCode||0,a={statusCode:i,result:null,headers:{}};i===Ht.NotFound&&r(a);function c(g,h){if(typeof h=="string"){let f=new Date(h);if(!isNaN(f.valueOf()))return f}return h}o(c,"dateTimeDeserializer");let l,d;try{d=yield e.readBody(),d&&d.length>0&&(n&&n.deserializeDates?l=JSON.parse(d,c):l=JSON.parse(d),a.result=l),a.headers=e.message.headers}catch{}if(i>299){let g;l&&l.message?g=l.message:d&&d.length>0?g=d:g=`Failed request: (${i})`;let h=new bp(g,i);h.result=a.result,s(h)}else r(a)}))})}},Na=o(t=>Object.keys(t).reduce((e,n)=>(e[n.toLowerCase()]=t[n],e),{}),"lowercaseKeys");var TY=function(t,e,n,r){function s(i){return i instanceof n?i:new n(function(a){a(i)})}return o(s,"adopt"),new(n||(n=Promise))(function(i,a){function c(g){try{d(r.next(g))}catch(h){a(h)}}o(c,"fulfilled");function l(g){try{d(r.throw(g))}catch(h){a(h)}}o(l,"rejected");function d(g){g.done?i(g.value):s(g.value).then(c,l)}o(d,"step"),d((r=r.apply(t,e||[])).next())})};var Qu=class{static{o(this,"BearerCredentialHandler")}constructor(e){this.token=e}prepareRequest(e){if(!e.headers)throw Error("The request has no headers");e.headers.Authorization=`Bearer ${this.token}`}canHandleAuthentication(){return!1}handleAuthentication(){return TY(this,void 0,void 0,function*(){throw new Error("not implemented")})}};var ak=function(t,e,n,r){function s(i){return i instanceof n?i:new n(function(a){a(i)})}return o(s,"adopt"),new(n||(n=Promise))(function(i,a){function c(g){try{d(r.next(g))}catch(h){a(h)}}o(c,"fulfilled");function l(g){try{d(r.throw(g))}catch(h){a(h)}}o(l,"rejected");function d(g){g.done?i(g.value):s(g.value).then(c,l)}o(d,"step"),d((r=r.apply(t,e||[])).next())})},Bu=class t{static{o(this,"OidcClient")}static createHttpClient(e=!0,n=10){let r={allowRetries:e,maxRetries:n};return new yu("actions/oidc-client",[new Qu(t.getRequestToken())],r)}static getRequestToken(){let e=process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable");return e}static getIDTokenUrl(){let e=process.env.ACTIONS_ID_TOKEN_REQUEST_URL;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable");return e}static getCall(e){return ak(this,void 0,void 0,function*(){var n;let i=(n=(yield t.createHttpClient().getJson(e).catch(a=>{throw new Error(`Failed to get ID Token.
84
+
85
+ Error Code : ${a.statusCode}
86
+
87
+ Error Message: ${a.message}`)})).result)===null||n===void 0?void 0:n.value;if(!i)throw new Error("Response json body do not have ID Token field");return i})}static getIDToken(e){return ak(this,void 0,void 0,function*(){try{let n=t.getIDTokenUrl();if(e){let s=encodeURIComponent(e);n=`${n}&audience=${s}`}Ak(`ID token url is ${n}`);let r=yield t.getCall(n);return Ua(r),r}catch(n){throw new Error(`Error message: ${n.message}`)}})}};var uk=require("os"),Ma=require("fs");var Sp=function(t,e,n,r){function s(i){return i instanceof n?i:new n(function(a){a(i)})}return o(s,"adopt"),new(n||(n=Promise))(function(i,a){function c(g){try{d(r.next(g))}catch(h){a(h)}}o(c,"fulfilled");function l(g){try{d(r.throw(g))}catch(h){a(h)}}o(l,"rejected");function d(g){g.done?i(g.value):s(g.value).then(c,l)}o(d,"step"),d((r=r.apply(t,e||[])).next())})},{access:NY,appendFile:FY,writeFile:UY}=Ma.promises,ck="GITHUB_STEP_SUMMARY";var vp=class{static{o(this,"Summary")}constructor(){this._buffer=""}filePath(){return Sp(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[ck];if(!e)throw new Error(`Unable to find environment variable for $${ck}. Check if your runtime environment supports job summaries.`);try{yield NY(e,Ma.constants.R_OK|Ma.constants.W_OK)}catch{throw new Error(`Unable to access summary file: '${e}'. Check if the file has correct read/write permissions.`)}return this._filePath=e,this._filePath})}wrap(e,n,r={}){let s=Object.entries(r).map(([i,a])=>` ${i}="${a}"`).join("");return n?`<${e}${s}>${n}</${e}>`:`<${e}${s}>`}write(e){return Sp(this,void 0,void 0,function*(){let n=!!e?.overwrite,r=yield this.filePath();return yield(n?UY:FY)(r,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return Sp(this,void 0,void 0,function*(){return this.emptyBuffer().write({overwrite:!0})})}stringify(){return this._buffer}isEmptyBuffer(){return this._buffer.length===0}emptyBuffer(){return this._buffer="",this}addRaw(e,n=!1){return this._buffer+=e,n?this.addEOL():this}addEOL(){return this.addRaw(uk.EOL)}addCodeBlock(e,n){let r=Object.assign({},n&&{lang:n}),s=this.wrap("pre",this.wrap("code",e),r);return this.addRaw(s).addEOL()}addList(e,n=!1){let r=n?"ol":"ul",s=e.map(a=>this.wrap("li",a)).join(""),i=this.wrap(r,s);return this.addRaw(i).addEOL()}addTable(e){let n=e.map(s=>{let i=s.map(a=>{if(typeof a=="string")return this.wrap("td",a);let{header:c,data:l,colspan:d,rowspan:g}=a,h=c?"th":"td",f=Object.assign(Object.assign({},d&&{colspan:d}),g&&{rowspan:g});return this.wrap(h,l,f)}).join("");return this.wrap("tr",i)}).join(""),r=this.wrap("table",n);return this.addRaw(r).addEOL()}addDetails(e,n){let r=this.wrap("details",this.wrap("summary",e)+n);return this.addRaw(r).addEOL()}addImage(e,n,r){let{width:s,height:i}=r||{},a=Object.assign(Object.assign({},s&&{width:s}),i&&{height:i}),c=this.wrap("img",null,Object.assign({src:e,alt:n},a));return this.addRaw(c).addEOL()}addHeading(e,n){let r=`h${n}`,s=["h1","h2","h3","h4","h5","h6"].includes(r)?r:"h1",i=this.wrap(s,e);return this.addRaw(i).addEOL()}addSeparator(){let e=this.wrap("hr",null);return this.addRaw(e).addEOL()}addBreak(){let e=this.wrap("br",null);return this.addRaw(e).addEOL()}addQuote(e,n){let r=Object.assign({},n&&{cite:n}),s=this.wrap("blockquote",e,r);return this.addRaw(s).addEOL()}addLink(e,n){let r=this.wrap("a",e,{href:n});return this.addRaw(r).addEOL()}},y3=new vp;var xp=He(require("os"),1);var wu=He(require("fs"),1);var{chmod:MY,copyFile:LY,lstat:_Y,mkdir:PY,open:R3,readdir:OY,rename:GY,rm:$Y,rmdir:k3,stat:YY,symlink:HY,unlink:VY}=wu.promises,JY=process.platform==="win32";var S3=wu.constants.O_RDONLY;var U3=process.platform==="win32";var G3=xp.default.platform(),$3=xp.default.arch();var XY=function(t,e,n,r){function s(i){return i instanceof n?i:new n(function(a){a(i)})}return o(s,"adopt"),new(n||(n=Promise))(function(i,a){function c(g){try{d(r.next(g))}catch(h){a(h)}}o(c,"fulfilled");function l(g){try{d(r.throw(g))}catch(h){a(h)}}o(l,"rejected");function d(g){g.done?i(g.value):s(g.value).then(c,l)}o(d,"step"),d((r=r.apply(t,e||[])).next())})},dk;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(dk||(dk={}));function Ua(t){Wl("add-mask",{},t)}o(Ua,"setSecret");function Ak(t){Wl("debug",{},t)}o(Ak,"debug");function gk(t){return XY(this,void 0,void 0,function*(){return yield Bu.getIDToken(t)})}o(gk,"getIDToken");var e2=5e3,Dp=/^(?!\.\.?$)[A-Za-z0-9._-]{1,100}$/;function t2(t){let e=Buffer.from(`x-access-token:${t}`).toString("base64");return Ua(e),`AUTHORIZATION: basic ${e}`}o(t2,"githubGitAuthorization");function pk(t,e={}){let n=o(l=>{let d=t[l];if(!d)throw new Error(`${l} is not set; the V3 runner handshake needs it`);return d},"read"),r=t.GITHUB_REPOSITORY_ID,s=t.GITHUB_REPOSITORY,i=(t.GITHUB_SERVER_URL||"https://github.com").replace(/\/+$/,""),a=(t.GITHUB_API_URL||"https://api.github.com").replace(/\/+$/,""),c=o(async(l,d)=>d.fetch(l,{headers:{Authorization:`Bearer ${await d.token()}`,Accept:"application/vnd.github+json"},redirect:"error",signal:AbortSignal.timeout(3e4)}),"get");return{runnerPlatform:t.GITHUB_ACTIONS==="true"?"github":void 0,workspace:t.GITHUB_WORKSPACE||void 0,serverUrl:i,apiUrl:a,repository:r&&s?{id:r,slug:s}:void 0,runId:t.GITHUB_RUN_ID||void 0,runAttempt:t.GITHUB_RUN_ATTEMPT||void 0,job:t.GITHUB_JOB||void 0,execution(){let l=n("GITHUB_RUN_ATTEMPT");if(!/^[1-9][0-9]*$/.test(l))throw new Error(`GITHUB_RUN_ATTEMPT is "${l}", not a positive whole number`);return{provider:"github",repository:{provider:"github",providerAccountId:n("GITHUB_REPOSITORY_OWNER_ID"),providerRepositoryId:n("GITHUB_REPOSITORY_ID")},providerRunId:n("GITHUB_RUN_ID"),providerRunAttempt:Number(l),workflowRef:n("GITHUB_WORKFLOW_REF")}},takeIdToken(){let l=t.ACTIONS_ID_TOKEN_REQUEST_URL,d=t.ACTIONS_ID_TOKEN_REQUEST_TOKEN;return delete t.ACTIONS_ID_TOKEN_REQUEST_URL,delete t.ACTIONS_ID_TOKEN_REQUEST_TOKEN,async g=>{if(!l||!d)throw new Error("The job cannot request an OIDC token. Give it the `id-token: write` permission.");let h=new URL(l);h.searchParams.set("audience",g);let f=await fetch(h,{headers:{Authorization:`Bearer ${d}`,Accept:"application/json"},redirect:"error",signal:AbortSignal.timeout(3e4)});if(!f.ok)throw new Error(`GitHub refused the OIDC token request: ${f.status}`);let m=(await f.json().catch(()=>({}))).value;if(typeof m!="string"||!m)throw new Error("GitHub's OIDC token response carried no token");return Ua(m),m}},webIdentity(){return!t.ACTIONS_ID_TOKEN_REQUEST_TOKEN?.trim()||!t.ACTIONS_ID_TOKEN_REQUEST_URL?.trim()?void 0:{token:e.getIDToken??(d=>gk(d)),runId:t.GITHUB_RUN_ID}},v3RunsOnly:!1,assumesBedrockRole:!1,namesSourceToMcp:!1,checkSourceName(l){for(let d of[l.namespace,l.name])if(!Dp.test(d))throw new Error(`"${d}" is not a repository name`)},cloneUrl(l){return`${i}/${l.namespace}/${l.name}.git`},gitAuthEnv(l){return l?{GIT_CONFIG_COUNT:"1",GIT_CONFIG_KEY_0:`http.${i}/.extraheader`,GIT_CONFIG_VALUE_0:t2(l)}:{}},async pullRequest({namespace:l,name:d},g,h){if(![l,d].every(C=>Dp.test(C)))throw new Error("the repository name is not valid");let f=await c(`${a}/repos/${l}/${d}/pulls/${g}`,h);if(!f.ok)throw new Error(`GitHub answered ${f.status}`);let m=await f.json();return{...typeof m.title=="string"?{title:m.title}:{},...typeof m.body=="string"?{body:m.body}:{},...typeof m.merged=="boolean"?{merged:m.merged}:{},...m.merged===!0&&typeof m.merge_commit_sha=="string"?{mergeCommit:m.merge_commit_sha}:{},...m.merged===!0&&typeof m.head?.sha=="string"?{mergedHead:m.head.sha}:{}}},async commit(l,d,g){let[h,f,...m]=l.split("/");if(m.length||![h,f].every(C=>C!==void 0&&Dp.test(C)))return{lookup:"unknown"};try{let C=await c(`${a}/repos/${h}/${f}/commits/${encodeURIComponent(d)}`,g);if(C.status===404||C.status===422)return{lookup:"missing"};if(!C.ok)return{lookup:"unknown"};let y=await C.json();return typeof y.sha=="string"?{sha:y.sha}:{lookup:"missing"}}catch{return{lookup:"unknown"}}},async revokeToken(l,d){let g=await d(`${a}/installation/token`,{method:"DELETE",headers:{Authorization:`Bearer ${l}`,Accept:"application/vnd.github+json"},redirect:"error",signal:AbortSignal.timeout(e2)});if(!g.ok&&g.status!==401)throw new Error(`GitHub answered ${g.status}`)}}}o(pk,"githubRunnerHost");function fk(t=process.env){return ql(t)?RE(t):pk(t)}o(fk,"runnerHost");var Tp=(r=>(r.Get="GET",r.Post="POST",r.Put="PUT",r))(Tp||{}),n2=10*6e4;function r2(t,e){return t.getTime()-e.getTime()-n2}o(r2,"remainingBudgetMs");var mk="This attempt revoked its scoped GitHub credentials; it mints no more.",s2=10*6e4;var i2=o(t=>!!t&&Object.keys(t).length===1&&t.contents==="read","onlyReads"),o2=3e4,a2=3,Qn=class extends Error{constructor(n,r,s){super(n);this.status=r;this.code=s}status;code;static{o(this,"AppRefusal")}},zi=class extends Error{static{o(this,"AppUnreachable")}};function Np(t){let e;try{e=new URL(t)}catch{throw new Error(`skyrampAppOrigin "${t}" is not a URL`)}if(e.protocol!=="https:"||e.origin!==t.replace(/\/+$/,""))throw new Error(`skyrampAppOrigin must be an https origin, got "${t}"`);return e.origin}o(Np,"appOrigin");function Ek(t,e){if(!$s.test(t))throw new Error(`The ${e} "${t}" is not a uuid`);return t}o(Ek,"routeId");function A2(t,e){return`${t.replace(/\/+$/,"")}/runs/${e}`}o(A2,"skyrampRunPageUrl");function Ck(t,e,n){throw e<500&&e!==429?new Qn(t,e,n):new zi(t)}o(Ck,"refusedOrUnreachable");async function Ik(t,e,n,r){let s=Np(t.origin),i;for(let a=1;a<=a2;a+=1){a>1&&await new Promise(c=>setTimeout(c,(t.retryDelayMs??2e3)*(a-1)));try{let c=await t.idToken(s),l=await(t.fetch??fetch)(new URL(e,s).toString(),{...n(c),redirect:"error",signal:AbortSignal.timeout(o2)}).catch(d=>{throw new zi(d instanceof Error?d.message:String(d),{cause:d})});return await r(l)}catch(c){if(c instanceof Qn)throw c;i=c}}throw i}o(Ik,"callWithRetries");function Fp(t,e,n,r){return Ik(t,n,o(i=>({method:e,headers:{Authorization:`Bearer ${i}`,"Content-Type":"application/json",Accept:"application/json"},body:e==="GET"?void 0:JSON.stringify(r)}),"request"),async i=>{let a=await i.json().catch(()=>({}));if(i.ok)return a.data;let c=a.error?.fields,l=typeof c?.path=="string"&&typeof c.reason=="string"?` at ${c.path}: ${c.reason}`:"",d=`The Skyramp app refused ${e} ${n}: ${i.status} ${a.error?.code??"no error code"}${l}`;return Ck(d,i.status,a.error?.code)})}o(Fp,"callApp");function c2(t,e,n){return Ik(t,e,o(s=>({method:"GET",headers:{Authorization:`Bearer ${s}`,Accept:"application/octet-stream"}}),"request"),async s=>{if(!s.ok)return Ck(`The Skyramp app refused GET ${e}: ${s.status}`,s.status);let i=Buffer.from(await s.arrayBuffer());if(i.length>n)throw new Qn(`The Skyramp app answered GET ${e} with more than ${n} bytes`,s.status);return i})}o(c2,"callAppBytes");var La=class{constructor(e,n,r,s,i,a,c,l,d){this.attemptId=e;this.attemptNumber=n;this.deadlineAt=r;this.manifest=s;this.deps=i;this.license=a;this.requestedBy=c;this.writeAllowed=l;this.claudeCodeVersion=d}attemptId;attemptNumber;deadlineAt;manifest;deps;license;requestedBy;writeAllowed;claudeCodeVersion;static{o(this,"V3Attempt")}budgetMs(e){return r2(this.deadlineAt,e)}get skyrampRunUrl(){return A2(Np(this.deps.origin),this.manifest.runId)}send(e,n,r){return Fp(this.deps,e,n,r)}readBytes(e,n){return c2(this.deps,e,n)}issuedTokens=[];closure;modelKey;credentials={};revocation;token(){return this.cachedToken("run")}readOnlyToken(){return this.cachedToken("read")}async cachedToken(e){if(this.revocation)throw new Error(mk);let n=(this.deps.now??(()=>new Date))().getTime(),r=this.credentials[e],s=r&&await r.catch(()=>{});if(this.credentials[e]!==r)return(await this.credentials[e]).token;if(s&&s.expiresAt-n>=s2)return s.token;if(this.revocation)throw new Error(mk);let i=e==="read",a=i?{schemaVersion:1,access:e}:{schemaVersion:1},c=i?"read-only":"scoped",l=this.send("POST",`/api/v1/runner/attempts/${this.attemptId}/credentials`,a).then(d=>{let g={...d,token:d.token??this.jobToken()};if(this.issuedTokens.push(g.token),this.deps.mask?.(g.token),g.anthropicApiKey&&this.deps.mask?.(g.anthropicApiKey),i&&d.token&&!i2(g.permissions))throw new Error(`The Skyramp app was asked for a read-only GitHub token, but its token grants ${JSON.stringify(g.permissions??null)}`);!i&&!s&&g.anthropicApiKey&&(this.modelKey=g.anthropicApiKey);let h=s?"Renewed":"Received";return d.token&&this.deps.log?.(`${h} ${c} GitHub credentials; they expire at ${g.expiresAt}.`),{token:g.token,expiresAt:d.token?new Date(g.expiresAt).getTime():Number.POSITIVE_INFINITY}},d=>{if(!(d instanceof Qn)||d.code!=="CREDENTIALS_UNAVAILABLE")throw d;let g=o(m=>[...new Set(m.map(C=>C.namespace))].join(", "),"unique"),h=this.manifest.sources.map(m=>m.repository);if(new Set(h.map(m=>m.providerAccountId)).size>1)throw new Qn(`${d.message}. The run's repositories are on more than one GitHub account (${g(h)}), which Skyramp does not support yet.`,d.status,d.code);let f=g([...h,this.manifest.execution.repository]);throw new Qn(`${d.message}. Check the Skyramp GitHub App installation on ${f}: it must be installed and not suspended, have access to these repositories, and have accepted the App's current permissions. Each account must also be connected to your Skyramp organization.`,d.status,d.code)});return this.credentials[e]=l,(await l).token}jobToken(){if(this.deps.sourceToken)return this.deps.sourceToken;throw new Error("The app answered the credentials request without a token, and the job gave Testbot none of its own: on Azure Pipelines, set SYSTEM_ACCESSTOKEN to $(System.AccessToken) in the Testbot step's env.")}sourceFetch(e){return e.fetch??this.deps.fetch??fetch}revokeTokens(e={}){let n=e.host??fk();return this.revocation??=n.revokeToken?this.revokeIssued(r=>n.revokeToken(r,this.sourceFetch(e))):Promise.resolve([]),this.revocation}async revokeIssued(e){let n=[...this.issuedTokens],r=Promise.all(n.map(a=>this.revokeOne(a,e)));await Promise.all(Object.values(this.credentials).map(a=>a.catch(()=>{})));let s=this.issuedTokens.filter(a=>!n.includes(a));return[...await r,...await Promise.all(s.map(a=>this.revokeOne(a,e)))].filter(a=>a!==void 0)}async revokeOne(e,n){try{await n(e);return}catch(r){return`token ${this.issuedTokens.indexOf(e)+1} of ${this.issuedTokens.length}: ${r instanceof Error?r.message:String(r)}`}}};async function yk(t,e,n){Ek(t,"run id"),Np(n.origin);let r=_f(t,e),s=Pf(await Fp(n,"POST",`/api/v1/runner/runs/${t}/attempts`,r));if(s.manifest.runId!==t)throw new Error(`The app answered the handshake of run ${t} with the manifest of another run (${s.manifest.runId})`);let i=s.manifest.sources.find(c=>c.repository.provider!==r.execution.provider);if(i)throw new Error(`The manifest of run ${t} names ${i.repository.namespace}/${i.repository.name} on ${i.repository.provider}, but this job runs on ${r.execution.provider}`);s.runToken&&n.mask?.(s.runToken);let a=s.runToken?{entitlements:s.entitlements??[],runToken:s.runToken}:void 0;return new La(s.attempt.id,s.attempt.number,new Date(s.attempt.deadlineAt),s.manifest,n,a,s.requestedBy??void 0,s.writeAllowed,s.claudeCodeVersion??void 0)}o(yk,"startV3Attempt");async function Up(t){return Uf.parse(await t.send("POST",`/api/v1/runner/attempts/${t.attemptId}/heartbeat`,{schemaVersion:1}))}o(Up,"heartbeatV3Attempt");async function Qk(t,e=()=>new Date){if(t.closure)return t.closure;let n=await Up(t).then(r=>Mf(r,e())).catch(()=>null);return n&&(t.closure=n),n}o(Qk,"closedV3Attempt");var oX=10*6e4;var aX=["TRIGGER","AUTHORITATIVE_RELATED_CHANGE"];var AX=A.object({tests:A.object({placements:A.array(A.unknown()).optional()}).passthrough().optional()}).passthrough(),cX=A.object({repository:Ku,testType:A.nativeEnum(cA),directory:A.string()}).passthrough();var uX=A.object({report:A.object({language:A.string()}).passthrough()}).passthrough();var lX=A.object({environment:A.object({components:A.array(A.unknown()).optional(),dependencies:A.array(A.unknown()).optional()}).passthrough()}).passthrough(),dX=A.object({name:A.string().min(1),provision:A.literal("existing"),url:A.string().min(1),repository:Ku.optional(),revisionUrl:A.string().min(1).optional()}).passthrough(),gX=A.object({name:A.string().min(1),url:A.string().nullable(),versionUrl:A.string().nullable(),notes:A.string().nullable()}).passthrough();var hX=new Set(["TRIGGER","AUTHORITATIVE_RELATED_CHANGE","MANUAL_OVERRIDE"]);function Bk(t){let e=o(n=>t.testResults.filter(r=>r.status===n).length,"count");return{passed:e("Pass"),failed:e("Fail"),skipped:e("Skipped")}}o(Bk,"statusCounts");function u2(t){let{passed:e,failed:n,skipped:r}=Bk(t);return e+n===0?{sufficiency:"insufficient",rationale:r>0?`Every test was skipped (${r}), so nothing was validated.`:"No test ran, so nothing was validated.",gaps:["No test ran against the frozen sources."],acceptedEvidence:[],actionRequired:[]}:{sufficiency:"sufficient",rationale:`${e+n} tests ran against the frozen sources: ${e} passed, ${n} failed${r?`, ${r} skipped`:""}.`,gaps:[],acceptedEvidence:[],actionRequired:[]}}o(u2,"executedTestsValidation");function l2(t,e){let n=t.testResults.map(l=>({result:l,repository:l.repository??e,path:l.fileName||l.testType})),r=new Map;for(let l of n){let d=`${l.repository}:${l.result.testType}:${l.path}`;r.set(d,(r.get(d)??0)+1)}let s=n.map(({result:l,repository:d,path:g})=>{let h=(r.get(`${d}:${l.testType}:${g}`)??0)>1;return l.resultId??Rf(d,l.testType,g,h&&l.endpoint||void 0)}),i=new Map;for(let l of s)i.set(l,(i.get(l)??0)+1);let a=new Set(s.filter(l=>i.get(l)===1)),c=n.map(({result:l,repository:d},g)=>{let h=s[g],f=h;if(i.get(h)>1&&a.has(h))for(let m=2;a.has(f)||f===h;m+=1)f=h.includes("#")?`${h}.${m}`:`${h}#${m}`;return a.add(f),{...l,repository:d,resultId:f}});return{...t,testResults:c,...d2(t,c,e),validation:g2(t,t.validation??u2(t)),traceVersion:1}}o(l2,"v3Report");function d2(t,e,n){if(!t.testExecutionContexts)return{};let r=new Set,s=o(c=>{let l=c;for(let d=2;r.has(l);d+=1)l=`${c}#${d}`;return r.add(l),l},"unique"),i=[],a=new Map;for(let{repository:c,...l}of t.testExecutionContexts){let d=l.status==="not_run"?[]:e.filter(g=>g.fileName===l.test&&g.repository===(c?.trim()||n));d.length||i.push(l);for(let{resultId:g}of d){let h=a.get(g),f=h!==void 0&&i[h].cleanup.status==="failed"?i[h].cleanup:l.cleanup,m={...l,cleanup:f,test:g,resultId:g};h===void 0?a.set(g,i.push(m)-1):i[h]=m}}for(let c of i)c.resultId&&r.add(c.resultId);return{testExecutionContexts:i.map(c=>c.resultId?c:{...c,test:s(c.test.slice(0,512))}).slice(0,5e3)}}o(d2,"linkedContexts");function g2(t,e){let{passed:n,failed:r}=Bk(t);return e.sufficiency!=="sufficient"||n+r>0||e.acceptedEvidence.length>0?e:{...e,sufficiency:"insufficient",gaps:["No test ran and no existing evidence was accepted, so nothing was validated."]}}o(g2,"withEvidence");async function wk(t,e){let n=Yf([...t.issuedTokens,...e.secrets??[]]),r=Of({manifest:t.manifest,attemptNumber:t.attemptNumber,checkedOut:e.sources.map(s=>({repository:s.repository,revision:s.revision})),generatedTests:Vs(e.delivery,n),producer:e.producer,report:Vs(l2(e.report,e.workingSlug),n),githubWrites:e.githubWrites});await t.send("PUT",`/api/v1/runner/attempts/${t.attemptId}/report`,r)}o(wk,"uploadV3Report");async function bk(t,e){return Ek(t.attemptId,"attempt id"),Fp(e,"POST",`/api/v1/runner/attempts/${t.attemptId}/end`,Gf({reportUploaded:t.reportUploaded,recipeUploaded:t.recipeUploaded,revisionsUploaded:t.revisionsUploaded,cancelled:t.cause==="cancelled",timedOut:t.cause==="timed_out",setupFailed:t.cause==="setup_failed",checkoutFailed:t.cause==="checkout_failed",environmentUnverified:t.cause==="environment_unverified",credentialMissing:t.cause==="credential_missing"}))}o(bk,"endV3Attempt");0&&(module.exports={AppRefusal,AppUnreachable,AttemptEndReason,NoReportCause,RunnerMethod,V3Attempt,closedV3Attempt,endV3Attempt,heartbeatV3Attempt,startV3Attempt,uploadV3Report});
88
+ /*! Bundled license information:
89
+
90
+ undici/lib/web/fetch/body.js:
91
+ (*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
92
+
93
+ undici/lib/web/websocket/frame.js:
94
+ (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
95
+ */