@skyramp/testbot-core 0.13.0-v3.172 → 0.13.0-v3.174
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/VERSION.json +1 -1
- package/dist/main.js +488 -488
- package/dist/post.js +354 -354
- package/dist/runner-client.cjs +48 -48
- package/package.json +2 -2
package/dist/runner-client.cjs
CHANGED
|
@@ -1,90 +1,90 @@
|
|
|
1
|
-
"use strict";var
|
|
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((jZ,NE)=>{NE.exports=TE()});var Se=T((WZ,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((zZ,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((KZ,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((XZ,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((tK,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((rK,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((sK,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((oK,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((AK,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((uK,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((hK,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((CK,qC)=>{"use strict";var{Buffer:TT}=require("node:buffer");qC.exports=TT.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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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var WC=T((IK,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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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Lo=T((yK,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((QK,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((wK,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((RK,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((kK,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((vK,kI)=>{"use strict";kI.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var Xd=T((xK,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((TK,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((FK,_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
|
|
5
|
-
`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),n)}o(
|
|
1
|
+
"use strict";var SR=Object.create;var so=Object.defineProperty;var vR=Object.getOwnPropertyDescriptor;var xR=Object.getOwnPropertyNames;var DR=Object.getPrototypeOf,TR=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}},_p=(t,e)=>{for(var n in e)so(t,n,{get:e[n],enumerable:!0})},Pp=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of xR(e))!TR.call(t,s)&&s!==n&&so(t,s,{get:()=>e[s],enumerable:!(r=vR(e,s))||r.enumerable});return t};var He=(t,e,n)=>(n=t!=null?SR(DR(t)):{},Pp(e||!t||!t.__esModule?so(n,"default",{value:t,enumerable:!0}):n,t)),NR=t=>Pp(so({},"__esModule",{value:!0}),t);var FE=T(ei=>{"use strict";var nK=require("net"),lD=require("tls"),Xl=require("http"),DE=require("https"),dD=require("events"),rK=require("assert"),gD=require("util");ei.httpOverHttp=hD;ei.httpsOverHttp=pD;ei.httpOverHttps=fD;ei.httpsOverHttps=mD;function hD(t){var e=new Fn(t);return e.request=Xl.request,e}o(hD,"httpOverHttp");function pD(t){var e=new Fn(t);return e.request=Xl.request,e.createSocket=TE,e.defaultPort=443,e}o(pD,"httpsOverHttp");function fD(t){var e=new Fn(t);return e.request=DE.request,e}o(fD,"httpOverHttps");function mD(t){var e=new Fn(t);return e.request=DE.request,e.createSocket=TE,e.defaultPort=443,e}o(mD,"httpsOverHttps");function Fn(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||Xl.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",o(function(r,s,i,a){for(var c=NE(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(Fn,"TunnelingAgent");gD.inherits(Fn,dD.EventEmitter);Fn.prototype.addRequest=o(function(e,n,r,s){var i=this,a=ed({request:e},i.options,NE(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");Fn.prototype.createSocket=o(function(e,n){var r=this,s={};r.sockets.push(s);var i=ed({},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");Fn.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 TE(t,e){var n=this;Fn.prototype.createSocket.call(n,t,function(r){var s=t.request.getHeader("host"),i=ed({},n.options,{socket:r,servername:s?s.replace(/:.*$/,""):t.host}),a=lD.connect(0,i);n.sockets[n.sockets.indexOf(r)]=a,e(a)})}o(TE,"createSecureSocket");function NE(t,e,n){return typeof t=="string"?{host:t,port:e,localAddress:n}:t}o(NE,"toOptions");function ed(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(ed,"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 ME=T((oK,UE)=>{UE.exports=FE()});var Re=T((aK,LE)=>{LE.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((AK,AC)=>{"use strict";var _E=Symbol.for("undici.error.UND_ERR"),Se=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[_E]===!0}[_E]=!0},PE=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),td=class extends Se{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[PE]===!0}[PE]=!0},OE=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),nd=class extends Se{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[OE]===!0}[OE]=!0},GE=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),rd=class extends Se{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[GE]===!0}[GE]=!0},$E=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),sd=class extends Se{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[$E]===!0}[$E]=!0},YE=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),id=class extends Se{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[YE]===!0}[YE]=!0},HE=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),od=class extends Se{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[HE]===!0}[HE]=!0},VE=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),ad=class extends Se{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[VE]===!0}[VE]=!0},JE=Symbol.for("undici.error.UND_ERR_ABORT"),RA=class extends Se{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[JE]===!0}[JE]=!0},qE=Symbol.for("undici.error.UND_ERR_ABORTED"),Ad=class extends RA{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[qE]===!0}[qE]=!0},jE=Symbol.for("undici.error.UND_ERR_INFO"),cd=class extends Se{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},WE=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),ud=class extends Se{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[WE]===!0}[WE]=!0},zE=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),ld=class extends Se{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[zE]===!0}[zE]=!0},ZE=Symbol.for("undici.error.UND_ERR_DESTROYED"),dd=class extends Se{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[ZE]===!0}[ZE]=!0},KE=Symbol.for("undici.error.UND_ERR_CLOSED"),gd=class extends Se{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[KE]===!0}[KE]=!0},XE=Symbol.for("undici.error.UND_ERR_SOCKET"),hd=class extends Se{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[XE]===!0}[XE]=!0},eC=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),pd=class extends Se{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[eC]===!0}[eC]=!0},tC=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),fd=class extends Se{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[tC]===!0}[tC]=!0},nC=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),md=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[nC]===!0}[nC]=!0},rC=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),Ed=class extends Se{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[rC]===!0}[rC]=!0},sC=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),Cd=class extends Se{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[sC]===!0}[sC]=!0},iC=Symbol.for("undici.error.UND_ERR_RESPONSE"),Id=class extends Se{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[iC]===!0}[iC]=!0},oC=Symbol.for("undici.error.UND_ERR_PRX_TLS"),yd=class extends Se{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[oC]===!0}[oC]=!0},aC=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),Qd=class extends Se{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[aC]===!0}get[aC](){return!0}};AC.exports={AbortError:RA,HTTPParserError:md,UndiciError:Se,HeadersTimeoutError:nd,HeadersOverflowError:rd,BodyTimeoutError:sd,RequestContentLengthMismatchError:ud,ConnectTimeoutError:td,ResponseStatusCodeError:id,InvalidArgumentError:od,InvalidReturnValueError:ad,RequestAbortedError:Ad,ClientDestroyedError:dd,ClientClosedError:gd,InformationalError:cd,SocketError:hd,NotSupportedError:pd,ResponseContentLengthMismatchError:ld,BalancedPoolMissingUpstreamError:fd,ResponseExceededMaxSizeError:Ed,RequestRetryError:Cd,ResponseError:Id,SecureProxyConnectionError:yd,MessageSizeExceededError:Qd}});var vA=T((uK,cC)=>{"use strict";var SA={},Bd=["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<Bd.length;++t){let e=Bd[t],n=e.toLowerCase();SA[e]=SA[n]=n}Object.setPrototypeOf(SA,null);cC.exports={wellknownHeaderNames:Bd,headerNameLowerCasedRecord:SA}});var gC=T((lK,dC)=>{"use strict";var{wellknownHeaderNames:uC,headerNameLowerCasedRecord:ED}=vA(),wd=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}},xA=class{static{o(this,"TernarySearchTree")}node=null;insert(e,n){this.node===null?this.node=new wd(e,n,0):this.node.add(e,n)}lookup(e){return this.node?.search(e)?.value??null}},lC=new xA;for(let t=0;t<uC.length;++t){let e=ED[uC[t]];lC.insert(e,e)}dC.exports={TernarySearchTree:xA,tree:lC}});var ue=T((gK,vC)=>{"use strict";var To=require("node:assert"),{kDestroyed:pC,kBodyUsed:ti,kListeners:bd,kBody:hC}=Re(),{IncomingMessage:CD}=require("node:http"),NA=require("node:stream"),ID=require("node:net"),{Blob:yD}=require("node:buffer"),QD=require("node:util"),{stringify:BD}=require("node:querystring"),{EventEmitter:wD}=require("node:events"),{InvalidArgumentError:$e}=pe(),{headerNameLowerCasedRecord:bD}=vA(),{tree:fC}=gC(),[kD,RD]=process.versions.node.split(".").map(t=>Number(t)),TA=class{static{o(this,"BodyAsyncIterable")}constructor(e){this[hC]=e,this[ti]=!1}async*[Symbol.asyncIterator](){To(!this[ti],"disturbed"),this[ti]=!0,yield*this[hC]}};function SD(t){return FA(t)?(yC(t)===0&&t.on("data",function(){To(!1)}),typeof t.readableDidRead!="boolean"&&(t[ti]=!1,wD.prototype.on.call(t,"data",function(){this[ti]=!0})),t):t&&typeof t.pipeTo=="function"?new TA(t):t&&typeof t!="string"&&!ArrayBuffer.isView(t)&&IC(t)?new TA(t):t}o(SD,"wrapRequestBody");function vD(){}o(vD,"nop");function FA(t){return t&&typeof t=="object"&&typeof t.pipe=="function"&&typeof t.on=="function"}o(FA,"isStream");function mC(t){if(t===null)return!1;if(t instanceof yD)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(mC,"isBlobLike");function xD(t,e){if(t.includes("?")||t.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let n=BD(e);return n&&(t+="?"+n),t}o(xD,"buildURL");function EC(t){let e=parseInt(t,10);return e===Number(t)&&e>=0&&e<=65535}o(EC,"isValidPort");function DA(t){return t!=null&&t[0]==="h"&&t[1]==="t"&&t[2]==="t"&&t[3]==="p"&&(t[4]===":"||t[4]==="s"&&t[5]===":")}o(DA,"isHttpOrHttpsPrefixed");function CC(t){if(typeof t=="string"){if(t=new URL(t),!DA(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!==""&&EC(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(!DA(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(!DA(t.origin||t.protocol))throw new $e("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}o(CC,"parseURL");function DD(t){if(t=CC(t),t.pathname!=="/"||t.search||t.hash)throw new $e("invalid url");return t}o(DD,"parseOrigin");function TD(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(TD,"getHostname");function ND(t){if(!t)return null;To(typeof t=="string");let e=TD(t);return ID.isIP(e)?"":e}o(ND,"getServerName");function FD(t){return JSON.parse(JSON.stringify(t))}o(FD,"deepClone");function UD(t){return t!=null&&typeof t[Symbol.asyncIterator]=="function"}o(UD,"isAsyncIterable");function IC(t){return t!=null&&(typeof t[Symbol.iterator]=="function"||typeof t[Symbol.asyncIterator]=="function")}o(IC,"isIterable");function yC(t){if(t==null)return 0;if(FA(t)){let e=t._readableState;return e&&e.objectMode===!1&&e.ended===!0&&Number.isFinite(e.length)?e.length:null}else{if(mC(t))return t.size!=null?t.size:null;if(wC(t))return t.byteLength}return null}o(yC,"bodyLength");function QC(t){return t&&!!(t.destroyed||t[pC]||NA.isDestroyed?.(t))}o(QC,"isDestroyed");function MD(t,e){t==null||!FA(t)||QC(t)||(typeof t.destroy=="function"?(Object.getPrototypeOf(t).constructor===CD&&(t.socket=null),t.destroy(e)):e&&queueMicrotask(()=>{t.emit("error",e)}),t.destroyed!==!0&&(t[pC]=!0))}o(MD,"destroy");var LD=/timeout=(\d+)/;function _D(t){let e=t.toString().match(LD);return e?parseInt(e[1],10)*1e3:null}o(_D,"parseKeepAliveTimeout");function BC(t){return typeof t=="string"?bD[t]??t.toLowerCase():fC.lookup(t)??t.toString("latin1").toLowerCase()}o(BC,"headerNameToString");function PD(t){return fC.lookup(t)??t.toString("latin1").toLowerCase()}o(PD,"bufferToLowerCasedHeaderName");function OD(t,e){e===void 0&&(e={});for(let n=0;n<t.length;n+=2){let r=BC(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(OD,"parseHeaders");function GD(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(GD,"parseRawHeaders");function wC(t){return t instanceof Uint8Array||Buffer.isBuffer(t)}o(wC,"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 YD(t){return!!(t&&(NA.isDisturbed(t)||t[ti]))}o(YD,"isDisturbed");function HD(t){return!!(t&&NA.isErrored(t))}o(HD,"isErrored");function VD(t){return!!(t&&NA.isReadable(t))}o(VD,"isReadable");function JD(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(JD,"getSocketInfo");function qD(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(qD,"ReadableStreamFrom");function jD(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(jD,"isFormDataLike");function WD(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(WD,"addAbortListener");var zD=typeof String.prototype.toWellFormed=="function",ZD=typeof String.prototype.isWellFormed=="function";function bC(t){return zD?`${t}`.toWellFormed():QD.toUSVString(t)}o(bC,"toUSVString");function KD(t){return ZD?`${t}`.isWellFormed():bC(t)===`${t}`}o(KD,"isUSVString");function kC(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(kC,"isTokenCharCode");function XD(t){if(t.length===0)return!1;for(let e=0;e<t.length;++e)if(!kC(t.charCodeAt(e)))return!1;return!0}o(XD,"isValidHTTPToken");var eT=/[^\t\x20-\x7e\x80-\xff]/;function tT(t){return!eT.test(t)}o(tT,"isValidHeaderValue");function nT(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(nT,"parseRangeHeader");function rT(t,e,n){return(t[bd]??=[]).push([e,n]),t.on(e,n),t}o(rT,"addListener");function sT(t){for(let[e,n]of t[bd]??[])t.removeListener(e,n);t[bd]=null}o(sT,"removeAllListeners");function iT(t,e,n){try{e.onError(n),To(e.aborted)}catch(r){t.emit("error",r)}}o(iT,"errorRequest");var RC=Object.create(null);RC.enumerable=!0;var kd={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},SC={...kd,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(kd,null);Object.setPrototypeOf(SC,null);vC.exports={kEnumerableProperty:RC,nop:vD,isDisturbed:YD,isErrored:HD,isReadable:VD,toUSVString:bC,isUSVString:KD,isBlobLike:mC,parseOrigin:DD,parseURL:CC,getServerName:ND,isStream:FA,isIterable:IC,isAsyncIterable:UD,isDestroyed:QC,headerNameToString:BC,bufferToLowerCasedHeaderName:PD,addListener:rT,removeAllListeners:sT,errorRequest:iT,parseRawHeaders:GD,parseHeaders:OD,parseKeepAliveTimeout:_D,destroy:MD,bodyLength:yC,deepClone:FD,ReadableStreamFrom:qD,isBuffer:wC,validateHandler:$D,getSocketInfo:JD,isFormDataLike:jD,buildURL:xD,addAbortListener:WD,isValidHTTPToken:XD,isValidHeaderValue:tT,isTokenCharCode:kC,parseRangeHeader:nT,normalizedMethodRecordsBase:kd,normalizedMethodRecords:SC,isValidPort:EC,isHttpOrHttpsPrefixed:DA,nodeMajor:kD,nodeMinor:RD,safeHTTPMethods:["GET","HEAD","OPTIONS","TRACE"],wrapRequestBody:SD}});var ni=T((pK,DC)=>{"use strict";var me=require("node:diagnostics_channel"),Sd=require("node:util"),UA=Sd.debuglog("undici"),Rd=Sd.debuglog("fetch"),es=Sd.debuglog("websocket"),xC=!1,oT={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(UA.enabled||Rd.enabled){let t=Rd.enabled?Rd:UA;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)}),xC=!0}if(es.enabled){if(!xC){let t=UA.enabled?UA: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")})}DC.exports={channels:oT}});var UC=T((fK,FC)=>{"use strict";var{InvalidArgumentError:Qe,NotSupportedError:aT}=pe(),yt=require("node:assert"),{isValidHTTPToken:NC,isValidHeaderValue:No,isStream:AT,destroy:cT,isBuffer:uT,isFormDataLike:lT,isIterable:dT,isBlobLike:gT,buildURL:hT,validateHandler:pT,getServerName:fT,normalizedMethodRecords:mT}=ue(),{channels:qe}=ni(),{headerNameLowerCasedRecord:TC}=vA(),ET=/[^\u0021-\u00ff]/,Pt=Symbol("handler"),vd=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(ET.test(n))throw new Qe("invalid request path");if(typeof r!="string")throw new Qe("method must be a string");if(mT[r]===void 0&&!NC(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(AT(s)){this.body=s;let Q=this.body._readableState;(!Q||!Q.autoDestroy)&&(this.endHandler=o(function(){cT(this)},"autoDestroy"),this.body.on("end",this.endHandler)),this.errorHandler=D=>{this.abort?this.abort(D):this.error=D},this.body.on("error",this.errorHandler)}else if(uT(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(lT(s)||dT(s)||gT(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?hT(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)MA(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");MA(this,Q[0],Q[1])}else{let Q=Object.keys(i);for(let D=0;D<Q.length;++D)MA(this,Q[D],i[Q[D]])}else if(i!=null)throw new Qe("headers must be an object or an array");pT(v,r,d),this.servername=y||fT(this.host),this[Pt]=v,qe.create.hasSubscribers&&qe.create.publish({request:this})}onBodySent(e){if(this[Pt].onBodySent)try{return this[Pt].onBodySent(e)}catch(n){this.abort(n)}}onRequestSent(){if(qe.bodySent.hasSubscribers&&qe.bodySent.publish({request:this}),this[Pt].onRequestSent)try{return this[Pt].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[Pt].onConnect(e)}onResponseStarted(){return this[Pt].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[Pt].onHeaders(e,n,r,s)}catch(i){this.abort(i)}}onData(e){yt(!this.aborted),yt(!this.completed);try{return this[Pt].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[Pt].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[Pt].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[Pt].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 MA(this,e,n),this}};function MA(t,e,n){if(n&&typeof n=="object"&&!Array.isArray(n))throw new Qe(`invalid ${e} header`);if(n===void 0)return;let r=TC[e];if(r===void 0&&(r=e.toLowerCase(),TC[r]===void 0&&!NC(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 aT("expect header not supported");t.headers.push(e,n)}}}o(MA,"processHeader");FC.exports=vd});var Fo=T((EK,MC)=>{"use strict";var CT=require("node:events"),LA=class extends CT{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 xd(this,r)}},xd=class extends LA{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)}};MC.exports=LA});var oi=T((IK,_C)=>{"use strict";var IT=require("node:buffer"),yT=Fo(),{ClientDestroyedError:Dd,ClientClosedError:QT,InvalidArgumentError:ri}=pe(),{kDestroy:BT,kClose:wT,kClosed:Uo,kDestroyed:si,kDispatch:Td,kInterceptors:ts}=Re(),Un=Symbol("onDestroyed"),ii=Symbol("onClosed"),_A=Symbol("Intercepted Dispatch"),Nd=Symbol("webSocketOptions"),LC=Symbol("eventSourceOptions"),Fd=class extends yT{static{o(this,"DispatcherBase")}constructor(e){super(),this[si]=!1,this[Un]=null,this[Uo]=!1,this[ii]=[],this[Nd]=e?.webSocket??{},this[LC]=e?.eventSource??{}}get webSocketOptions(){return{maxFragments:this[Nd].maxFragments??131072,maxPayloadSize:this[Nd].maxPayloadSize??128*1024*1024}}get eventSourceOptions(){return{maxEventSize:this[LC].maxEventSize??IT.kStringMaxLength}}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 Dd,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[wT]().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[Un]?this[Un].push(n):queueMicrotask(()=>n(null,null));return}e||(e=new Dd),this[si]=!0,this[Un]=this[Un]||[],this[Un].push(n);let r=o(()=>{let s=this[Un];this[Un]=null;for(let i=0;i<s.length;i++)s[i](null,null)},"onDestroyed");this[BT](e).then(()=>{queueMicrotask(r)})}[_A](e,n){if(!this[ts]||this[ts].length===0)return this[_A]=this[Td],this[Td](e,n);let r=this[Td].bind(this);for(let s=this[ts].length-1;s>=0;s--)r=this[ts][s](r);return this[_A]=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[Un])throw new Dd;if(this[Uo])throw new QT;return this[_A](e,n)}catch(r){if(typeof n.onError!="function")throw new ri("invalid onError method");return n.onError(r),!1}}};_C.exports=Fd});var Gd=T((QK,$C)=>{"use strict";var ai=0,Ud=1e3,Md=(Ud>>1)-1,Mn,Ld=Symbol("kFastTimer"),Ln=[],_d=-2,Pd=-1,OC=0,PC=1;function Od(){ai+=Md;let t=0,e=Ln.length;for(;t<e;){let n=Ln[t];n._state===OC?(n._idleStart=ai-Md,n._state=PC):n._state===PC&&ai>=n._idleStart+n._idleTimeout&&(n._state=Pd,n._idleStart=-1,n._onTimeout(n._timerArg)),n._state===Pd?(n._state=_d,--e!==0&&(Ln[t]=Ln[e])):++t}Ln.length=e,Ln.length!==0&&GC()}o(Od,"onTick");function GC(){Mn?Mn.refresh():(clearTimeout(Mn),Mn=setTimeout(Od,Md),Mn.unref&&Mn.unref())}o(GC,"refreshTimeout");var PA=class{static{o(this,"FastTimer")}[Ld]=!0;_state=_d;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,n,r){this._onTimeout=e,this._idleTimeout=n,this._timerArg=r,this.refresh()}refresh(){this._state===_d&&Ln.push(this),(!Mn||Ln.length===1)&&GC(),this._state=OC}clear(){this._state=Pd,this._idleStart=-1}};$C.exports={setTimeout(t,e,n){return e<=Ud?setTimeout(t,e,n):new PA(t,e,n)},clearTimeout(t){t[Ld]?t.clear():clearTimeout(t)},setFastTimeout(t,e,n){return new PA(t,e,n)},clearFastTimeout(t){t.clear()},now(){return ai},tick(t=0){ai+=t-Ud+1,Od(),Od()},reset(){ai=0,Ln.length=0,clearTimeout(Mn),Mn=null},kFastTimer:Ld}});var Mo=T((kK,qC)=>{"use strict";var bT=require("node:net"),YC=require("node:assert"),JC=ue(),{InvalidArgumentError:kT,ConnectTimeoutError:RT}=pe(),OA=Gd();function HC(){}o(HC,"noop");var $d,Yd;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?Yd=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))}}:Yd=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 ST({allowH2:t,maxCachedSessions:e,socketPath:n,timeout:r,session:s,...i}){if(e!=null&&(!Number.isInteger(e)||e<0))throw new kT("maxCachedSessions must be a positive integer or zero");let a={path:n,...i},c=new Yd(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:"){$d||($d=require("node:tls")),m=m||a.servername||JC.getServerName(g)||null;let G=m||d;YC(G);let P=s||c.get(G)||null;f=f||443,Q=$d.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 YC(!y,"httpSocket can only be sent on TLS update"),f=f||80,Q=bT.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 D=vT(new WeakRef(Q),{timeout:r,hostname:d,port:f});return Q.setNoDelay(!0).once(h==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(D),v){let G=v;v=null,G(null,this)}}).on("error",function(G){if(queueMicrotask(D),v){let P=v;v=null,P(G)}}),Q},"connect")}o(ST,"buildConnector");var vT=process.platform==="win32"?(t,e)=>{if(!e.timeout)return HC;let n=null,r=null,s=OA.setFastTimeout(()=>{n=setImmediate(()=>{r=setImmediate(()=>VC(t.deref(),e))})},e.timeout);return()=>{OA.clearFastTimeout(s),clearImmediate(n),clearImmediate(r)}}:(t,e)=>{if(!e.timeout)return HC;let n=null,r=OA.setFastTimeout(()=>{n=setImmediate(()=>{VC(t.deref(),e)})},e.timeout);return()=>{OA.clearFastTimeout(r),clearImmediate(n)}};function VC(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)`,JC.destroy(t,new RT(n))}o(VC,"onConnectTimeout");qC.exports=ST});var jC=T(GA=>{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.enumToMap=void 0;function xT(t){let e={};return Object.keys(t).forEach(n=>{let r=t[n];typeof r=="number"&&(e[n]=r)}),e}o(xT,"enumToMap");GA.enumToMap=xT});var WC=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 DT=jC(),TT;(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"})(TT=L.ERROR||(L.ERROR={}));var NT;(function(t){t[t.BOTH=0]="BOTH",t[t.REQUEST=1]="REQUEST",t[t.RESPONSE=2]="RESPONSE"})(NT=L.TYPE||(L.TYPE={}));var FT;(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"})(FT=L.FLAGS||(L.FLAGS={}));var UT;(function(t){t[t.HEADERS=1]="HEADERS",t[t.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",t[t.KEEP_ALIVE=4]="KEEP_ALIVE"})(UT=L.LENIENT_FLAGS||(L.LENIENT_FLAGS={}));var j;(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"})(j=L.METHODS||(L.METHODS={}));L.METHODS_HTTP=[j.DELETE,j.GET,j.HEAD,j.POST,j.PUT,j.CONNECT,j.OPTIONS,j.TRACE,j.COPY,j.LOCK,j.MKCOL,j.MOVE,j.PROPFIND,j.PROPPATCH,j.SEARCH,j.UNLOCK,j.BIND,j.REBIND,j.UNBIND,j.ACL,j.REPORT,j.MKACTIVITY,j.CHECKOUT,j.MERGE,j["M-SEARCH"],j.NOTIFY,j.SUBSCRIBE,j.UNSUBSCRIBE,j.PATCH,j.PURGE,j.MKCALENDAR,j.LINK,j.UNLINK,j.PRI,j.SOURCE];L.METHODS_ICE=[j.SOURCE];L.METHODS_RTSP=[j.OPTIONS,j.DESCRIBE,j.ANNOUNCE,j.SETUP,j.PLAY,j.PAUSE,j.TEARDOWN,j.GET_PARAMETER,j.SET_PARAMETER,j.REDIRECT,j.RECORD,j.FLUSH,j.GET,j.POST];L.METHOD_MAP=DT.enumToMap(j);L.H_METHOD_MAP={};Object.keys(L.METHOD_MAP).forEach(t=>{/^H/.test(t)&&(L.H_METHOD_MAP[t]=L.METHOD_MAP[t])});var MT;(function(t){t[t.SAFE=0]="SAFE",t[t.SAFE_WITH_CB=1]="SAFE_WITH_CB",t[t.UNSAFE=2]="UNSAFE"})(MT=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 Hd=T((DK,zC)=>{"use strict";var{Buffer:LT}=require("node:buffer");zC.exports=LT.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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CABB3AgLii1JbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AFJlc3BvbnNlIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zAFVzZXIgY2FsbGJhY2sgZXJyb3IAYG9uX3Jlc2V0YCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfaGVhZGVyYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9iZWdpbmAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3N0YXR1c19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3ZlcnNpb25fY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl91cmxfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXRob2RfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfZmllbGRfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fbmFtZWAgY2FsbGJhY2sgZXJyb3IAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzZXJ2ZXIASW52YWxpZCBoZWFkZXIgdmFsdWUgY2hhcgBJbnZhbGlkIGhlYWRlciBmaWVsZCBjaGFyAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdmVyc2lvbgBJbnZhbGlkIG1pbm9yIHZlcnNpb24ASW52YWxpZCBtYWpvciB2ZXJzaW9uAEV4cGVjdGVkIHNwYWNlIGFmdGVyIHZlcnNpb24ARXhwZWN0ZWQgQ1JMRiBhZnRlciB2ZXJzaW9uAEludmFsaWQgSFRUUCB2ZXJzaW9uAEludmFsaWQgaGVhZGVyIHRva2VuAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fdXJsAEludmFsaWQgY2hhcmFjdGVycyBpbiB1cmwAVW5leHBlY3RlZCBzdGFydCBjaGFyIGluIHVybABEb3VibGUgQCBpbiB1cmwARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgARHVwbGljYXRlIENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhciBpbiB1cmwgcGF0aABDb250ZW50LUxlbmd0aCBjYW4ndCBiZSBwcmVzZW50IHdpdGggVHJhbnNmZXItRW5jb2RpbmcASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgc2l6ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl92YWx1ZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlZCB2YWx1ZQBQYXVzZWQgYnkgb25faGVhZGVyc19jb21wbGV0ZQBJbnZhbGlkIEVPRiBzdGF0ZQBvbl9yZXNldCBwYXVzZQBvbl9jaHVua19oZWFkZXIgcGF1c2UAb25fbWVzc2FnZV9iZWdpbiBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fdmFsdWUgcGF1c2UAb25fc3RhdHVzX2NvbXBsZXRlIHBhdXNlAG9uX3ZlcnNpb25fY29tcGxldGUgcGF1c2UAb25fdXJsX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl92YWx1ZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXNzYWdlX2NvbXBsZXRlIHBhdXNlAG9uX21ldGhvZF9jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfZmllbGRfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUgcGF1c2UAVW5leHBlY3RlZCBzcGFjZSBhZnRlciBzdGFydCBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAFBhdXNlIG9uIENPTk5FQ1QvVXBncmFkZQBQYXVzZSBvbiBQUkkvVXBncmFkZQBFeHBlY3RlZCBIVFRQLzIgQ29ubmVjdGlvbiBQcmVmYWNlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fbWV0aG9kAEV4cGVjdGVkIHNwYWNlIGFmdGVyIG1ldGhvZABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2hlYWRlcl9maWVsZABQYXVzZWQASW52YWxpZCB3b3JkIGVuY291bnRlcmVkAEludmFsaWQgbWV0aG9kIGVuY291bnRlcmVkAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2NoZW1hAFJlcXVlc3QgaGFzIGludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYABTV0lUQ0hfUFJPWFkAVVNFX1BST1hZAE1LQUNUSVZJVFkAVU5QUk9DRVNTQUJMRV9FTlRJVFkAQ09QWQBNT1ZFRF9QRVJNQU5FTlRMWQBUT09fRUFSTFkATk9USUZZAEZBSUxFRF9ERVBFTkRFTkNZAEJBRF9HQVRFV0FZAFBMQVkAUFVUAENIRUNLT1VUAEdBVEVXQVlfVElNRU9VVABSRVFVRVNUX1RJTUVPVVQATkVUV09SS19DT05ORUNUX1RJTUVPVVQAQ09OTkVDVElPTl9USU1FT1VUAExPR0lOX1RJTUVPVVQATkVUV09SS19SRUFEX1RJTUVPVVQAUE9TVABNSVNESVJFQ1RFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX0xPQURfQkFMQU5DRURfUkVRVUVTVABCQURfUkVRVUVTVABIVFRQX1JFUVVFU1RfU0VOVF9UT19IVFRQU19QT1JUAFJFUE9SVABJTV9BX1RFQVBPVABSRVNFVF9DT05URU5UAE5PX0NPTlRFTlQAUEFSVElBTF9DT05URU5UAEhQRV9JTlZBTElEX0NPTlNUQU5UAEhQRV9DQl9SRVNFVABHRVQASFBFX1NUUklDVABDT05GTElDVABURU1QT1JBUllfUkVESVJFQ1QAUEVSTUFORU5UX1JFRElSRUNUAENPTk5FQ1QATVVMVElfU1RBVFVTAEhQRV9JTlZBTElEX1NUQVRVUwBUT09fTUFOWV9SRVFVRVNUUwBFQVJMWV9ISU5UUwBVTkFWQUlMQUJMRV9GT1JfTEVHQUxfUkVBU09OUwBPUFRJT05TAFNXSVRDSElOR19QUk9UT0NPTFMAVkFSSUFOVF9BTFNPX05FR09USUFURVMATVVMVElQTEVfQ0hPSUNFUwBJTlRFUk5BTF9TRVJWRVJfRVJST1IAV0VCX1NFUlZFUl9VTktOT1dOX0VSUk9SAFJBSUxHVU5fRVJST1IASURFTlRJVFlfUFJPVklERVJfQVVUSEVOVElDQVRJT05fRVJST1IAU1NMX0NFUlRJRklDQVRFX0VSUk9SAElOVkFMSURfWF9GT1JXQVJERURfRk9SAFNFVF9QQVJBTUVURVIAR0VUX1BBUkFNRVRFUgBIUEVfVVNFUgBTRUVfT1RIRVIASFBFX0NCX0NIVU5LX0hFQURFUgBNS0NBTEVOREFSAFNFVFVQAFdFQl9TRVJWRVJfSVNfRE9XTgBURUFSRE9XTgBIUEVfQ0xPU0VEX0NPTk5FQ1RJT04ASEVVUklTVElDX0VYUElSQVRJT04ARElTQ09OTkVDVEVEX09QRVJBVElPTgBOT05fQVVUSE9SSVRBVElWRV9JTkZPUk1BVElPTgBIUEVfSU5WQUxJRF9WRVJTSU9OAEhQRV9DQl9NRVNTQUdFX0JFR0lOAFNJVEVfSVNfRlJPWkVOAEhQRV9JTlZBTElEX0hFQURFUl9UT0tFTgBJTlZBTElEX1RPS0VOAEZPUkJJRERFTgBFTkhBTkNFX1lPVVJfQ0FMTQBIUEVfSU5WQUxJRF9VUkwAQkxPQ0tFRF9CWV9QQVJFTlRBTF9DT05UUk9MAE1LQ09MAEFDTABIUEVfSU5URVJOQUwAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRV9VTk9GRklDSUFMAEhQRV9PSwBVTkxJTksAVU5MT0NLAFBSSQBSRVRSWV9XSVRIAEhQRV9JTlZBTElEX0NPTlRFTlRfTEVOR1RIAEhQRV9VTkVYUEVDVEVEX0NPTlRFTlRfTEVOR1RIAEZMVVNIAFBST1BQQVRDSABNLVNFQVJDSABVUklfVE9PX0xPTkcAUFJPQ0VTU0lORwBNSVNDRUxMQU5FT1VTX1BFUlNJU1RFTlRfV0FSTklORwBNSVNDRUxMQU5FT1VTX1dBUk5JTkcASFBFX0lOVkFMSURfVFJBTlNGRVJfRU5DT0RJTkcARXhwZWN0ZWQgQ1JMRgBIUEVfSU5WQUxJRF9DSFVOS19TSVpFAE1PVkUAQ09OVElOVUUASFBFX0NCX1NUQVRVU19DT01QTEVURQBIUEVfQ0JfSEVBREVSU19DT01QTEVURQBIUEVfQ0JfVkVSU0lPTl9DT01QTEVURQBIUEVfQ0JfVVJMX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8AAF4TAAAmEwAAMBAAAPAXAACdEwAAFRIAADkXAADwEgAAChAAAHUSAACtEgAAghMAAE8UAAB/EAAAoBUAACMUAACJEgAAixQAAE0VAADUEQAAzxQAABAYAADJFgAA3BYAAMERAADgFwAAuxQAAHQUAAB8FQAA5RQAAAgXAAAfEAAAZRUAAKMUAAAoFQAAAhUAAJkVAAAsEAAAixkAAE8PAADUDgAAahAAAM4QAAACFwAAiQ4AAG4TAAAcEwAAZhQAAFYXAADBEwAAzRMAAGwTAABoFwAAZhcAAF8XAAAiEwAAzg8AAGkOAADYDgAAYxYAAMsTAACqDgAAKBcAACYXAADFEwAAXRYAAOgRAABnEwAAZRMAAPIWAABzEwAAHRcAAPkWAADzEQAAzw4AAM4VAAAMEgAAsxEAAKURAABhEAAAMhcAALsTAEH5NQsBAQBBkDYL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB/TcLAQEAQZE4C14CAwICAgICAAACAgACAgACAgICAgICAgICAAQAAAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEH9OQsBAQBBkToLXgIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAQfA7Cw1sb3NlZWVwLWFsaXZlAEGJPAsBAQBBoDwL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiT4LAQEAQaA+C+cBAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAEGwwAALXwEBAAEBAQEBAAABAQABAQABAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAEGQwgALIWVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgBBwMIACy1yYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AQfnCAAsFAQIAAQMAQZDDAAvgAQQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH5xAALBQECAAEDAEGQxQAL4AEEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cYACwQBAAABAEGRxwAL3wEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEH6yAALBAEAAAIAQZDJAAtfAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAQfrKAAsEAQAAAQBBkMsACwEBAEGqywALQQIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAEH6zAALBAEAAAEAQZDNAAsBAQBBms0ACwYCAAAAAAIAQbHNAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB8M4AC5YBTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRU9SRElSRUNUT1JUUkNIUEFSQU1FVEVSVVJDRUJTQ1JJQkVBUkRPV05BQ0VJTkROS0NLVUJTQ1JJQkVIVFRQL0FEVFAv","base64")});var KC=T((TK,ZC)=>{"use strict";var{Buffer:_T}=require("node:buffer");ZC.exports=_T.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEV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JSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Lo=T((NK,oI)=>{"use strict";var XC=["GET","HEAD","POST"],PT=new Set(XC),OT=[101,204,205,304],eI=[301,302,303,307,308],GT=new Set(eI),tI=["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"],$T=new Set(tI),nI=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],YT=new Set(nI),HT=["follow","manual","error"],rI=["GET","HEAD","OPTIONS","TRACE"],VT=new Set(rI),JT=["navigate","same-origin","no-cors","cors"],qT=["omit","same-origin","include"],jT=["default","no-store","reload","no-cache","force-cache","only-if-cached"],WT=["content-encoding","content-language","content-location","content-type","content-length"],zT=["half"],sI=["CONNECT","TRACE","TRACK"],ZT=new Set(sI),iI=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],KT=new Set(iI);oI.exports={subresource:iI,forbiddenMethods:sI,requestBodyHeader:WT,referrerPolicy:nI,requestRedirect:HT,requestMode:JT,requestCredentials:qT,requestCache:jT,redirectStatus:eI,corsSafeListedMethods:XC,nullBodyStatus:OT,safeMethods:rI,badPorts:tI,requestDuplex:zT,subresourceSet:KT,badPortsSet:$T,redirectStatusSet:GT,corsSafeListedMethodsSet:PT,safeMethodsSet:VT,forbiddenMethodsSet:ZT,referrerPolicySet:YT}});var Jd=T((FK,aI)=>{"use strict";var Vd=Symbol.for("undici.globalOrigin.1");function XT(){return globalThis[Vd]}o(XT,"getGlobalOrigin");function eN(t){if(t===void 0){Object.defineProperty(globalThis,Vd,{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,Vd,{value:e,writable:!0,enumerable:!1,configurable:!1})}o(eN,"setGlobalOrigin");aI.exports={getGlobalOrigin:XT,setGlobalOrigin:eN}});var gt=T((MK,hI)=>{"use strict";var YA=require("node:assert"),tN=new TextEncoder,_o=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,nN=/[\u000A\u000D\u0009\u0020]/,rN=/[\u0009\u000A\u000C\u000D\u0020]/g,sN=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function iN(t){YA(t.protocol==="data:");let e=uI(t,!0);e=e.slice(5);let n={position:0},r=ci(",",e,n),s=r.length;if(r=lN(r,!0,!0),n.position>=e.length)return"failure";n.position++;let i=e.slice(s+1),a=lI(i);if(/;(\u0020){0,}base64$/i.test(r)){let l=gI(a);if(a=aN(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=qd(r);return c==="failure"&&(c=qd("text/plain;charset=US-ASCII")),{mimeType:c,body:a}}o(iN,"dataURLProcessor");function uI(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(uI,"URLSerializer");function HA(t,e,n){let r="";for(;n.position<e.length&&t(e[n.position]);)r+=e[n.position],n.position++;return r}o(HA,"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 lI(t){let e=tN.encode(t);return oN(e)}o(lI,"stringPercentDecode");function AI(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}o(AI,"isHexCharByte");function cI(t){return t>=48&&t<=57?t-48:(t&223)-55}o(cI,"hexByteToNumber");function oN(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&&!(AI(t[s+1])&&AI(t[s+2]))?n[r++]=37:(n[r++]=cI(t[s+1])<<4|cI(t[s+2]),s+=2)}return e===r?n:n.subarray(0,r)}o(oN,"percentDecode");function qd(t){t=$A(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=$A(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++,HA(d=>nN.test(d),t,e);let c=HA(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=dI(t,e,!0),ci(";",t,e);else if(l=ci(";",t,e),l=$A(l,!1,!0),l.length===0)continue;c.length!==0&&_o.test(c)&&(l.length===0||sN.test(l))&&!a.parameters.has(c)&&a.parameters.set(c,l)}return a}o(qd,"parseMIMEType");function aN(t){t=t.replace(rN,"");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(aN,"forgivingBase64");function dI(t,e,n){let r=e.position,s="";for(YA(t[e.position]==='"'),e.position++;s+=HA(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{YA(i==='"');break}}return n?s:t.slice(r,e.position)}o(dI,"collectAnHTTPQuotedString");function AN(t){YA(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(AN,"serializeAMimeType");function cN(t){return t===13||t===10||t===9||t===32}o(cN,"isHTTPWhiteSpace");function $A(t,e=!0,n=!0){return jd(t,e,n,cN)}o($A,"removeHTTPWhitespace");function uN(t){return t===13||t===10||t===9||t===12||t===32}o(uN,"isASCIIWhitespace");function lN(t,e=!0,n=!0){return jd(t,e,n,uN)}o(lN,"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 gI(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(gI,"isomorphicDecode");function dN(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(dN,"minimizeSupportedMimeType");hI.exports={dataURLProcessor:iN,URLSerializer:uI,collectASequenceOfCodePoints:HA,collectASequenceOfCodePointsFast:ci,stringPercentDecode:lI,parseMIMEType:qd,collectAnHTTPQuotedString:dI,serializeAMimeType:AN,removeChars:jd,removeHTTPWhitespace:$A,minimizeSupportedMimeType:dN,HTTP_TOKEN_CODEPOINTS:_o,isomorphicDecode:gI}});var je=T((_K,pI)=>{"use strict";var{types:dn,inspect:gN}=require("node:util"),{markAsUncloneable:hN}=require("node:worker_threads"),{toUSVString:pN}=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=hN||(()=>{});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 gN(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=pN;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);pI.exports={webidl:U}});var Qt=T((PK,vI)=>{"use strict";var{Transform:fN}=require("node:stream"),fI=require("node:zlib"),{redirectStatusSet:mN,referrerPolicySet:EN,badPortsSet:CN}=Lo(),{getGlobalOrigin:mI}=Jd(),{collectASequenceOfCodePoints:ns,collectAnHTTPQuotedString:IN,removeChars:yN,parseMIMEType:QN}=gt(),{performance:BN}=require("node:perf_hooks"),{isBlobLike:wN,ReadableStreamFrom:bN,isValidHTTPToken:EI,normalizedMethodRecordsBase:kN}=ue(),rs=require("node:assert"),{isUint8Array:RN}=require("node:util/types"),{webidl:Po}=je(),CI=[],JA;try{JA=require("node:crypto");let t=["sha256","sha384","sha512"];CI=JA.getHashes().filter(e=>t.includes(e))}catch{}function II(t){let e=t.urlList,n=e.length;return n===0?null:e[n-1].toString()}o(II,"responseURL");function SN(t,e){if(!mN.has(t.status))return null;let n=t.headersList.get("location",!0);return n!==null&&QI(n)&&(yI(n)||(n=vN(n)),n=new URL(n,II(t))),n&&!n.hash&&(n.hash=e),n}o(SN,"responseLocationURL");function yI(t){for(let e=0;e<t.length;++e){let n=t.charCodeAt(e);if(n>126||n<32)return!1}return!0}o(yI,"isValidEncodedURL");function vN(t){return Buffer.from(t,"binary").toString("utf8")}o(vN,"normalizeBinaryStringToUtf8");function Go(t){return t.urlList[t.urlList.length-1]}o(Go,"requestCurrentURL");function xN(t){let e=Go(t);return RI(e)&&CN.has(e.port)?"blocked":"allowed"}o(xN,"requestBadPort");function DN(t){return t instanceof Error||t?.constructor?.name==="Error"||t?.constructor?.name==="DOMException"}o(DN,"isErrorLike");function TN(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(TN,"isValidReasonPhrase");var NN=EI;function QI(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(QI,"isValidHeaderValue");function FN(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(EN.has(a)){s=a;break}}s!==""&&(t.referrerPolicy=s)}o(FN,"setRequestReferrerPolicyOnRedirect");function UN(){return"allowed"}o(UN,"crossOriginResourcePolicyCheck");function MN(){return"success"}o(MN,"corsCheck");function LN(){return"success"}o(LN,"TAOCheck");function _N(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}o(_N,"appendFetchMetadata");function PN(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&&zd(t.origin)&&!zd(Go(t))&&(e=null);break;case"same-origin":qA(t,Go(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}o(PN,"appendRequestOriginHeader");function ui(t,e){return t}o(ui,"coarsenTime");function ON(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(ON,"clampAndCoarsenConnectionTimingInfo");function GN(t){return ui(BN.now(),t)}o(GN,"coarsenedSharedCurrentTime");function $N(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($N,"createOpaqueTimingInfo");function BI(){return{referrerPolicy:"strict-origin-when-cross-origin"}}o(BI,"makePolicyContainer");function YN(t){return{referrerPolicy:t.referrerPolicy}}o(YN,"clonePolicyContainer");function HN(t){let e=t.referrerPolicy;rs(e);let n=null;if(t.referrer==="client"){let c=mI();if(!c||c.origin==="null")return"no-referrer";n=new URL(c)}else t.referrer instanceof URL&&(n=t.referrer);let r=Wd(n),s=Wd(n,!0);r.toString().length>4096&&(r=s);let i=qA(t,r),a=Oo(r)&&!Oo(t.url);switch(e){case"origin":return s??Wd(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 qA(r,c)?r:Oo(r)&&!Oo(c)?"no-referrer":s}default:return a?"no-referrer":s}}o(HN,"determineRequestsReferrer");function Wd(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(Wd,"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 VN(t,e){if(JA===void 0)return!0;let n=wI(e);if(n==="no metadata"||n.length===0)return!0;let r=qN(n),s=jN(n,r);for(let i of s){let a=i.algo,c=i.hash,l=JA.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)),WN(l,c))return!0}return!1}o(VN,"bytesMatch");var JN=/(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function wI(t){let e=[],n=!0;for(let r of t.split(" ")){n=!1;let s=JN.exec(r);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let i=s.groups.algo.toLowerCase();CI.includes(i)&&e.push(s.groups)}return n===!0?"no metadata":e}o(wI,"parseMetadata");function qN(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(qN,"getStrongestMetadata");function jN(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(jN,"filterMetadataListByAlgorithm");function WN(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(WN,"compareBase64Mixed");function zN(t){}o(zN,"tryUpgradeRequestToAPotentiallyTrustworthyURL");function qA(t,e){return t.origin===e.origin&&t.origin==="null"||t.protocol===e.protocol&&t.hostname===e.hostname&&t.port===e.port}o(qA,"sameOrigin");function ZN(){let t,e;return{promise:new Promise((r,s)=>{t=r,e=s}),resolve:t,reject:e}}o(ZN,"createDeferredPromise");function KN(t){return t.controller.state==="aborted"}o(KN,"isAborted");function XN(t){return t.controller.state==="aborted"||t.controller.state==="terminated"}o(XN,"isCancelled");function eF(t){return kN[t.toLowerCase()]??t}o(eF,"normalizeMethod");function tF(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(tF,"serializeJavascriptValueToJSONString");var nF=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function bI(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,nF),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(bI,"createIterator");function rF(t,e,n,r=0,s=1){let i=bI(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(rF,"iteratorMixin");async function sF(t,e,n){let r=e,s=n,i;try{i=t.stream.getReader()}catch(a){s(a);return}try{r(await kI(i))}catch(a){s(a)}}o(sF,"fullyReadBody");function iF(t){return t instanceof ReadableStream||t[Symbol.toStringTag]==="ReadableStream"&&typeof t.tee=="function"}o(iF,"isReadableStreamLike");function oF(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(oF,"readableStreamClose");var aF=/[^\x00-\xFF]/;function VA(t){return rs(!aF.test(t)),t}o(VA,"isomorphicEncode");async function kI(t){let e=[],n=0;for(;;){let{done:r,value:s}=await t.read();if(r)return Buffer.concat(e,n);if(!RN(s))throw new TypeError("Received non-Uint8Array chunk");e.push(s),n+=s.length}}o(kI,"readAllBytes");function AF(t){rs("protocol"in t);let e=t.protocol;return e==="about:"||e==="blob:"||e==="data:"}o(AF,"urlIsLocal");function zd(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(zd,"urlHasHttpsScheme");function RI(t){rs("protocol"in t);let e=t.protocol;return e==="http:"||e==="https:"}o(RI,"urlIsHttpHttpsScheme");function cF(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(cF,"simpleRangeHeaderValue");function uF(t,e,n){let r="bytes ";return r+=VA(`${t}`),r+="-",r+=VA(`${e}`),r+="/",r+=VA(`${n}`),r}o(uF,"buildContentRange");var Zd=class extends fN{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?fI.createInflate(this.#e):fI.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 lF(t){return new Zd(t)}o(lF,"createInflate");function dF(t){let e=null,n=null,r=null,s=SI("content-type",t);if(s===null)return"failure";for(let i of s){let a=QN(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(dF,"extractMimeType");function gF(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+=IN(e,n),n.position<e.length)continue}else rs(e.charCodeAt(n.position)===44),n.position++;s=yN(s,!0,!0,i=>i===9||i===32),r.push(s),s=""}return r}o(gF,"gettingDecodingSplitting");function SI(t,e){let n=e.get(t,!0);return n===null?null:gF(n)}o(SI,"getDecodeSplit");var hF=new TextDecoder;function pF(t){return t.length===0?"":(t[0]===239&&t[1]===187&&t[2]===191&&(t=t.subarray(3)),hF.decode(t))}o(pF,"utf8DecodeBytes");var Kd=class{static{o(this,"EnvironmentSettingsObjectBase")}get baseUrl(){return mI()}get origin(){return this.baseUrl?.origin}policyContainer=BI()},Xd=class{static{o(this,"EnvironmentSettingsObject")}settingsObject=new Kd},fF=new Xd;vI.exports={isAborted:KN,isCancelled:XN,isValidEncodedURL:yI,createDeferredPromise:ZN,ReadableStreamFrom:bN,tryUpgradeRequestToAPotentiallyTrustworthyURL:zN,clampAndCoarsenConnectionTimingInfo:ON,coarsenedSharedCurrentTime:GN,determineRequestsReferrer:HN,makePolicyContainer:BI,clonePolicyContainer:YN,appendFetchMetadata:_N,appendRequestOriginHeader:PN,TAOCheck:LN,corsCheck:MN,crossOriginResourcePolicyCheck:UN,createOpaqueTimingInfo:$N,setRequestReferrerPolicyOnRedirect:FN,isValidHTTPToken:EI,requestBadPort:xN,requestCurrentURL:Go,responseURL:II,responseLocationURL:SN,isBlobLike:wN,isURLPotentiallyTrustworthy:Oo,isValidReasonPhrase:TN,sameOrigin:qA,normalizeMethod:eF,serializeJavascriptValueToJSONString:tF,iteratorMixin:rF,createIterator:bI,isValidHeaderName:NN,isValidHeaderValue:QI,isErrorLike:DN,fullyReadBody:sF,bytesMatch:VN,isReadableStreamLike:iF,readableStreamClose:oF,isomorphicEncode:VA,urlIsLocal:AF,urlHasHttpsScheme:zd,urlIsHttpHttpsScheme:RI,readAllBytes:kI,simpleRangeHeaderValue:cF,buildContentRange:uF,parseMetadata:wI,createInflate:lF,extractMimeType:dF,getDecodeSplit:SI,utf8DecodeBytes:pF,environmentSettingsObject:fF}});var ur=T((GK,xI)=>{"use strict";xI.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var tg=T(($K,DI)=>{"use strict";var{Blob:mF,File:EF}=require("node:buffer"),{kState:_n}=ur(),{webidl:gn}=je(),eg=class t{static{o(this,"FileLike")}constructor(e,n,r={}){let s=n,i=r.type,a=r.lastModified??Date.now();this[_n]={blobLike:e,name:s,type:i,lastModified:a}}stream(...e){return gn.brandCheck(this,t),this[_n].blobLike.stream(...e)}arrayBuffer(...e){return gn.brandCheck(this,t),this[_n].blobLike.arrayBuffer(...e)}slice(...e){return gn.brandCheck(this,t),this[_n].blobLike.slice(...e)}text(...e){return gn.brandCheck(this,t),this[_n].blobLike.text(...e)}get size(){return gn.brandCheck(this,t),this[_n].blobLike.size}get type(){return gn.brandCheck(this,t),this[_n].blobLike.type}get name(){return gn.brandCheck(this,t),this[_n].name}get lastModified(){return gn.brandCheck(this,t),this[_n].lastModified}get[Symbol.toStringTag](){return"File"}};gn.converters.Blob=gn.interfaceConverter(mF);function CF(t){return t instanceof EF||t&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&t[Symbol.toStringTag]==="File"}o(CF,"isFileLike");DI.exports={FileLike:eg,isFileLike:CF}});var Yo=T((HK,MI)=>{"use strict";var{isBlobLike:jA,iteratorMixin:IF}=Qt(),{kState:st}=ur(),{kEnumerableProperty:li}=ue(),{FileLike:TI,isFileLike:yF}=tg(),{webidl:we}=je(),{File:UI}=require("node:buffer"),NI=require("node:util"),FI=globalThis.File??UI,$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=ng(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=ng(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)}[NI.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=NI.formatWithOptions(n,r);return`FormData ${s.slice(s.indexOf("]")+2)}`}};IF("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 ng(t,e,n){if(typeof e!="string"){if(yF(e)||(e=e instanceof Blob?new FI([e],"blob",{type:e.type}):new TI(e,"blob",{type:e.type})),n!==void 0){let r={type:e.type,lastModified:e.lastModified};e=e instanceof UI?new FI([e],n,r):new TI(e,n,r)}}return{name:t,value:e}}o(ng,"makeEntry");MI.exports={FormData:$o,makeEntry:ng}});var $I=T((JK,GI)=>{"use strict";var{isUSVString:LI,bufferToLowerCasedHeaderName:QF}=ue(),{utf8DecodeBytes:BF}=Qt(),{HTTP_TOKEN_CODEPOINTS:wF,isomorphicDecode:_I}=gt(),{isFileLike:bF}=tg(),{makeEntry:kF}=Yo(),WA=require("node:assert"),{File:RF}=require("node:buffer"),SF=globalThis.File??RF,vF=Buffer.from('form-data; name="'),PI=Buffer.from("; filename"),xF=Buffer.from("--"),DF=Buffer.from(`--\r
|
|
4
|
+
`);function TF(t){for(let e=0;e<t.length;++e)if((t.charCodeAt(e)&-128)!==0)return!1;return!0}o(TF,"isAsciiString");function NF(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(NF,"validateBoundary");function FF(t,e){WA(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&&zA(t,xF,i)||i.position===t.length-4&&zA(t,DF,i))return s;if(t[i.position]!==13||t[i.position+1]!==10)return"failure";i.position+=2;let c=UF(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",TF(g)||(g=""),m=new SF([f],d,{type:g})):m=BF(Buffer.from(f)),WA(LI(l)),WA(typeof m=="string"&&LI(m)||bF(m)),s.push(kF(l,m,d))}}o(FF,"multipartFormDataParser");function UF(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=rg(a,!0,!0,c=>c===9||c===32),!wF.test(a.toString())||t[e.position]!==58)return"failure";switch(e.position++,di(c=>c===32||c===9,t,e),QF(a)){case"content-disposition":{if(n=r=null,!zA(t,vF,e)||(e.position+=17,n=OI(t,e),n===null))return"failure";if(zA(t,PI,e)){let c=e.position+PI.length;if(t[c]===42&&(e.position+=1,c+=1),t[c]!==61||t[c+1]!==34||(e.position+=12,r=OI(t,e),r===null))return"failure"}break}case"content-type":{let c=di(l=>l!==10&&l!==13,t,e);c=rg(c,!1,!0,l=>l===9||l===32),s=_I(c);break}case"content-transfer-encoding":{let c=di(l=>l!==10&&l!==13,t,e);c=rg(c,!1,!0,l=>l===9||l===32),i=_I(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(UF,"parseMultipartFormDataHeaders");function OI(t,e){WA(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(OI,"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 rg(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(rg,"removeChars");function zA(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(zA,"bufferStartsWith");GI.exports={multipartFormDataParser:FF,validateBoundary:NF}});var pi=T((jK,KI)=>{"use strict";var Ho=ue(),{ReadableStreamFrom:MF,isBlobLike:YI,isReadableStreamLike:LF,readableStreamClose:_F,createDeferredPromise:PF,fullyReadBody:OF,extractMimeType:GF,utf8DecodeBytes:JI}=Qt(),{FormData:HI}=Yo(),{kState:hi}=ur(),{webidl:$F}=je(),{Blob:YF}=require("node:buffer"),sg=require("node:assert"),{isErrored:qI,isDisturbed:HF}=require("node:stream"),{isArrayBuffer:VF}=require("node:util/types"),{serializeAMimeType:JF}=gt(),{multipartFormDataParser:qF}=$I(),ig;try{let t=require("node:crypto");ig=o(e=>t.randomInt(0,e),"random")}catch{ig=o(t=>Math.floor(Math.random(t)),"random")}var ZA=new TextEncoder;function jF(){}o(jF,"noop");var jI=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,WI;jI&&(WI=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!HF(e)&&!qI(e)&&e.cancel("Response object has been garbage collected").catch(jF)}));function zI(t,e=!1){let n=null;t instanceof ReadableStream?n=t:YI(t)?n=t.stream():n=new ReadableStream({async pull(l){let d=typeof s=="string"?ZA.encode(s):s;d.byteLength&&l.enqueue(d),queueMicrotask(()=>_F(l))},start(){},type:"bytes"}),sg(LF(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(VF(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${`${ig(1e11)}`.padStart(11,"0")}`,d=`--${l}\r
|
|
6
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
|
|
7
|
+
`),"normalizeLinefeeds"),f=[],m=new Uint8Array([13,10]);i=0;let C=!1;for(let[v,Q]of t)if(typeof Q=="string"){let D=ZA.encode(d+`; name="${g(h(v))}"\r
|
|
8
8
|
\r
|
|
9
9
|
${h(Q)}\r
|
|
10
|
-
`);f.push(
|
|
10
|
+
`);f.push(D),i+=D.byteLength}else{let D=ZA.encode(`${d}; name="${g(h(v))}"`+(Q.name?`; filename="${g(Q.name)}"`:"")+`\r
|
|
11
11
|
Content-Type: ${Q.type||"application/octet-stream"}\r
|
|
12
12
|
\r
|
|
13
|
-
`);f.push(
|
|
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((_K,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
|
|
13
|
+
`);f.push(D,Q,m),typeof Q.size=="number"?i+=D.byteLength+Q.size+m.byteLength:C=!0}let y=ZA.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(YI(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:MF(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(!qI(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(zI,"extractBody");function WF(t,e=!1){return t instanceof ReadableStream&&(sg(!Ho.isDisturbed(t),"The body has already been consumed."),sg(!t.locked,"The stream is locked.")),zI(t,e)}o(WF,"safelyExtractBody");function zF(t,e){let[n,r]=e.stream.tee();return e.stream=n,{stream:r,length:e.length,source:e.source}}o(zF,"cloneBody");function ZF(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}o(ZF,"throwIfAborted");function KF(t){return{blob(){return gi(this,n=>{let r=VI(this);return r===null?r="":r&&(r=JF(r)),new YF([n],{type:r})},t)},arrayBuffer(){return gi(this,n=>new Uint8Array(n).buffer,t)},text(){return gi(this,JI,t)},json(){return gi(this,eU,t)},formData(){return gi(this,n=>{let r=VI(this);if(r!==null)switch(r.essence){case"multipart/form-data":{let s=qF(n,r);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let i=new HI;return i[hi]=s,i}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(n.toString()),i=new HI;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(KF,"bodyMixinMethods");function XF(t){Object.assign(t.prototype,KF(t))}o(XF,"mixinBody");async function gi(t,e,n){if($F.brandCheck(t,n),ZI(t))throw new TypeError("Body is unusable: Body has already been read");ZF(t[hi]);let r=PF(),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 OF(t[hi].body,i,s),r.promise)}o(gi,"consumeBody");function ZI(t){let e=t[hi].body;return e!=null&&(e.stream.locked||Ho.isDisturbed(e.stream))}o(ZI,"bodyUnusable");function eU(t){return JSON.parse(JI(t))}o(eU,"parseJSONFromBytes");function VI(t){let e=t[hi].headersList,n=GF(e);return n==="failure"?null:n}o(VI,"bodyMimeType");KI.exports={extractBody:zI,safelyExtractBody:WF,cloneBody:zF,mixinBody:XF,streamRegistry:WI,hasFinalizationRegistry:jI,bodyUnusable:ZI}});var hy=T((zK,gy)=>{"use strict";var W=require("node:assert"),J=ue(),{channels:XI}=ni(),og=Gd(),{RequestContentLengthMismatchError:ss,ResponseContentLengthMismatchError:ey,RequestAbortedError:Ay,InvalidArgumentError:tU,HeadersTimeoutError:nU,HeadersOverflowError:rU,SocketError:fi,InformationalError:is,BodyTimeoutError:sU,HTTPParserError:iU,ResponseExceededMaxSizeError:oU}=pe(),{kUrl:cy,kReset:ht,kClient:tc,kParser:be,kBlocking:qo,kRunning:_e,kPending:uy,kSize:ty,kWriting:lr,kQueue:Wt,kNoRef:Vo,kKeepAliveDefaultTimeout:aU,kHostHeader:AU,kPendingIdx:cU,kRunningIdx:Ot,kError:it,kPipelining:nc,kSocket:os,kKeepAliveTimeoutValue:sc,kMaxHeadersSize:ag,kKeepAliveMaxTimeout:uU,kKeepAliveTimeoutThreshold:lU,kHeadersTimeout:dU,kBodyTimeout:gU,kStrictContentLength:ug,kMaxRequests:ny,kCounter:hU,kMaxResponseSize:pU,kOnError:ry,kResume:Pn,kHTTPContext:ly}=Re(),Bt=WC(),sy=Buffer.alloc(0),KA=Buffer[Symbol.species],XA=J.addListener,fU=J.removeAllListeners,as=Symbol("kIdleSocketValidation"),mi=Symbol("kIdleSocketValidationTimeout"),hg=Symbol("kSocketUsed"),Ag;async function mU(){let t=process.env.JEST_WORKER_ID?Hd():void 0,e;try{e=await WebAssembly.compile(KC())}catch{e=await WebAssembly.compile(t||Hd())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:o((n,r,s)=>0,"wasm_on_url"),wasm_on_status:o((n,r,s)=>{W(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onStatus(new KA(hn.buffer,i,s))||0},"wasm_on_status"),wasm_on_message_begin:o(n=>(W(Fe.ptr===n),Fe.onMessageBegin()||0),"wasm_on_message_begin"),wasm_on_header_field:o((n,r,s)=>{W(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onHeaderField(new KA(hn.buffer,i,s))||0},"wasm_on_header_field"),wasm_on_header_value:o((n,r,s)=>{W(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onHeaderValue(new KA(hn.buffer,i,s))||0},"wasm_on_header_value"),wasm_on_headers_complete:o((n,r,s,i)=>(W(Fe.ptr===n),Fe.onHeadersComplete(r,!!s,!!i)||0),"wasm_on_headers_complete"),wasm_on_body:o((n,r,s)=>{W(Fe.ptr===n);let i=r-pn+hn.byteOffset;return Fe.onBody(new KA(hn.buffer,i,s))||0},"wasm_on_body"),wasm_on_message_complete:o(n=>(W(Fe.ptr===n),Fe.onMessageComplete()||0),"wasm_on_message_complete")}})}o(mU,"lazyllhttp");var cg=null,lg=mU();lg.catch();var Fe=null,hn=null,ec=0,pn=null,EU=0,Jo=1,Ei=2|Jo,rc=4|Jo,dg=8|EU,gg=class{static{o(this,"Parser")}constructor(e,n,{exports:r}){W(Number.isFinite(e[ag])&&e[ag]>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[ag],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=e[pU]}setTimeout(e,n){e!==this.timeoutValue||n&Jo^this.timeoutType&Jo?(this.timeout&&(og.clearTimeout(this.timeout),this.timeout=null),e&&(n&Jo?this.timeout=og.setFastTimeout(iy,e,new WeakRef(this)):(this.timeout=setTimeout(iy,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||(W(this.ptr!=null),W(Fe==null),this.llhttp.llhttp_resume(this.ptr),W(this.timeoutType===rc),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||sy),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){W(this.ptr!=null),W(Fe==null),W(!this.paused);let{socket:n,llhttp:r}=this;e.length>ec&&(pn&&r.free(pn),ec=Math.ceil(e.length/4096)*4096,pn=r.malloc(ec)),new Uint8Array(r.memory.buffer,pn,ec).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(){W(Fe===null),W(this.ptr!=null),W(!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,sy)}createError(e,n){let{llhttp:r,contentLength:s,bytesRead:i}=this;if(s&&i!==parseInt(s,10))return new ey;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 iU(c,Bt.ERROR[e],n)}destroy(){W(this.ptr!=null),W(Fe==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&og.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[Ot]];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 rU)}onUpgrade(e){let{upgrade:n,client:r,socket:s,headers:i,statusCode:a,statusText:c}=this;W(n),W(r[os]===s),W(!s.destroyed),W(!this.paused),W((i.length&1)===0);let l=r[Wt][r[Ot]];W(l),W(l.upgrade||l.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,s.unshift(e),s[be].destroy(),s[be]=null,s[tc]=null,s[it]=null,fU(s),r[os]=null,r[ly]=null,r[Wt][r[Ot]++]=null,r.emit("disconnect",r[cy],[r],new is("upgrade"));try{l.onUpgrade(a,i,s,c)}catch(d){J.errorRequest(r,l,d),J.destroy(s,d)}r[Pn]()}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[Ot]];if(!l)return-1;if(W(!this.upgrade),W(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(W(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[gU];this.setTimeout(g,rc)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method==="CONNECT")return W(s[_e]===1),this.upgrade=!0,2;if(n)return W(s[_e]===1),this.upgrade=!0,2;if(W((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&s[nc]){let g=this.keepAlive?J.parseKeepAliveTimeout(this.keepAlive):null;if(g!=null){let h=Math.min(g-s[lU],s[uU]);h<=0?i[ht]=!0:s[sc]=h}else s[sc]=s[aU]}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[Pn]()),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[Ot]];if(W(a),W(this.timeoutType===rc),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),W(s>=200),i>-1&&this.bytesRead+e.length>i)return J.destroy(r,new oU),-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;W(r>=100),W((this.headers.length&1)===0);let d=e[Wt][e[Ot]];if(W(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 ey),-1;if(d.onComplete(i),e[Wt][e[Ot]++]=null,n[hg]=!0,n[lr])return W(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[nc]==null||e[nc]===1?setImmediate(()=>e[Pn]()):e[Pn]()}else return J.destroy(n,new is("reset")),Bt.ERROR.PAUSED}}};function iy(t){let{socket:e,timeoutType:n,client:r,paused:s}=t.deref();n===Ei?(!e[lr]||e.writableNeedDrain||r[_e]>1)&&(W(!s,"cannot be paused while waiting for headers"),J.destroy(e,new nU)):n===rc?s||J.destroy(e,new sU):n===dg&&(W(r[_e]===0&&r[sc]),J.destroy(e,new is("socket idle timeout")))}o(iy,"onParserTimeout");async function CU(t,e){t[os]=e,cg||(cg=await lg,lg=null),e[Vo]=!1,e[lr]=!1,e[ht]=!1,e[qo]=!1,e[as]=0,e[mi]=null,e[hg]=!1,e[be]=new gg(t,e,cg),XA(e,"error",function(r){let s=this[be];if(r.code==="ECONNRESET"&&s.statusCode&&!s.shouldKeepAlive){let i=s.finish();i&&(this[it]=i,this[tc][ry](i));return}this[it]=r,this[tc][ry](r)}),XA(e,"readable",function(){let r=this[be];r&&r.readMore()}),XA(e,"end",function(){let r=this[be];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)))}),XA(e,"close",function(){let r=this[tc],s=this[be];dy(this),s&&(!this[it]&&s.statusCode&&!s.shouldKeepAlive&&(this[it]=s.finish()||this[it]),this[be].destroy(),this[be]=null);let i=this[it]||new fi("closed",J.getSocketInfo(this));if(r[os]=null,r[ly]=null,r.destroyed){W(r[uy]===0);let a=r[Wt].splice(r[Ot]);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[Ot]];r[Wt][r[Ot]++]=null,J.errorRequest(r,a,i)}r[cU]=r[Ot],W(r[_e]===0),r.emit("disconnect",r[cy],[r],i),r[Pn]()});let n=!1;return e.on("close",()=>{n=!0}),{version:"h1",defaultPipelining:1,write(...r){return BU(t,...r)},resume(){yU(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(CU,"connectH1");function dy(t){t[mi]&&(clearImmediate(t[mi]),t[mi]=null),t[as]=0}o(dy,"clearIdleSocketValidation");function IU(t,e){e[as]=1,e[mi]=setImmediate(()=>{e[mi]=null,e[as]=2,t[os]===e&&!e.destroyed&&t[Pn]()})}o(IU,"scheduleIdleSocketValidation");function yU(t){let e=t[os];if(e&&!e.destroyed){if(t[ty]===0?!e[Vo]&&e.unref&&(e.unref(),e[Vo]=!0):e[Vo]&&e.ref&&(e.ref(),e[Vo]=!1),t[_e]===0&&t[uy]>0&&e[hg]){if(e[as]===0)return IU(t,e),e[be].readMore(),e.destroyed,void 0;if(e[as]===1)return e[be].readMore(),e.destroyed,void 0}if(t[_e]===0&&(e[be].readMore(),e.destroyed))return;if(t[ty]===0)e[be].timeoutType!==dg&&e[be].setTimeout(t[sc],dg);else if(t[_e]>0&&e[be].statusCode<200&&e[be].timeoutType!==Ei){let n=t[Wt][t[Ot]],r=n.headersTimeout!=null?n.headersTimeout:t[dU];e[be].setTimeout(r,Ei)}}}o(yU,"resumeH1");function QU(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}o(QU,"shouldSendContentLength");function BU(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)){Ag||(Ag=pi().extractBody);let[v,Q]=Ag(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 tU("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),QU(n)&&g>0&&e.contentLength!==null&&e.contentLength!==g){if(t[ug])return J.errorRequest(t,e,new ss),!1;process.emitWarning(new ss)}let m=t[os];dy(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 Ay),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[ny]&&m[hU]++>=t[ny]&&(m[ht]=!0),a&&(m[qo]=!0);let y=`${n} ${r} HTTP/1.1\r
|
|
15
15
|
`;if(typeof s=="string"?y+=`host: ${s}\r
|
|
16
|
-
`:y+=t[
|
|
16
|
+
`:y+=t[AU],i?y+=`connection: upgrade\r
|
|
17
17
|
upgrade: ${i}\r
|
|
18
|
-
`:t[
|
|
18
|
+
`:t[nc]&&!m[ht]?y+=`connection: keep-alive\r
|
|
19
19
|
`:y+=`connection: close\r
|
|
20
|
-
`,Array.isArray(d))for(let v=0;v<d.length;v+=2){let Q=d[v+0],
|
|
21
|
-
`;else y+=`${Q}: ${
|
|
22
|
-
`}return
|
|
20
|
+
`,Array.isArray(d))for(let v=0;v<d.length;v+=2){let Q=d[v+0],D=d[v+1];if(Array.isArray(D))for(let G=0;G<D.length;G++)y+=`${Q}: ${D[G]}\r
|
|
21
|
+
`;else y+=`${Q}: ${D}\r
|
|
22
|
+
`}return XI.sendHeaders.hasSubscribers&&XI.sendHeaders.publish({request:e,headers:y,socket:m}),!l||f===0?oy(C,null,t,e,m,g,y,h):J.isBuffer(l)?oy(C,l,t,e,m,g,y,h):J.isBlobLike(l)?typeof l.stream=="function"?ay(C,l.stream(),t,e,m,g,y,h):bU(C,l,t,e,m,g,y,h):J.isStream(l)?wU(C,l,t,e,m,g,y,h):J.isIterable(l)?ay(C,l,t,e,m,g,y,h):W(!1),!0}o(BU,"writeH1");function wU(t,e,n,r,s,i,a,c){W(i!==0||n[_e]===0,"stream body cannot be pipelined");let l=!1,d=new ic({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 Ay;queueMicrotask(()=>m(C))}},"onClose"),m=o(function(C){if(!l){if(l=!0,W(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(wU,"writeStream");function oy(t,e,n,r,s,i,a,c){try{e?J.isBuffer(e)&&(W(i===e.byteLength,"buffer body must have content length"),s.cork(),s.write(`${a}content-length: ${i}\r
|
|
23
23
|
\r
|
|
24
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
25
|
\r
|
|
26
|
-
`,"latin1"):(
|
|
27
|
-
`,"latin1")),r.onRequestSent(),n[
|
|
26
|
+
`,"latin1"):(W(i===null,"no body must not have content length"),s.write(`${a}\r
|
|
27
|
+
`,"latin1")),r.onRequestSent(),n[Pn]()}catch(l){t(l)}}o(oy,"writeBuffer");async function bU(t,e,n,r,s,i,a,c){W(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
28
|
\r
|
|
29
|
-
`,"latin1"),s.write(l),s.uncork(),r.onBodySent(l),r.onRequestSent(),!c&&r.reset!==!1&&(s[ht]=!0),n[
|
|
29
|
+
`,"latin1"),s.write(l),s.uncork(),r.onBodySent(l),r.onRequestSent(),!c&&r.reset!==!1&&(s[ht]=!0),n[Pn]()}catch(l){t(l)}}o(bU,"writeBlob");async function ay(t,e,n,r,s,i,a,c){W(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)=>{W(l===null),s[it]?m(s[it]):l=f}),"waitForDrain");s.on("close",d).on("drain",d);let h=new ic({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(ay,"writeIterable");var ic=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[ug])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
30
|
`,"latin1"):n.write(`${l}content-length: ${s}\r
|
|
31
31
|
\r
|
|
32
32
|
`,"latin1")),s===null&&n.write(`\r
|
|
33
33
|
${d.toString(16)}\r
|
|
34
|
-
`,"latin1"),this.bytesWritten+=d;let g=n.write(e);return n.uncork(),r.onBodySent(e),g||n[
|
|
34
|
+
`,"latin1"),this.bytesWritten+=d;let g=n.write(e);return n.uncork(),r.onBodySent(e),g||n[be].timeout&&n[be].timeoutType===Ei&&n[be].timeout.refresh&&n[be].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
35
|
\r
|
|
36
36
|
`,"latin1"):e.write(`${a}\r
|
|
37
37
|
`,"latin1"):n===null&&e.write(`\r
|
|
38
38
|
0\r
|
|
39
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((OK,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(($K,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((HK,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((JK,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((WK,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((ZK,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((XK,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((t8,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((r8,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((i8,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((a8,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((c8,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((l8,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((g8,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((p8,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((m8,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((C8,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((y8,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((B8,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((b8,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((k8,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((v8,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((D8,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((T8,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((F8,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((U8,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((L8,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((P8,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((G8,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((H8,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((q8,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((W8,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(`
|
|
40
|
+
`,"latin1"),n!==null&&s!==n){if(r[ug])throw new ss;process.emitWarning(new ss)}e[be].timeout&&e[be].timeoutType===Ei&&e[be].timeout.refresh&&e[be].timeout.refresh(),r[Pn]()}}destroy(e){let{socket:n,client:r,abort:s}=this;n[lr]=!1,e&&(W(r[_e]<=1,"pipeline should only contain this request"),s(e))}};gy.exports=CU});var Qy=T((KK,yy)=>{"use strict";var mn=require("node:assert"),{errorMonitor:pg}=require("node:events"),{pipeline:kU}=require("node:stream"),de=ue(),{RequestContentLengthMismatchError:mg,RequestAbortedError:fg,SocketError:jo,InformationalError:oc}=pe(),{kUrl:ac,kReset:cc,kClient:Ci,kRunning:uc,kPending:RU,kQueue:As,kPendingIdx:Cg,kRunningIdx:fn,kError:Zt,kSocket:Ye,kStrictContentLength:SU,kOnError:Ig,kMaxConcurrentStreams:Cy,kHTTP2Session:zt,kResume:gr,kSize:vU,kHTTPContext:xU}=Re(),dr=Symbol("open streams"),py,fy=!1,Ac;try{Ac=require("node:http2")}catch{Ac={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:DU,HTTP2_HEADER_METHOD:TU,HTTP2_HEADER_PATH:NU,HTTP2_HEADER_SCHEME:FU,HTTP2_HEADER_CONTENT_LENGTH:UU,HTTP2_HEADER_EXPECT:MU,HTTP2_HEADER_STATUS:Eg}}=Ac;function Iy(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(Iy,"parseH2Headers");function LU(t){let{[Eg]:e,...n}=t;return Iy(n)}o(LU,"parseH2ResponseHeaders");async function _U(t,e){t[Ye]=e,fy||(fy=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let n=Ac.connect(t[ac],{createConnection:o(()=>e,"createConnection"),peerMaxConcurrentStreams:t[Cy]});n[dr]=0,n[Ci]=t,n[Ye]=e,de.addListener(n,"error",OU),de.addListener(n,"frameError",GU),de.addListener(n,"end",$U),de.addListener(n,"goaway",YU),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){mn(s[RU]===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){this[Zt]=s,this[Ci][Ig](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[Cg]=t[fn],mn(t[uc]===0),t.emit("disconnect",t[ac],[t],s),t[gr]()});let r=!1;return e.on("close",()=>{r=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return VU(t,...s)},resume(){PU(t)},destroy(s,i){r?queueMicrotask(i):e.destroy(s).on("close",i)},get destroyed(){return e.destroyed},busy(){return!1}}}o(_U,"connectH2");function PU(t){let e=t[Ye];e?.destroyed===!1&&(t[vU]===0&&t[Cy]===0?(e.unref(),t[zt].unref()):(e.ref(),t[zt].ref()))}o(PU,"resumeH2");function OU(t){this[Ye][Zt]=t,this[Ci][Ig](t)}o(OU,"onHttp2SessionError");function GU(t,e,n){if(n===0){let r=new oc(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[Ye][Zt]=r,this[Ci][Ig](r)}}o(GU,"onHttp2FrameError");function $U(){let t=new jo("other side closed",de.getSocketInfo(this[Ye]));this.destroy(t),de.destroy(this[Ye],t)}o($U,"onHttp2SessionEnd");function YU(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[xU]=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[Cg]=n[fn]}mn(n[uc]===0),n.emit("disconnect",n[ac],[n],e),n[gr]()}o(YU,"onHTTP2GoAway");function HU(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}o(HU,"shouldSendContentLength");function VU(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[ac];h[DU]=i||`${m}${C?`:${C}`:""}`,h[TU]=r;let y=o(P=>{if(!e.aborted){if(e.completed){r==="CONNECT"&&f!=null&&de.destroy(f,P||new fg);return}P=P||new fg,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(pg,Ee),e.onUpgradeResponse(Number(De[Eg]),De,LU)},"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(pg,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(pg,Ee),e.onUpgradeError(new oc(`HTTP/2: "stream error" received - code ${f.rstCode}`))),n[dr]-=1,n[dr]===0&&n.unref()}),!0}h[NU]=s,h[FU]="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)){py??=pi().extractBody;let[P,ae]=py(g);h["content-type"]=ae,g=P.stream,Q=P.length}if(Q==null&&(Q=e.contentLength),(Q===0||!v)&&(Q=null),HU(r)&&Q>0&&e.contentLength!=null&&e.contentLength!==Q){if(t[SU])return de.errorRequest(t,e,new mg),!1;process.emitWarning(new mg)}Q!=null&&(mn(g,"no body must not have content length"),h[UU]=`${Q}`),n.ref();let D=r==="GET"||r==="HEAD"||g===null;return c?(h[MU]="100-continue",f=n.request(h,{endStream:D,signal:l}),f.once("continue",G)):(f=n.request(h,{endStream:D,signal:l}),G()),++n[dr],f.once("response",P=>{let{[Eg]:ae,...Ee}=P;if(e.onResponseStarted(),e.aborted){let Ce=new fg;de.errorRequest(t,e,Ce),de.destroy(f,Ce);return}e.onHeaders(Number(ae),Iy(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 oc("HTTP/2: stream half-closed (remote)")),t[As][t[fn]++]=null,t[Cg]=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 oc(`HTTP/2: "frameError" received - type ${P}, code ${ae}`))}),!0;function G(){!g||Q===0?my(y,f,null,t,e,t[Ye],Q,v):de.isBuffer(g)?my(y,f,g,t,e,t[Ye],Q,v):de.isBlobLike(g)?typeof g.stream=="function"?Ey(y,f,g.stream(),t,e,t[Ye],Q,v):qU(y,f,g,t,e,t[Ye],Q,v):de.isStream(g)?JU(y,t[Ye],v,f,g,t,e,Q):de.isIterable(g)?Ey(y,f,g,t,e,t[Ye],Q,v):mn(!1)}o(G,"writeBodyH2")}o(VU,"writeH2");function my(t,e,n,r,s,i,a,c){try{n!=null&&de.isBuffer(n)&&(mn(a===n.byteLength,"buffer body must have content length"),e.cork(),e.write(n),e.uncork(),e.end(),s.onBodySent(n)),c||(i[cc]=!0),s.onRequestSent(),r[gr]()}catch(l){t(l)}}o(my,"writeBuffer");function JU(t,e,n,r,s,i,a,c){mn(c!==0||i[uc]===0,"stream body cannot be pipelined");let l=kU(s,r,g=>{g?(de.destroy(l,g),t(g)):(de.removeAllListeners(l),a.onRequestSent(),n||(e[cc]=!0),i[gr]())});de.addListener(l,"data",d);function d(g){a.onBodySent(g)}o(d,"onPipeData")}o(JU,"writeStream");async function qU(t,e,n,r,s,i,a,c){mn(a===n.size,"blob body must have content length");try{if(a!=null&&a!==n.size)throw new mg;let l=Buffer.from(await n.arrayBuffer());e.cork(),e.write(l),e.uncork(),e.end(),s.onBodySent(l),s.onRequestSent(),c||(i[cc]=!0),r[gr]()}catch(l){t(l)}}o(qU,"writeBlob");async function Ey(t,e,n,r,s,i,a,c){mn(a!==0||r[uc]===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)=>{mn(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[cc]=!0),r[gr]()}catch(h){t(h)}finally{e.off("close",d).off("drain",d)}}o(Ey,"writeIterable");yy.exports=_U});var dc=T((e8,by)=>{"use strict";var En=ue(),{kBodyUsed:Wo}=Re(),Qg=require("node:assert"),{InvalidArgumentError:jU}=pe(),WU=require("node:events"),zU=[300,301,302,303,307,308],By=Symbol("body"),lc=class{static{o(this,"BodyAsyncIterable")}constructor(e){this[By]=e,this[Wo]=!1}async*[Symbol.asyncIterator](){Qg(!this[Wo],"disturbed"),this[Wo]=!0,yield*this[By]}},yg=class{static{o(this,"RedirectHandler")}constructor(e,n,r,s){if(n!=null&&(!Number.isInteger(n)||n<0))throw new jU("maxRedirections must be a positive number");En.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,En.isStream(this.opts.body)?(En.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){Qg(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[Wo]=!1,WU.prototype.on.call(this.opts.body,"data",function(){this[Wo]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new lc(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&En.isIterable(this.opts.body)&&(this.opts.body=new lc(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||En.isDisturbed(this.opts.body)?null:ZU(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}=En.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),l=c?`${a}${c}`:a;this.opts.headers=KU(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 ZU(t,e){if(zU.indexOf(t)===-1)return null;for(let n=0;n<e.length;n+=2)if(e[n].length===8&&En.headerNameToString(e[n])==="location")return e[n+1]}o(ZU,"parseLocation");function wy(t,e,n){if(t.length===4)return En.headerNameToString(t)==="host";if(e&&En.headerNameToString(t).startsWith("content-"))return!0;if(n&&(t.length===13||t.length===6||t.length===19)){let r=En.headerNameToString(t);return r==="authorization"||r==="cookie"||r==="proxy-authorization"}return!1}o(wy,"shouldRemoveHeader");function KU(t,e,n){let r=[];if(Array.isArray(t))for(let s=0;s<t.length;s+=2)wy(t[s],e,n)||r.push(t[s],t[s+1]);else if(t&&typeof t=="object")for(let s of Object.keys(t))wy(s,e,n)||r.push(s,t[s]);else Qg(t==null,"headers must be an object or an array");return r}o(KU,"cleanRequestHeaders");by.exports=yg});var gc=T((n8,ky)=>{"use strict";var XU=dc();function eM({maxRedirections:t}){return e=>o(function(r,s){let{maxRedirections:i=t}=r;if(!i)return e(r,s);let a=new XU(e,i,r,s);return r={...r,maxRedirections:0},e(r,a)},"Intercept")}o(eM,"createRedirectInterceptor");ky.exports=eM});var Qi=T((s8,My)=>{"use strict";var On=require("node:assert"),Ty=require("node:net"),tM=require("node:http"),cs=ue(),{channels:Ii}=ni(),nM=UC(),rM=oi(),{InvalidArgumentError:Ue,InformationalError:sM,ClientDestroyedError:iM}=pe(),oM=Mo(),{kUrl:Cn,kServerName:hr,kClient:aM,kBusy:Bg,kConnect:AM,kResuming:us,kRunning:ea,kPending:ta,kSize:Xo,kQueue:Kt,kConnected:cM,kConnecting:yi,kNeedDrain:fr,kKeepAliveDefaultTimeout:Ry,kHostHeader:uM,kPendingIdx:Xt,kRunningIdx:Gn,kError:lM,kPipelining:hc,kKeepAliveTimeoutValue:dM,kMaxHeadersSize:gM,kKeepAliveMaxTimeout:hM,kKeepAliveTimeoutThreshold:pM,kHeadersTimeout:fM,kBodyTimeout:mM,kStrictContentLength:EM,kConnector:zo,kMaxRedirections:CM,kMaxRequests:wg,kCounter:IM,kClose:yM,kDestroy:QM,kDispatch:BM,kInterceptors:Sy,kLocalAddress:Zo,kMaxResponseSize:wM,kOnError:bM,kHTTPContext:Me,kMaxConcurrentStreams:kM,kResume:Ko}=Re(),RM=hy(),SM=Qy(),vy=!1,pr=Symbol("kClosedResolve"),xy=o(()=>{},"noop");function Ny(t){return t[hc]??t[Me]?.defaultPipelining??1}o(Ny,"getPipelining");var bg=class extends rM{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:D,maxCachedSessions:G,maxRedirections:P,connect:ae,maxRequestsPerClient:Ee,localAddress:Ce,maxResponseSize:De,autoSelectFamily:et,autoSelectFamilyAttemptTimeout:sn,maxConcurrentStreams:At,allowH2:Ge,webSocket:Tt,eventSource:xe}={}){if(super({webSocket:Tt,eventSource:xe}),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"||Ty.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=oM({...Q,maxCachedSessions:G,allowH2:Ge,socketPath:y,timeout:c,...et?{autoSelectFamily:et,autoSelectFamilyAttemptTimeout:sn}:void 0,...ae})),n?.Client&&Array.isArray(n.Client)?(this[Sy]=n.Client,vy||(vy=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[Sy]=[vM({maxRedirections:P})],this[Cn]=cs.parseOrigin(e),this[zo]=ae,this[hc]=v??1,this[gM]=r||tM.maxHeaderSize,this[Ry]=h??4e3,this[hM]=m??6e5,this[pM]=C??2e3,this[dM]=this[Ry],this[hr]=null,this[Zo]=Ce??null,this[us]=0,this[fr]=0,this[uM]=`host: ${this[Cn].hostname}${this[Cn].port?`:${this[Cn].port}`:""}\r
|
|
41
|
+
`,this[mM]=l??3e5,this[fM]=s??3e5,this[EM]=D??!0,this[CM]=P,this[wg]=Ee,this[pr]=null,this[wM]=De>-1?De:-1,this[kM]=At??100,this[Me]=null,this[Kt]=[],this[Gn]=0,this[Xt]=0,this[Ko]=Nt=>kg(this,Nt),this[bM]=Nt=>Fy(this,Nt)}get pipelining(){return this[hc]}set pipelining(e){this[hc]=e,this[Ko](!0)}get[ta](){return this[Kt].length-this[Xt]}get[ea](){return this[Xt]-this[Gn]}get[Xo](){return this[Kt].length-this[Gn]}get[cM](){return!!this[Me]&&!this[yi]&&!this[Me].destroyed}get[Bg](){return!!(this[Me]?.busy(null)||this[Xo]>=(Ny(this)||1)||this[ta]>0)}[AM](e){Uy(this),this.once("connect",e)}[BM](e,n){let r=e.origin||this[Cn].origin,s=new nM(r,e,n);return this[Kt].push(s),this[us]||(cs.bodyLength(s.body)==null&&cs.isIterable(s.body)?(this[us]=1,queueMicrotask(()=>kg(this))):this[Ko](!0)),this[us]&&this[fr]!==2&&this[Bg]&&(this[fr]=2),this[fr]<2}async[yM](){return new Promise(e=>{this[Xo]?this[pr]=e:e(null)})}async[QM](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]()})}},vM=gc();function Fy(t,e){if(t[ea]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){On(t[Xt]===t[Gn]);let n=t[Kt].splice(t[Gn]);for(let r=0;r<n.length;r++){let s=n[r];cs.errorRequest(t,s,e)}On(t[Xo]===0)}}o(Fy,"onError");async function Uy(t){On(!t[yi]),On(!t[Me]);let{host:e,hostname:n,protocol:r,port:s}=t[Cn];if(n[0]==="["){let i=n.indexOf("]");On(i!==-1);let a=n.substring(1,i);On(Ty.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",xy),new iM);return}On(i);try{t[Me]=i.alpnProtocol==="h2"?await SM(t,i):await RM(t,i)}catch(a){throw i.destroy().on("error",xy),a}t[yi]=!1,i[IM]=0,i[wg]=t[wg],i[aM]=t,i[lM]=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[Cn],[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(On(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 Fy(t,i);t.emit("connectionError",t[Cn],[t],i)}t[Ko]()}o(Uy,"connect");function Dy(t){t[fr]=0,t.emit("drain",t[Cn],[t])}o(Dy,"emitDrain");function kg(t,e){t[us]!==2&&(t[us]=2,xM(t,e),t[us]=0,t[Gn]>256&&(t[Kt].splice(0,t[Gn]),t[Xt]-=t[Gn],t[Gn]=0))}o(kg,"resume");function xM(t,e){for(;;){if(t.destroyed){On(t[ta]===0);return}if(t[pr]&&!t[Xo]){t[pr](),t[pr]=null;return}if(t[Me]&&t[Me].resume(),t[Bg])t[fr]=2;else if(t[fr]===2){e?(t[fr]=1,queueMicrotask(()=>Dy(t))):Dy(t);continue}if(t[ta]===0||t[ea]>=(Ny(t)||1))return;let n=t[Kt][t[Xt]];if(t[Cn].protocol==="https:"&&t[hr]!==n.servername){if(t[ea]>0)return;t[hr]=n.servername,t[Me]?.destroy(new sM("servername changed"),()=>{t[Me]=null,kg(t)})}if(t[yi])return;if(!t[Me]){Uy(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(xM,"_resume");My.exports=bg});var Rg=T((a8,Ly)=>{"use strict";var pc=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)}};Ly.exports=class{static{o(this,"FixedQueue")}constructor(){this.head=this.tail=new pc}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new pc),this.head.push(e)}shift(){let e=this.tail,n=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),n}}});var Py=T((c8,_y)=>{var{kFree:DM,kConnected:TM,kPending:NM,kQueued:FM,kRunning:UM,kSize:MM}=Re(),ls=Symbol("pool"),Sg=class{static{o(this,"PoolStats")}constructor(e){this[ls]=e}get connected(){return this[ls][TM]}get free(){return this[ls][DM]}get pending(){return this[ls][NM]}get queued(){return this[ls][FM]}get running(){return this[ls][UM]}get size(){return this[ls][MM]}};_y.exports=Sg});var Fg=T((l8,Wy)=>{"use strict";var LM=oi(),_M=Rg(),{kConnected:vg,kSize:Oy,kRunning:Gy,kPending:$y,kQueued:na,kBusy:PM,kFree:OM,kUrl:GM,kClose:$M,kDestroy:YM,kDispatch:HM}=Re(),VM=Py(),pt=Symbol("clients"),ot=Symbol("needDrain"),ra=Symbol("queue"),xg=Symbol("closed resolve"),Dg=Symbol("onDrain"),Yy=Symbol("onConnect"),Hy=Symbol("onDisconnect"),Vy=Symbol("onConnectionError"),Tg=Symbol("get dispatcher"),qy=Symbol("add client"),jy=Symbol("remove client"),Jy=Symbol("stats"),Ng=class extends LM{static{o(this,"PoolBase")}constructor(e){super(e),this[ra]=new _M,this[pt]=[],this[na]=0;let n=this;this[Dg]=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[xg]&&a.isEmpty()&&Promise.all(n[pt].map(l=>l.close())).then(n[xg])},"onDrain"),this[Yy]=(r,s)=>{n.emit("connect",r,[n,...s])},this[Hy]=(r,s,i)=>{n.emit("disconnect",r,[n,...s],i)},this[Vy]=(r,s,i)=>{n.emit("connectionError",r,[n,...s],i)},this[Jy]=new VM(this)}get[PM](){return this[ot]}get[vg](){return this[pt].filter(e=>e[vg]).length}get[OM](){return this[pt].filter(e=>e[vg]&&!e[ot]).length}get[$y](){let e=this[na];for(let{[$y]:n}of this[pt])e+=n;return e}get[Gy](){let e=0;for(let{[Gy]:n}of this[pt])e+=n;return e}get[Oy](){let e=this[na];for(let{[Oy]:n}of this[pt])e+=n;return e}get stats(){return this[Jy]}async[$M](){this[ra].isEmpty()?await Promise.all(this[pt].map(e=>e.close())):await new Promise(e=>{this[xg]=e})}async[YM](e){for(;;){let n=this[ra].shift();if(!n)break;n.handler.onError(e)}await Promise.all(this[pt].map(n=>n.destroy(e)))}[HM](e,n){let r=this[Tg]();return r?r.dispatch(e,n)||(r[ot]=!0,this[ot]=!this[Tg]()):(this[ot]=!0,this[ra].push({opts:e,handler:n}),this[na]++),!this[ot]}[qy](e){return e.on("drain",this[Dg]).on("connect",this[Yy]).on("disconnect",this[Hy]).on("connectionError",this[Vy]),this[pt].push(e),this[ot]&&queueMicrotask(()=>{this[ot]&&this[Dg](e[GM],[this,e])}),this}[jy](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)}};Wy.exports={PoolBase:Ng,kClients:pt,kNeedDrain:ot,kAddClient:qy,kRemoveClient:jy,kGetDispatcher:Tg}});var Bi=T((g8,Xy)=>{"use strict";var{PoolBase:JM,kClients:fc,kNeedDrain:qM,kAddClient:jM,kGetDispatcher:WM}=Fg(),zM=Qi(),{InvalidArgumentError:Ug}=pe(),zy=ue(),{kUrl:Zy,kInterceptors:ZM}=Re(),KM=Mo(),Mg=Symbol("options"),Lg=Symbol("connections"),Ky=Symbol("factory");function XM(t,e){return new zM(t,e)}o(XM,"defaultFactory");var _g=class extends JM{static{o(this,"Pool")}constructor(e,{connections:n,factory:r=XM,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 Ug("invalid connections");if(typeof r!="function")throw new Ug("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new Ug("connect must be a function or an object");typeof s!="function"&&(s=KM({...a,maxCachedSessions:c,allowH2:h,socketPath:l,timeout:i,...d?{autoSelectFamily:d,autoSelectFamilyAttemptTimeout:g}:void 0,...s})),super(f),this[ZM]=f.interceptors?.Pool&&Array.isArray(f.interceptors.Pool)?f.interceptors.Pool:[],this[Lg]=n||null,this[Zy]=zy.parseOrigin(e),this[Mg]={...zy.deepClone(f),connect:s,allowH2:h},this[Mg].interceptors=f.interceptors?{...f.interceptors}:void 0,this[Ky]=r,this.on("connectionError",(m,C,y)=>{for(let v of C){let Q=this[fc].indexOf(v);Q!==-1&&this[fc].splice(Q,1)}})}[WM](){for(let e of this[fc])if(!e[qM])return e;if(!this[Lg]||this[fc].length<this[Lg]){let e=this[Ky](this[Zy],this[Mg]);return this[jM](e),e}}};Xy.exports=_g});var sQ=T((p8,rQ)=>{"use strict";var{BalancedPoolMissingUpstreamError:eL,InvalidArgumentError:tL}=pe(),{PoolBase:nL,kClients:Ke,kNeedDrain:sa,kAddClient:rL,kRemoveClient:sL,kGetDispatcher:iL}=Fg(),oL=Bi(),{kUrl:Pg,kInterceptors:aL}=Re(),{parseOrigin:eQ}=ue(),tQ=Symbol("factory"),mc=Symbol("options"),nQ=Symbol("kGreatestCommonDivisor"),ds=Symbol("kCurrentWeight"),gs=Symbol("kIndex"),Gt=Symbol("kWeight"),Ec=Symbol("kMaxWeightPerServer"),Cc=Symbol("kErrorPenalty");function AL(t,e){if(t===0)return e;for(;e!==0;){let n=e;e=t%e,t=n}return t}o(AL,"getGreatestCommonDivisor");function cL(t,e){return new oL(t,e)}o(cL,"defaultFactory");var Og=class extends nL{static{o(this,"BalancedPool")}constructor(e=[],{factory:n=cL,...r}={}){if(super(),this[mc]=r,this[gs]=-1,this[ds]=0,this[Ec]=this[mc].maxWeightPerServer||100,this[Cc]=this[mc].errorPenalty||15,Array.isArray(e)||(e=[e]),typeof n!="function")throw new tL("factory must be a function.");this[aL]=r.interceptors?.BalancedPool&&Array.isArray(r.interceptors.BalancedPool)?r.interceptors.BalancedPool:[],this[tQ]=n;for(let s of e)this.addUpstream(s);this._updateBalancedPoolStats()}addUpstream(e){let n=eQ(e).origin;if(this[Ke].find(s=>s[Pg].origin===n&&s.closed!==!0&&s.destroyed!==!0))return this;let r=this[tQ](n,Object.assign({},this[mc]));this[rL](r),r.on("connect",()=>{r[Gt]=Math.min(this[Ec],r[Gt]+this[Cc])}),r.on("connectionError",()=>{r[Gt]=Math.max(1,r[Gt]-this[Cc]),this._updateBalancedPoolStats()}),r.on("disconnect",(...s)=>{let i=s[2];i&&i.code==="UND_ERR_SOCKET"&&(r[Gt]=Math.max(1,r[Gt]-this[Cc]),this._updateBalancedPoolStats())});for(let s of this[Ke])s[Gt]=this[Ec];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let n=0;n<this[Ke].length;n++)e=AL(this[Ke][n][Gt],e);this[nQ]=e}removeUpstream(e){let n=eQ(e).origin,r=this[Ke].find(s=>s[Pg].origin===n&&s.closed!==!0&&s.destroyed!==!0);return r&&this[sL](r),this}get upstreams(){return this[Ke].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[Pg].origin)}[iL](){if(this[Ke].length===0)throw new eL;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[nQ],this[ds]<=0&&(this[ds]=this[Ec])),i[Gt]>=this[ds]&&!i[sa])return i}return this[ds]=this[Ke][s][Gt],this[gs]=s,this[Ke][s]}};rQ.exports=Og});var wi=T((m8,lQ)=>{"use strict";var{InvalidArgumentError:Ic}=pe(),{kClients:mr,kRunning:iQ,kClose:uL,kDestroy:lL,kDispatch:dL,kInterceptors:gL}=Re(),hL=oi(),pL=Bi(),fL=Qi(),mL=ue(),EL=gc(),oQ=Symbol("onConnect"),aQ=Symbol("onDisconnect"),AQ=Symbol("onConnectionError"),CL=Symbol("maxRedirections"),cQ=Symbol("onDrain"),uQ=Symbol("factory"),Gg=Symbol("options");function IL(t,e){return e&&e.connections===1?new fL(t,e):new pL(t,e)}o(IL,"defaultFactory");var $g=class extends hL{static{o(this,"Agent")}constructor({factory:e=IL,maxRedirections:n=0,connect:r,tls:s,...i}={}){if(typeof e!="function")throw new Ic("factory must be a function.");if(r!=null&&typeof r!="function"&&typeof r!="object")throw new Ic("connect must be a function or an object");if(!Number.isInteger(n)||n<0)throw new Ic("maxRedirections must be a positive number");super(i),r&&typeof r!="function"&&(r={...r}),s&&typeof s!="function"&&(s={...s}),this[gL]=i.interceptors?.Agent&&Array.isArray(i.interceptors.Agent)?i.interceptors.Agent:[EL({maxRedirections:n})],this[Gg]={...mL.deepClone(i),connect:r,tls:s},this[Gg].interceptors=i.interceptors?{...i.interceptors}:void 0,this[CL]=n,this[uQ]=e,this[mr]=new Map,this[cQ]=(a,c)=>{this.emit("drain",a,[this,...c])},this[oQ]=(a,c)=>{this.emit("connect",a,[this,...c])},this[aQ]=(a,c,l)=>{this.emit("disconnect",a,[this,...c],l)},this[AQ]=(a,c,l)=>{this.emit("connectionError",a,[this,...c],l)}}get[iQ](){let e=0;for(let n of this[mr].values())e+=n[iQ];return e}[dL](e,n){let r;if(e.origin&&(typeof e.origin=="string"||e.origin instanceof URL))r=String(e.origin);else throw new Ic("opts.origin must be a non-empty string or URL.");let s=this[mr].get(r);return s||(s=this[uQ](e.origin,this[Gg]).on("drain",this[cQ]).on("connect",this[oQ]).on("disconnect",this[aQ]).on("connectionError",this[AQ]),this[mr].set(r,s)),s.dispatch(e,n)}async[uL](){let e=[];for(let n of this[mr].values())e.push(n.close());this[mr].clear(),await Promise.all(e)}async[lL](e){let n=[];for(let r of this[mr].values())n.push(r.destroy(e));this[mr].clear(),await Promise.all(n)}};lQ.exports=$g});var qg=T((C8,QQ)=>{"use strict";var{kProxy:Yg,kClose:mQ,kDestroy:EQ,kDispatch:dQ,kInterceptors:yL}=Re(),{URL:hs}=require("node:url"),QL=wi(),CQ=Bi(),IQ=oi(),{InvalidArgumentError:bi,RequestAbortedError:BL,SecureProxyConnectionError:wL}=pe(),gQ=Mo(),yQ=Qi(),yc=Symbol("proxy agent"),Qc=Symbol("proxy client"),Er=Symbol("proxy headers"),Hg=Symbol("request tls settings"),hQ=Symbol("proxy tls settings"),pQ=Symbol("connect endpoint function"),fQ=Symbol("tunnel proxy");function bL(t){return t==="https:"?443:80}o(bL,"defaultProtocolPort");function kL(t,e){return new CQ(t,e)}o(kL,"defaultFactory");var RL=o(()=>{},"noop");function SL(t,e){return e.connections===1?new yQ(t,e):new CQ(t,e)}o(SL,"defaultAgentFactory");var Vg=class extends IQ{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 yQ(e,{connect:r})}[dQ](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[dQ](e,n)}async[mQ](){return this.#e.close()}async[EQ](e){return this.#e.destroy(e)}},Jg=class extends IQ{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=kL}=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[Yg]={uri:i,protocol:l},this[yL]=e.interceptors?.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[],this[Hg]=e.requestTls,this[hQ]=e.proxyTls,this[Er]=e.headers||{},this[fQ]=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=gQ({...e.proxyTls});this[pQ]=gQ({...e.requestTls});let m=e.factory||SL,C=o((y,v)=>{let{protocol:Q}=new hs(y);return!this[fQ]&&Q==="http:"&&this[Yg].protocol==="http:"?new Vg(this[Yg].uri,{headers:this[Er],connect:f,factory:m}):m(y,v)},"factory");this[Qc]=n(s,{connect:f}),this[yc]=new QL({...e,factory:C,connect:o(async(y,v)=>{let Q=y.host;y.port||(Q+=`:${bL(y.protocol)}`);try{let{socket:D,statusCode:G}=await this[Qc].connect({origin:a,port:c,path:Q,signal:y.signal,headers:{...this[Er],host:y.host},servername:this[hQ]?.servername||h});if(G!==200&&(D.on("error",RL).destroy(),v(new BL(`Proxy response (${G}) !== 200 when HTTP Tunneling`))),y.protocol!=="https:"){v(null,D);return}let P;this[Hg]?P=this[Hg].servername:P=y.servername,this[pQ]({...y,servername:P,httpSocket:D},v)}catch(D){D.code==="ERR_TLS_CERT_ALTNAME_INVALID"?v(new wL(D)):v(D)}},"connect")})}dispatch(e,n){let r=vL(e.headers);if(xL(r),r&&!("host"in r)&&!("Host"in r)){let{host:s}=new hs(e.origin);r.host=s}return this[yc].dispatch({...e,headers:r},n)}#e(e){return typeof e=="string"?new hs(e):e instanceof hs?e:new hs(e.uri)}async[mQ](){await this[yc].close(),await this[Qc].close()}async[EQ](){await this[yc].destroy(),await this[Qc].destroy()}};function vL(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(vL,"buildHeaders");function xL(t){if(t&&Object.keys(t).find(n=>n.toLowerCase()==="proxy-authorization"))throw new bi("Proxy-Authorization should be sent in ProxyAgent constructor")}o(xL,"throwIfProxyAuthIsSent");QQ.exports=Jg});var SQ=T((y8,RQ)=>{"use strict";var DL=oi(),{kClose:TL,kDestroy:NL,kClosed:BQ,kDestroyed:wQ,kDispatch:FL,kNoProxyAgent:ia,kHttpProxyAgent:Cr,kHttpsProxyAgent:ps}=Re(),bQ=qg(),UL=wi(),ML={"http:":80,"https:":443},kQ=!1,jg=class extends DL{static{o(this,"EnvHttpProxyAgent")}#e=null;#t=null;#n=null;constructor(e={}){super(),this.#n=e,kQ||(kQ=!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 UL(i);let a=n??process.env.http_proxy??process.env.HTTP_PROXY;a?this[Cr]=new bQ({...i,uri:a}):this[Cr]=this[ia];let c=r??process.env.https_proxy??process.env.HTTPS_PROXY;c?this[ps]=new bQ({...i,uri:c}):this[ps]=this[Cr],this.#r()}[FL](e,n){let r=new URL(e.origin);return this.#s(r).dispatch(e,n)}async[TL](){await this[ia].close(),this[Cr][BQ]||await this[Cr].close(),this[ps][BQ]||await this[ps].close()}async[NL](e){await this[ia].destroy(e),this[Cr][wQ]||await this[Cr].destroy(e),this[ps][wQ]||await this[ps].destroy(e)}#s(e){let{protocol:n,host:r,port:s}=e;return r=r.replace(/:\d*$/,"").toLowerCase(),s=Number.parseInt(s,10)||ML[n]||0,this.#i(r,s)?n==="https:"?this[ps]:this[Cr]:this[ia]}#i(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??""}};RQ.exports=jg});var Bc=T((B8,NQ)=>{"use strict";var oa=require("node:assert"),{kRetryHandlerDefaultRetry:vQ}=Re(),{RequestRetryError:fs}=pe(),{isDisturbed:xQ,parseHeaders:LL,parseRangeHeader:DQ,wrapRequestBody:_L}=ue();function PL(t){let e=Date.now();return new Date(t).getTime()-e}o(PL,"calculateRetryAfterHeader");function TQ(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(TQ,"validatePartialResponseContentLength");var Wg=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:_L(e.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:i??t[vQ],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[vQ](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 D=c?.["retry-after"];D&&(D=Number(D),D=Number.isNaN(D)?PL(D):D*1e3);let G=D>0?Math.min(D,f):Math.min(h*m**(Q-1),f);setTimeout(()=>s(null),G)}onHeaders(e,n,r,s){let i=LL(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=DQ(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=TQ(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=DQ(i["content-range"]);if(c==null)return this.headersSent=!0,this.handler.onHeaders(e,n,r,s);let l=TQ(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||xQ(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||xQ(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")}};NQ.exports=Wg});var UQ=T((b8,FQ)=>{"use strict";var OL=Fo(),GL=Bc(),zg=class extends OL{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 GL({...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()}};FQ.exports=zg});var nh=T((R8,HQ)=>{"use strict";var OQ=require("node:assert"),{Readable:$L}=require("node:stream"),{RequestAbortedError:GQ,NotSupportedError:YL,InvalidArgumentError:HL,AbortError:Zg}=pe(),$Q=ue(),{ReadableStreamFrom:VL}=ue(),wt=Symbol("kConsume"),aa=Symbol("kReading"),Ir=Symbol("kBody"),MQ=Symbol("kAbort"),YQ=Symbol("kContentType"),LQ=Symbol("kContentLength"),JL=o(()=>{},"noop"),Kg=class extends $L{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[MQ]=n,this[wt]=null,this[Ir]=null,this[YQ]=r,this[LQ]=s,this[aa]=!1}destroy(e){return!e&&!this._readableState.endEmitted&&(e=new GQ),e&&this[MQ](),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?(eh(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 YL}get bodyUsed(){return $Q.isDisturbed(this)}get body(){return this[Ir]||(this[Ir]=VL(this),this[wt]&&(this[Ir].getReader(),OQ(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 HL("signal must be an AbortSignal");return r?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((s,i)=>{this[LQ]>n&&this.destroy(new Zg);let a=o(()=>{this.destroy(r.reason??new Zg)},"onAbort");r?.addEventListener("abort",a),this.on("close",function(){r?.removeEventListener("abort",a),r?.aborted?i(r.reason??new Zg):s(null)}).on("error",JL).on("data",function(c){n-=c.length,n<=0&&this.destroy()}).resume()})}};function qL(t){return t[Ir]&&t[Ir].locked===!0||t[wt]}o(qL,"isLocked");function jL(t){return $Q.isDisturbed(t)||qL(t)}o(jL,"isUnusable");async function Aa(t,e){return OQ(!t[wt]),new Promise((n,r)=>{if(jL(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){th(this[wt],s)}).on("close",function(){this[wt].body!==null&&th(this[wt],new GQ)}),WL(t[wt])})})}o(Aa,"consume");function WL(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++)eh(t,e.buffer[s])}else for(let n of e.buffer)eh(t,n);for(e.endEmitted?PQ(this[wt]):t.stream.on("end",function(){PQ(this[wt])}),t.stream.resume();t.stream.read()!=null;);}o(WL,"consumeStart");function Xg(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(Xg,"chunksDecode");function _Q(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(_Q,"chunksConcat");function PQ(t){let{type:e,body:n,resolve:r,stream:s,length:i}=t;try{e==="text"?r(Xg(n,i)):e==="json"?r(JSON.parse(Xg(n,i))):e==="arrayBuffer"?r(_Q(n,i).buffer):e==="blob"?r(new Blob(n,{type:s[YQ]})):e==="bytes"&&r(_Q(n,i)),th(t)}catch(a){s.destroy(a)}}o(PQ,"consumeEnd");function eh(t,e){t.length+=e.length,t.body.push(e)}o(eh,"consumePush");function th(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(th,"consumeFinish");HQ.exports={Readable:Kg,chunksDecode:Xg}});var rh=T((v8,WQ)=>{var zL=require("node:assert"),{ResponseStatusCodeError:VQ}=pe(),{chunksDecode:JQ}=nh(),ZL=128*1024;async function KL({callback:t,body:e,contentType:n,statusCode:r,statusMessage:s,headers:i}){zL(e);let a=[],c=0;try{for await(let h of e)if(a.push(h),c+=h.length,c>ZL){a=[],c=0;break}}catch{a=[],c=0}let l=`Response status code ${r}${s?`: ${s}`:""}`;if(r===204||!n||!c){queueMicrotask(()=>t(new VQ(l,r,i)));return}let d=Error.stackTraceLimit;Error.stackTraceLimit=0;let g;try{qQ(n)?g=JSON.parse(JQ(a,c)):jQ(n)&&(g=JQ(a,c))}catch{}finally{Error.stackTraceLimit=d}queueMicrotask(()=>t(new VQ(l,r,i,g)))}o(KL,"getResolveErrorBodyCallback");var qQ=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"),jQ=o(t=>t.length>4&&t[4]==="/"&&t[0]==="t"&&t[1]==="e"&&t[2]==="x"&&t[3]==="t","isContentTypeText");WQ.exports={getResolveErrorBodyCallback:KL,isContentTypeApplicationJson:qQ,isContentTypeText:jQ}});var KQ=T((D8,sh)=>{"use strict";var XL=require("node:assert"),{Readable:e_}=nh(),{InvalidArgumentError:ki,RequestAbortedError:zQ}=pe(),bt=ue(),{getResolveErrorBodyCallback:t_}=rh(),{AsyncResource:n_}=require("node:async_hooks"),wc=class extends n_{static{o(this,"RequestHandler")}constructor(e,n){if(!e||typeof e!="object")throw new ki("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 ki("invalid callback");if(g&&(typeof g!="number"||g<0))throw new ki("invalid highWaterMark");if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new ki("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new ki("invalid method");if(c&&typeof c!="function")throw new ki("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 zQ:this.removeAbortListener=bt.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new zQ,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}XL(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 e_({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(t_,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 ZQ(t,e){if(e===void 0)return new Promise((n,r)=>{ZQ.call(this,t,(s,i)=>s?r(s):n(i))});try{this.dispatch(t,new wc(t,e))}catch(n){if(typeof e!="function")throw n;let r=t?.opaque;queueMicrotask(()=>e(n,{opaque:r}))}}o(ZQ,"request");sh.exports=ZQ;sh.exports.RequestHandler=wc});var ca=T((N8,tB)=>{var{addAbortListener:r_}=ue(),{RequestAbortedError:s_}=pe(),Ri=Symbol("kListener"),In=Symbol("kSignal");function XQ(t){t.abort?t.abort(t[In]?.reason):t.reason=t[In]?.reason??new s_,eB(t)}o(XQ,"abort");function i_(t,e){if(t.reason=null,t[In]=null,t[Ri]=null,!!e){if(e.aborted){XQ(t);return}t[In]=e,t[Ri]=()=>{XQ(t)},r_(t[In],t[Ri])}}o(i_,"addSignal");function eB(t){t[In]&&("removeEventListener"in t[In]?t[In].removeEventListener("abort",t[Ri]):t[In].removeListener("abort",t[Ri]),t[In]=null,t[Ri]=null)}o(eB,"removeSignal");tB.exports={addSignal:i_,removeSignal:eB}});var iB=T((U8,sB)=>{"use strict";var o_=require("node:assert"),{finished:a_,PassThrough:A_}=require("node:stream"),{InvalidArgumentError:Si,InvalidReturnValueError:c_}=pe(),en=ue(),{getResolveErrorBodyCallback:u_}=rh(),{AsyncResource:l_}=require("node:async_hooks"),{addSignal:d_,removeSignal:nB}=ca(),ih=class extends l_{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)}),d_(this,s)}onConnect(e,n){if(this.reason){e(this.reason);return}o_(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 A_,this.callback=null,this.runInAsyncScope(u_,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 c_("expected Writable");a_(h,{readable:!1},m=>{let{callback:C,res:y,opaque:v,trailers:Q,abort:D}=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&&D()})}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;nB(this),n&&(this.trailers=en.parseHeaders(e),n.end())}onError(e){let{res:n,callback:r,opaque:s,body:i}=this;nB(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 rB(t,e,n){if(n===void 0)return new Promise((r,s)=>{rB.call(this,t,e,(i,a)=>i?s(i):r(a))});try{this.dispatch(t,new ih(t,e,n))}catch(r){if(typeof n!="function")throw r;let s=t?.opaque;queueMicrotask(()=>n(r,{opaque:s}))}}o(rB,"stream");sB.exports=rB});var cB=T((L8,AB)=>{"use strict";var{Readable:aB,Duplex:g_,PassThrough:h_}=require("node:stream"),{InvalidArgumentError:ua,InvalidReturnValueError:p_,RequestAbortedError:oh}=pe(),$t=ue(),{AsyncResource:f_}=require("node:async_hooks"),{addSignal:m_,removeSignal:E_}=ca(),oB=require("node:assert"),vi=Symbol("resume"),ah=class extends aB{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)}},Ah=class extends aB{static{o(this,"PipelineResponse")}constructor(e){super({autoDestroy:!0}),this[vi]=e}_read(){this[vi]()}_destroy(e,n){!e&&!this._readableState.endEmitted&&(e=new oh),n(e)}},ch=class extends f_{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 ah().on("error",$t.nop),this.ret=new g_({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 oh),C&&l&&C(),$t.destroy(g,l),$t.destroy(h,l),$t.destroy(f,l),E_(this),d(l)},"destroy")}).on("prefinish",()=>{let{req:l}=this;l.push(null)}),this.res=null,m_(this,r)}onConnect(e,n){let{ret:r,res:s}=this;if(this.reason){e(this.reason);return}oB(!s,"pipeline cannot be retried"),oB(!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 Ah(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 p_("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 oh)}),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 C_(t,e){try{let n=new ch(t,e);return this.dispatch({...t,body:n.req},n),n.ret}catch(n){return new h_().destroy(n)}}o(C_,"pipeline");AB.exports=C_});var pB=T((P8,hB)=>{"use strict";var{InvalidArgumentError:uh,SocketError:I_}=pe(),{AsyncResource:y_}=require("node:async_hooks"),uB=ue(),{addSignal:Q_,removeSignal:lB}=ca(),dB=require("node:assert"),lh=class extends y_{static{o(this,"UpgradeHandler")}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_UPGRADE"),this.responseHeaders=i||null,this.opaque=s||null,this.callback=n,this.abort=null,this.context=null,Q_(this,r)}onConnect(e,n){if(this.reason){e(this.reason);return}dB(this.callback),this.abort=e,this.context=null}onHeaders(){throw new I_("bad upgrade",null)}onUpgrade(e,n,r){dB(e===101);let{callback:s,opaque:i,context:a}=this;lB(this),this.callback=null;let c=this.responseHeaders==="raw"?uB.parseRawHeaders(n):uB.parseHeaders(n);this.runInAsyncScope(s,null,null,{headers:c,socket:r,opaque:i,context:a})}onError(e){let{callback:n,opaque:r}=this;lB(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})}))}};function gB(t,e){if(e===void 0)return new Promise((n,r)=>{gB.call(this,t,(s,i)=>s?r(s):n(i))});try{let n=new lh(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(gB,"upgrade");hB.exports=gB});var IB=T((G8,CB)=>{"use strict";var B_=require("node:assert"),{AsyncResource:w_}=require("node:async_hooks"),{InvalidArgumentError:dh,SocketError:b_}=pe(),fB=ue(),{addSignal:k_,removeSignal:mB}=ca(),gh=class extends w_{static{o(this,"ConnectHandler")}constructor(e,n){if(!e||typeof e!="object")throw new dh("invalid opts");if(typeof n!="function")throw new dh("invalid callback");let{signal:r,opaque:s,responseHeaders:i}=e;if(r&&typeof r.on!="function"&&typeof r.addEventListener!="function")throw new dh("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=s||null,this.responseHeaders=i||null,this.callback=n,this.abort=null,k_(this,r)}onConnect(e,n){if(this.reason){e(this.reason);return}B_(this.callback),this.abort=e,this.context=n}onHeaders(){throw new b_("bad connect",null)}onUpgrade(e,n,r){let{callback:s,opaque:i,context:a}=this;mB(this),this.callback=null;let c=n;c!=null&&(c=this.responseHeaders==="raw"?fB.parseRawHeaders(n):fB.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;mB(this),n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:r})}))}};function EB(t,e){if(e===void 0)return new Promise((n,r)=>{EB.call(this,t,(s,i)=>s?r(s):n(i))});try{let n=new gh(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(EB,"connect");CB.exports=EB});var yB=T((Y8,xi)=>{"use strict";xi.exports.request=KQ();xi.exports.stream=iB();xi.exports.pipeline=cB();xi.exports.upgrade=pB();xi.exports.connect=IB()});var ph=T((H8,BB)=>{"use strict";var{UndiciError:R_}=pe(),QB=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),hh=class t extends R_{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[QB]===!0}[QB]=!0};BB.exports={MockNotMatchedError:hh}});var Di=T((J8,wB)=>{"use strict";wB.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((q8,UB)=>{"use strict";var{MockNotMatchedError:ms}=ph(),{kDispatches:bc,kMockAgent:S_,kOriginalDispatch:v_,kOrigin:x_,kGetNetConnect:D_}=Di(),{buildURL:T_}=ue(),{STATUS_CODES:N_}=require("node:http"),{types:{isPromise:F_}}=require("node:util");function $n(t,e){return typeof t=="string"?t===e:t instanceof RegExp?t.test(e):typeof t=="function"?t(e)===!0:!1}o($n,"matchValue");function kB(t){return Object.fromEntries(Object.entries(t).map(([e,n])=>[e.toLocaleLowerCase(),n]))}o(kB,"lowerCaseEntries");function RB(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):kB(t)[e.toLocaleLowerCase()]}o(RB,"getHeaderByName");function Eh(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(Eh,"buildHeadersFromArray");function SB(t,e){if(typeof t.headers=="function")return Array.isArray(e)&&(e=Eh(e)),t.headers(e?kB(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=RB(e,n);if(!$n(r,s))return!1}return!0}o(SB,"matchHeaders");function bB(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(bB,"safeUrl");function U_(t,{path:e,method:n,body:r,headers:s}){let i=$n(t.path,e),a=$n(t.method,n),c=typeof t.body<"u"?$n(t.body,r):!0,l=SB(t,s);return i&&a&&c&&l}o(U_,"matchKey");function vB(t){return Buffer.isBuffer(t)||t instanceof Uint8Array||t instanceof ArrayBuffer?t:typeof t=="object"?JSON.stringify(t):t.toString()}o(vB,"getResponseData");function xB(t,e){let n=e.query?T_(e.path,e.query):e.path,r=typeof n=="string"?bB(n):n,s=t.filter(({consumed:i})=>!i).filter(({path:i})=>$n(bB(i),r));if(s.length===0)throw new ms(`Mock dispatch not matched for path '${r}'`);if(s=s.filter(({method:i})=>$n(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"?$n(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=>SB(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(xB,"getMockDispatch");function M_(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(M_,"addMockDispatch");function fh(t,e){let n=t.findIndex(r=>r.consumed?U_(r,e):!1);n!==-1&&t.splice(n,1)}o(fh,"deleteMockDispatch");function DB(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(DB,"buildKey");function mh(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(mh,"generateKeyValues");function TB(t){return N_[t]||"unknown"}o(TB,"getStatusText");async function L_(t){let e=[];for await(let n of t)e.push(n);return Buffer.concat(e).toString("utf8")}o(L_,"getResponse");function NB(t,e){let n=DB(t),r=xB(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 fh(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)?Eh(t.headers):t.headers,D=typeof v=="function"?v({...t,headers:Q}):v;if(F_(D)){D.then(Ee=>m(y,Ee));return}let G=vB(D),P=mh(a),ae=mh(c);e.onConnect?.(Ee=>e.onError(Ee),null),e.onHeaders?.(s,P,C,TB(s)),e.onData?.(Buffer.from(G)),e.onComplete?.(ae),fh(y,n)}o(m,"handleReply");function C(){}return o(C,"resume"),!0}o(NB,"mockDispatch");function __(){let t=this[S_],e=this[x_],n=this[v_];return o(function(s,i){if(t.isMockActive)try{NB.call(this,s,i)}catch(a){if(a instanceof ms){let c=t[D_]();if(c===!1)throw new ms(`${a.message}: subsequent request to origin ${e} was not allowed (net.connect disabled)`);if(FB(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(__,"buildMockDispatch");function FB(t,e){let n=new URL(e);return t===!0?!0:!!(Array.isArray(t)&&t.some(r=>$n(r,n.host)))}o(FB,"checkNetConnect");function P_(t){if(t){let{agent:e,...n}=t;return n}}o(P_,"buildMockOptions");UB.exports={getResponseData:vB,getMockDispatch:xB,addMockDispatch:M_,deleteMockDispatch:fh,buildKey:DB,generateKeyValues:mh,matchValue:$n,getResponse:L_,getStatusText:TB,mockDispatch:NB,buildMockDispatch:__,checkNetConnect:FB,buildMockOptions:P_,getHeaderByName:RB,buildHeadersFromArray:Eh}});var bh=T((W8,wh)=>{"use strict";var{getResponseData:O_,buildKey:G_,addMockDispatch:Ch}=la(),{kDispatches:kc,kDispatchKey:Rc,kDefaultHeaders:Ih,kDefaultTrailers:yh,kContentLength:Qh,kMockDispatch:Sc}=Di(),{InvalidArgumentError:yn}=pe(),{buildURL:$_}=ue(),Ti=class{static{o(this,"MockScope")}constructor(e){this[Sc]=e}delay(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new yn("waitInMs must be a valid integer > 0");return this[Sc].delay=e,this}persist(){return this[Sc].persist=!0,this}times(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new yn("repeatTimes must be a valid integer > 0");return this[Sc].times=e,this}},Bh=class{static{o(this,"MockInterceptor")}constructor(e,n){if(typeof e!="object")throw new yn("opts must be an object");if(typeof e.path>"u")throw new yn("opts.path must be defined");if(typeof e.method>"u"&&(e.method="GET"),typeof e.path=="string")if(e.query)e.path=$_(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[Rc]=G_(e),this[kc]=n,this[Ih]={},this[yh]={},this[Qh]=!1}createMockScopeDispatchData({statusCode:e,data:n,responseOptions:r}){let s=O_(n),i=this[Qh]?{"content-length":s.length}:{},a={...this[Ih],...i,...r.headers},c={...this[yh],...r.trailers};return{statusCode:e,data:n,headers:a,trailers:c}}validateReplyParameters(e){if(typeof e.statusCode>"u")throw new yn("statusCode must be defined");if(typeof e.responseOptions!="object"||e.responseOptions===null)throw new yn("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 yn("reply options callback must return an object");let d={data:"",responseOptions:{},...l};return this.validateReplyParameters(d),{...this.createMockScopeDispatchData(d)}},"wrappedDefaultsCallback"),a=Ch(this[kc],this[Rc],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=Ch(this[kc],this[Rc],r);return new Ti(s)}replyWithError(e){if(typeof e>"u")throw new yn("error must be defined");let n=Ch(this[kc],this[Rc],{error:e});return new Ti(n)}defaultReplyHeaders(e){if(typeof e>"u")throw new yn("headers must be defined");return this[Ih]=e,this}defaultReplyTrailers(e){if(typeof e>"u")throw new yn("trailers must be defined");return this[yh]=e,this}replyContentLength(){return this[Qh]=!0,this}};wh.exports.MockInterceptor=Bh;wh.exports.MockScope=Ti});var Sh=T((Z8,$B)=>{"use strict";var{promisify:Y_}=require("node:util"),H_=Qi(),{buildMockDispatch:V_}=la(),{kDispatches:MB,kMockAgent:LB,kClose:_B,kOriginalClose:PB,kOrigin:OB,kOriginalDispatch:J_,kConnected:kh}=Di(),{MockInterceptor:q_}=bh(),GB=Re(),{InvalidArgumentError:j_}=pe(),Rh=class extends H_{static{o(this,"MockClient")}constructor(e,n){if(super(e,n),!n||!n.agent||typeof n.agent.dispatch!="function")throw new j_("Argument opts.agent must implement Agent");this[LB]=n.agent,this[OB]=e,this[MB]=[],this[kh]=1,this[J_]=this.dispatch,this[PB]=this.close.bind(this),this.dispatch=V_.call(this),this.close=this[_B]}get[GB.kConnected](){return this[kh]}intercept(e){return new q_(e,this[MB])}async[_B](){await Y_(this[PB])(),this[kh]=0,this[LB][GB.kClients].delete(this[OB])}};$B.exports=Rh});var Dh=T((X8,WB)=>{"use strict";var{promisify:W_}=require("node:util"),z_=Bi(),{buildMockDispatch:Z_}=la(),{kDispatches:YB,kMockAgent:HB,kClose:VB,kOriginalClose:JB,kOrigin:qB,kOriginalDispatch:K_,kConnected:vh}=Di(),{MockInterceptor:X_}=bh(),jB=Re(),{InvalidArgumentError:eP}=pe(),xh=class extends z_{static{o(this,"MockPool")}constructor(e,n){if(super(e,n),!n||!n.agent||typeof n.agent.dispatch!="function")throw new eP("Argument opts.agent must implement Agent");this[HB]=n.agent,this[qB]=e,this[YB]=[],this[vh]=1,this[K_]=this.dispatch,this[JB]=this.close.bind(this),this.dispatch=Z_.call(this),this.close=this[VB]}get[jB.kConnected](){return this[vh]}intercept(e){return new X_(e,this[YB])}async[VB](){await W_(this[JB])(),this[vh]=0,this[HB][jB.kClients].delete(this[qB])}};WB.exports=xh});var ZB=T((n4,zB)=>{"use strict";var tP={pronoun:"it",is:"is",was:"was",this:"this"},nP={pronoun:"they",is:"are",was:"were",this:"these"};zB.exports=class{static{o(this,"Pluralizer")}constructor(e,n){this.singular=e,this.plural=n}pluralize(e){let n=e===1,r=n?tP:nP,s=n?this.singular:this.plural;return{...r,count:e,noun:s}}}});var XB=T((i4,KB)=>{"use strict";var{Transform:rP}=require("node:stream"),{Console:sP}=require("node:console"),iP=process.versions.icu?"\u2705":"Y ",oP=process.versions.icu?"\u274C":"N ";KB.exports=class{static{o(this,"PendingInterceptorsFormatter")}constructor({disableColors:e}={}){this.transform=new rP({transform(n,r,s){s(null,n)}}),this.logger=new sP({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?iP:oP,Invocations:l,Remaining:a?1/0:c-l}));return this.logger.table(n),this.transform.read().toString()}}});var rw=T((a4,nw)=>{"use strict";var{kClients:Es}=Re(),aP=wi(),{kAgent:Th,kMockAgentSet:vc,kMockAgentGet:ew,kDispatches:Nh,kIsMockActive:xc,kNetConnect:Cs,kGetNetConnect:AP,kOptions:Dc,kFactory:Tc}=Di(),cP=Sh(),uP=Dh(),{matchValue:lP,buildMockOptions:dP}=la(),{InvalidArgumentError:tw,UndiciError:gP}=pe(),hP=Fo(),pP=ZB(),fP=XB(),Fh=class extends hP{static{o(this,"MockAgent")}constructor(e){if(super(e),this[Cs]=!0,this[xc]=!0,e?.agent&&typeof e.agent.dispatch!="function")throw new tw("Argument opts.agent must implement Agent");let n=e?.agent?e.agent:new aP(e);this[Th]=n,this[Es]=n[Es],this[Dc]=dP(e)}get(e){let n=this[ew](e);return n||(n=this[Tc](e),this[vc](e,n)),n}dispatch(e,n){return this.get(e.origin),this[Th].dispatch(e,n)}async close(){await this[Th].close(),this[Es].clear()}deactivate(){this[xc]=!1}activate(){this[xc]=!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 tw("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Cs]=!1}get isMockActive(){return this[xc]}[vc](e,n){this[Es].set(e,n)}[Tc](e){let n=Object.assign({agent:this},this[Dc]);return this[Dc]&&this[Dc].connections===1?new cP(e,n):new uP(e,n)}[ew](e){let n=this[Es].get(e);if(n)return n;if(typeof e!="string"){let r=this[Tc]("http://localhost:9999");return this[vc](e,r),r}for(let[r,s]of Array.from(this[Es]))if(s&&typeof r!="string"&&lP(r,e)){let i=this[Tc](e);return this[vc](e,i),i[Nh]=s[Nh],i}}[AP](){return this[Cs]}pendingInterceptors(){let e=this[Es];return Array.from(e.entries()).flatMap(([n,r])=>r[Nh].map(s=>({...s,origin:n}))).filter(({pending:n})=>n)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new fP}={}){let n=this.pendingInterceptors();if(n.length===0)return;let r=new pP("interceptor","interceptors").pluralize(n.length);throw new gP(`
|
|
42
42
|
${r.count} ${r.noun} ${r.is} pending:
|
|
43
43
|
|
|
44
44
|
${e.format(n)}
|
|
45
|
-
`.trim())}};XB.exports=Th});var Dc=T((Z8,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((e4,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((n4,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((s4,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((o4,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((A4,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((u4,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((d4,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((h4,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((f4,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((E4,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((I4,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((y4,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((B4,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((b4,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((k4,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((v4,Db)=>{"use strict";Db.exports={kConstruct:Se().kConstruct}});var Fb=T((x4,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((T4,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((F4,_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((M4,Ob)=>{"use strict";Ob.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Ap=T((L4,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((P4,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((G4,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((Y4,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((V4,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((J4,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((q4,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((W4,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((Z4,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((X4,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((t3,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((r3,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((i3,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((a3,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((c3,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((l3,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((g3,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+=`
|
|
45
|
+
`.trim())}};nw.exports=Fh});var da=T((c4,aw)=>{"use strict";var sw=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:mP}=pe(),EP=wi();ow()===void 0&&iw(new EP);function iw(t){if(!t||typeof t.dispatch!="function")throw new mP("Argument agent must implement Agent");Object.defineProperty(globalThis,sw,{value:t,writable:!0,enumerable:!1,configurable:!1})}o(iw,"setGlobalDispatcher");function ow(){return globalThis[sw]}o(ow,"getGlobalDispatcher");aw.exports={setGlobalDispatcher:iw,getGlobalDispatcher:ow}});var Nc=T((d4,Aw)=>{"use strict";Aw.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 uw=T((h4,cw)=>{"use strict";var CP=dc();cw.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 CP(n,a,s,i);return n(c,l)},"redirectInterceptor")}});var dw=T((f4,lw)=>{"use strict";var IP=Bc();lw.exports=t=>e=>o(function(r,s){return e(r,new IP({...r,retryOptions:{...t,...r.retryOptions}},{handler:s,dispatch:e}))},"retryInterceptor")});var hw=T((E4,gw)=>{"use strict";var yP=ue(),{InvalidArgumentError:QP,RequestAbortedError:BP}=pe(),wP=Nc(),Uh=class extends wP{static{o(this,"DumpHandler")}#e=1024*1024;#t=null;#n=!1;#s=!1;#i=0;#r=null;#o=null;constructor({maxSize:e},n){if(super(n),e!=null&&(!Number.isFinite(e)||e<1))throw new QP("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.#s=!0,this.#r=e}onHeaders(e,n,r,s){let a=yP.parseHeaders(n)["content-length"];if(a!=null&&a>this.#e)throw new BP(`Response size (${a}) larger than maxSize (${this.#e})`);return this.#s?!0:this.#o.onHeaders(e,n,r,s)}onError(e){this.#n||(e=this.#r??e,this.#o.onError(e))}onData(e){return this.#i=this.#i+e.length,this.#i>=this.#e&&(this.#n=!0,this.#s?this.#o.onError(this.#r):this.#o.onComplete([])),!0}onComplete(e){if(!this.#n){if(this.#s){this.#o.onError(this.reason);return}this.#o.onComplete(e)}}};function bP({maxSize:t}={maxSize:1024*1024}){return e=>o(function(r,s){let{dumpMaxSize:i=t}=r,a=new Uh({maxSize:i},s);return e(r,a)},"Intercept")}o(bP,"createDumpInterceptor");gw.exports=bP});var mw=T((I4,fw)=>{"use strict";var{isIP:kP}=require("node:net"),{lookup:RP}=require("node:dns"),SP=Nc(),{InvalidArgumentError:Ni,InformationalError:vP}=pe(),pw=Math.pow(2,31)-1,Mh=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.#s,this.pick=e.pick??this.#i}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 vP("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}`)}}#s(e,n,r){RP(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())})}#i(e,n,r){let s=null,{records:i,offset:a}=n,c;if(this.dualStack?(r==null&&(a==null||a===pw?(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===pw?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 Lh(this,e,n)}},Lh=class extends SP{static{o(this,"DNSDispatchHandler")}#e=null;#t=null;#n=null;#s=null;#i=null;constructor(e,{origin:n,handler:r,dispatch:s},i){super(r),this.#i=n,this.#s=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.#i,this.#t,(n,r)=>{if(n)return this.#s.onError(n);let s={...this.#t,origin:r};this.#n(s,this)});return}this.#s.onError(e);return}case"ENOTFOUND":this.#e.deleteRecord(this.#i);default:this.#s.onError(e);break}}};fw.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 Mh(r);return i=>o(function(c,l){let d=c.origin.constructor===URL?c.origin:new URL(c.origin);return kP(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((Q4,ww)=>{"use strict";var{kConstruct:xP}=Re(),{kEnumerableProperty:Fi}=ue(),{iteratorMixin:DP,isValidHeaderName:ga,isValidHeaderValue:Cw}=Qt(),{webidl:he}=je(),_h=require("node:assert"),Fc=require("node:util"),Pe=Symbol("headers map"),kt=Symbol("headers map sorted");function Ew(t){return t===10||t===13||t===9||t===32}o(Ew,"isHTTPWhiteSpaceCharCode");function Iw(t){let e=0,n=t.length;for(;n>e&&Ew(t.charCodeAt(n-1));)--n;for(;n>e&&Ew(t.charCodeAt(e));)++e;return e===0&&n===t.length?t:t.substring(e,n)}o(Iw,"headerValueNormalize");function yw(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}.`});Ph(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)Ph(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(yw,"fill");function Ph(t,e,n){if(n=Iw(n),ga(e)){if(!Cw(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(Bw(t)==="immutable")throw new TypeError("immutable");return Oh(t).append(e,n,!1)}o(Ph,"appendHeader");function Qw(t,e){return t[0]<e[0]?-1:1}o(Qw,"compareHeaderName");var Uc=class t{static{o(this,"HeadersList")}cookies=null;constructor(e){e instanceof t?(this[Pe]=new Map(e[Pe]),this[kt]=e[kt],this.cookies=e.cookies===null?null:[...e.cookies]):(this[Pe]=new Map(e),this[kt]=null)}contains(e,n){return this[Pe].has(n?e:e.toLowerCase())}clear(){this[Pe].clear(),this[kt]=null,this.cookies=null}append(e,n,r){this[kt]=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[kt]=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[kt]=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],_h(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],_h(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],_h(i!==null);return n.sort(Qw)}}},tn=class t{static{o(this,"Headers")}#e;#t;constructor(e=void 0){he.util.markAsUncloneable(this),e!==xP&&(this.#t=new Uc,this.#e="none",e!==void 0&&(e=he.converters.HeadersInit(e,"Headers contructor","init"),yw(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"),Ph(this,e,n)}delete(e){if(he.brandCheck(this,t),he.argumentLengthCheck(arguments,1,"Headers.delete"),e=he.converters.ByteString(e,"Headers.delete","name"),!ga(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"),!ga(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"),!ga(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=Iw(n),ga(e)){if(!Cw(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[kt](){if(this.#t[kt])return this.#t[kt];let e=[],n=this.#t.toSortedArray(),r=this.#t.cookies;if(r===null||r.length===1)return this.#t[kt]=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[kt]=e}[Fc.inspect.custom](e,n){return n.depth??=e,`Headers ${Fc.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:Bw,setHeadersGuard:TP,getHeadersList:Oh,setHeadersList:NP}=tn;Reflect.deleteProperty(tn,"getHeadersGuard");Reflect.deleteProperty(tn,"setHeadersGuard");Reflect.deleteProperty(tn,"getHeadersList");Reflect.deleteProperty(tn,"setHeadersList");DP("Headers",tn,kt,0,1);Object.defineProperties(tn.prototype,{append:Fi,delete:Fi,get:Fi,has:Fi,set:Fi,getSetCookie:Fi,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Fc.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(!Fc.types.isProxy(t)&&r===tn.prototype.entries)try{return Oh(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>"]})};ww.exports={fill:yw,compareHeaderName:Qw,Headers:tn,HeadersList:Uc,getHeadersGuard:Bw,setHeadersGuard:TP,setHeadersList:NP,getHeadersList:Oh}});var pa=T((w4,Mw)=>{"use strict";var{Headers:xw,HeadersList:bw,fill:FP,getHeadersGuard:UP,setHeadersGuard:Dw,setHeadersList:Tw}=Is(),{extractBody:kw,cloneBody:MP,mixinBody:LP,hasFinalizationRegistry:Nw,streamRegistry:Fw,bodyUnusable:_P}=pi(),Gh=ue(),Rw=require("node:util"),{kEnumerableProperty:Rt}=Gh,{isValidReasonPhrase:PP,isCancelled:OP,isAborted:GP,isBlobLike:$P,serializeJavascriptValueToJSONString:YP,isErrorLike:HP,isomorphicEncode:VP,environmentSettingsObject:JP}=Qt(),{redirectStatusSet:qP,nullBodyStatus:jP}=Lo(),{kState:ve,kHeaders:Yn}=ur(),{webidl:oe}=je(),{FormData:WP}=Yo(),{URLSerializer:Sw}=gt(),{kConstruct:Lc}=Re(),$h=require("node:assert"),{types:zP}=require("node:util"),ZP=new TextEncoder("utf-8"),ys=class t{static{o(this,"Response")}static error(){return ha(_c(),"immutable")}static json(e,n={}){oe.argumentLengthCheck(arguments,1,"Response.json"),n!==null&&(n=oe.converters.ResponseInit(n));let r=ZP.encode(YP(e)),s=kw(r),i=ha(Ui({}),"response");return vw(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,JP.settingsObject.baseUrl)}catch(a){throw new TypeError(`Failed to parse URL from ${e}`,{cause:a})}if(!qP.has(n))throw new RangeError(`Invalid status code ${n}`);let s=ha(Ui({}),"immutable");s[ve].status=n;let i=VP(Sw(r));return s[ve].headersList.append("location",i,!0),s}constructor(e=null,n={}){if(oe.util.markAsUncloneable(this),e===Lc)return;e!==null&&(e=oe.converters.BodyInit(e)),n=oe.converters.ResponseInit(n),this[ve]=Ui({}),this[Yn]=new xw(Lc),Dw(this[Yn],"response"),Tw(this[Yn],this[ve].headersList);let r=null;if(e!=null){let[s,i]=kw(e);r={body:s,type:i}}vw(this,n,r)}get type(){return oe.brandCheck(this,t),this[ve].type}get url(){oe.brandCheck(this,t);let e=this[ve].urlList,n=e[e.length-1]??null;return n===null?"":Sw(n,!0)}get redirected(){return oe.brandCheck(this,t),this[ve].urlList.length>1}get status(){return oe.brandCheck(this,t),this[ve].status}get ok(){return oe.brandCheck(this,t),this[ve].status>=200&&this[ve].status<=299}get statusText(){return oe.brandCheck(this,t),this[ve].statusText}get headers(){return oe.brandCheck(this,t),this[Yn]}get body(){return oe.brandCheck(this,t),this[ve].body?this[ve].body.stream:null}get bodyUsed(){return oe.brandCheck(this,t),!!this[ve].body&&Gh.isDisturbed(this[ve].body.stream)}clone(){if(oe.brandCheck(this,t),_P(this))throw oe.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let e=Yh(this[ve]);return Nw&&this[ve].body?.stream&&Fw.register(this,new WeakRef(this[ve].body.stream)),ha(e,UP(this[Yn]))}[Rw.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 ${Rw.formatWithOptions(n,r)}`}};LP(ys);Object.defineProperties(ys.prototype,{type:Rt,url:Rt,status:Rt,ok:Rt,redirected:Rt,statusText:Rt,headers:Rt,clone:Rt,body:Rt,bodyUsed:Rt,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(ys,{json:Rt,redirect:Rt,error:Rt});function Yh(t){if(t.internalResponse)return Uw(Yh(t.internalResponse),t.type);let e=Ui({...t,body:null});return t.body!=null&&(e.body=MP(e,t.body)),e}o(Yh,"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 bw(t?.headersList):new bw,urlList:t?.urlList?[...t.urlList]:[]}}o(Ui,"makeResponse");function _c(t){let e=HP(t);return Ui({type:"error",status:0,error:e?t:new Error(t&&String(t)),aborted:t&&t.name==="AbortError"})}o(_c,"makeNetworkError");function KP(t){return t.type==="error"&&t.status===0}o(KP,"isNetworkError");function Mc(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 $h(!(r in e)),n[r]=s,!0}})}o(Mc,"makeFilteredResponse");function Uw(t,e){if(e==="basic")return Mc(t,{type:"basic",headersList:t.headersList});if(e==="cors")return Mc(t,{type:"cors",headersList:t.headersList});if(e==="opaque")return Mc(t,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(e==="opaqueredirect")return Mc(t,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});$h(!1)}o(Uw,"filterResponse");function XP(t,e=null){return $h(OP(t)),GP(t)?_c(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:e})):_c(Object.assign(new DOMException("Request was cancelled."),{cause:e}))}o(XP,"makeAppropriateNetworkError");function vw(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&&!PP(String(e.statusText)))throw new TypeError("Invalid statusText");if("status"in e&&e.status!=null&&(t[ve].status=e.status),"statusText"in e&&e.statusText!=null&&(t[ve].statusText=e.statusText),"headers"in e&&e.headers!=null&&FP(t[Yn],e.headers),n){if(jP.includes(t.status))throw oe.errors.exception({header:"Response constructor",message:`Invalid response status code ${t.status}`});t[ve].body=n.body,n.type!=null&&!t[ve].headersList.contains("content-type",!0)&&t[ve].headersList.append("content-type",n.type,!0)}}o(vw,"initializeResponse");function ha(t,e){let n=new ys(Lc);return n[ve]=t,n[Yn]=new xw(Lc),Tw(n[Yn],t.headersList),Dw(n[Yn],e),Nw&&t.body?.stream&&Fw.register(n,new WeakRef(t.body.stream)),n}o(ha,"fromInnerResponse");oe.converters.ReadableStream=oe.interfaceConverter(ReadableStream);oe.converters.FormData=oe.interfaceConverter(WP);oe.converters.URLSearchParams=oe.interfaceConverter(URLSearchParams);oe.converters.XMLHttpRequestBodyInit=function(t,e,n){return typeof t=="string"?oe.converters.USVString(t,e,n):$P(t)?oe.converters.Blob(t,e,n,{strict:!1}):ArrayBuffer.isView(t)||zP.isArrayBuffer(t)?oe.converters.BufferSource(t,e,n):Gh.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}]);Mw.exports={isNetworkError:KP,makeNetworkError:_c,makeResponse:Ui,makeAppropriateNetworkError:XP,filterResponse:Uw,Response:ys,cloneResponse:Yh,fromInnerResponse:ha}});var Ow=T((k4,Pw)=>{"use strict";var{kConnected:Lw,kSize:_w}=Re(),Hh=class{static{o(this,"CompatWeakRef")}constructor(e){this.value=e}deref(){return this.value[Lw]===0&&this.value[_w]===0?void 0:this.value}},Vh=class{static{o(this,"CompatFinalizer")}constructor(e){this.finalizer=e}register(e,n){e.on&&e.on("disconnect",()=>{e[Lw]===0&&e[_w]===0&&this.finalizer(n)})}unregister(e){}};Pw.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:Hh,FinalizationRegistry:Vh}):{WeakRef,FinalizationRegistry}}});var Mi=T((S4,tb)=>{"use strict";var{extractBody:eO,mixinBody:tO,cloneBody:nO,bodyUnusable:Gw}=pi(),{Headers:zw,fill:rO,HeadersList:$c,setHeadersGuard:qh,getHeadersGuard:sO,setHeadersList:Zw,getHeadersList:$w}=Is(),{FinalizationRegistry:iO}=Ow()(),Oc=ue(),Yw=require("node:util"),{isValidHTTPToken:oO,sameOrigin:Hw,environmentSettingsObject:Pc}=Qt(),{forbiddenMethodsSet:aO,corsSafeListedMethodsSet:AO,referrerPolicy:cO,requestRedirect:uO,requestMode:lO,requestCredentials:dO,requestCache:gO,requestDuplex:hO}=Lo(),{kEnumerableProperty:Oe,normalizedMethodRecordsBase:pO,normalizedMethodRecords:fO}=Oc,{kHeaders:St,kSignal:Gc,kState:ke,kDispatcher:Jh}=ur(),{webidl:X}=je(),{URLSerializer:mO}=gt(),{kConstruct:Yc}=Re(),EO=require("node:assert"),{getMaxListeners:Vw,setMaxListeners:Jw,getEventListeners:CO,defaultMaxListeners:qw}=require("node:events"),IO=Symbol("abortController"),Kw=new iO(({signal:t,abort:e})=>{t.removeEventListener("abort",e)}),Hc=new WeakMap;function jw(t){return e;function e(){let n=t.deref();if(n!==void 0){Kw.unregister(e),this.removeEventListener("abort",e),n.abort(this.reason);let r=Hc.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()}Hc.delete(n.signal)}}}}o(jw,"buildAbort");var Ww=!1,yr=class t{static{o(this,"Request")}constructor(e,n={}){if(X.util.markAsUncloneable(this),e===Yc)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=Pc.settingsObject.baseUrl,c=null;if(typeof e=="string"){this[Jh]=n.dispatcher;let Q;try{Q=new URL(e,a)}catch(D){throw new TypeError("Failed to parse URL from "+e,{cause:D})}if(Q.username||Q.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e);s=Vc({urlList:[Q]}),i="cors"}else this[Jh]=n.dispatcher||e[Jh],EO(e instanceof t),s=e[ke],c=e[Gc];let l=Pc.settingsObject.origin,d="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&Hw(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=Vc({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:Pc.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 D;try{D=new URL(Q,a)}catch(G){throw new TypeError(`Referrer "${Q}" is not a valid URL.`,{cause:G})}D.protocol==="about:"&&D.hostname==="client"||l&&!Hw(D,Pc.settingsObject.baseUrl)?s.referrer="client":s.referrer=D}}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,D=fO[Q];if(D!==void 0)s.method=D;else{if(!oO(Q))throw new TypeError(`'${Q}' is not a valid HTTP method.`);let G=Q.toUpperCase();if(aO.has(G))throw new TypeError(`'${Q}' HTTP method is unsupported.`);Q=pO[G]??Q,s.method=Q}!Ww&&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"}),Ww=!0)}n.signal!==void 0&&(c=n.signal),this[ke]=s;let f=new AbortController;if(this[Gc]=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[IO]=f;let Q=new WeakRef(f),D=jw(Q);try{(typeof Vw=="function"&&Vw(c)===qw||CO(c,"abort").length>=qw)&&Jw(1500,c)}catch{}Oc.addAbortListener(c,D),Kw.register(f,{signal:c,abort:D},D)}}if(this[St]=new zw(Yc),Zw(this[St],s.headersList),qh(this[St],"request"),h==="no-cors"){if(!AO.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);qh(this[St],"request-no-cors")}if(g){let Q=$w(this[St]),D=n.headers!==void 0?n.headers:new $c(Q);if(Q.clear(),D instanceof $c){for(let{name:G,value:P}of D.rawValues())Q.append(G,P,!1);Q.cookies=D.cookies}else rO(this[St],D)}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,D]=eO(n.body,s.keepalive);C=Q,D&&!$w(this[St]).contains("content-type",!0)&&this[St].append("content-type",D)}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(Gw(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),mO(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[Gc]}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&&Oc.isDisturbed(this[ke].body.stream)}get duplex(){return X.brandCheck(this,t),"half"}clone(){if(X.brandCheck(this,t),Gw(this))throw new TypeError("unusable");let e=Xw(this[ke]),n=new AbortController;if(this.signal.aborted)n.abort(this.signal.reason);else{let r=Hc.get(this.signal);r===void 0&&(r=new Set,Hc.set(this.signal,r));let s=new WeakRef(n);r.add(s),Oc.addAbortListener(n.signal,jw(s))}return eb(e,n.signal,sO(this[St]))}[Yw.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 ${Yw.formatWithOptions(n,r)}`}};tO(yr);function Vc(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 $c(t.headersList):new $c}}o(Vc,"makeRequest");function Xw(t){let e=Vc({...t,body:null});return t.body!=null&&(e.body=nO(e,t.body)),e}o(Xw,"cloneRequest");function eb(t,e,n){let r=new yr(Yc);return r[ke]=t,r[Gc]=e,r[St]=new zw(Yc),Zw(r[St],t.headersList),qh(r[St],n),r}o(eb,"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:cO},{key:"mode",converter:X.converters.DOMString,allowedValues:lO},{key:"credentials",converter:X.converters.DOMString,allowedValues:dO},{key:"cache",converter:X.converters.DOMString,allowedValues:gO},{key:"redirect",converter:X.converters.DOMString,allowedValues:uO},{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:hO},{key:"dispatcher",converter:X.converters.any}]);tb.exports={Request:yr,makeRequest:Vc,fromInnerRequest:eb,cloneRequest:Xw}});var ma=T((x4,fb)=>{"use strict";var{makeNetworkError:ye,makeAppropriateNetworkError:Jc,filterResponse:jh,makeResponse:qc,fromInnerResponse:yO}=pa(),{HeadersList:nb}=Is(),{Request:QO,cloneRequest:BO}=Mi(),Qr=require("node:zlib"),{bytesMatch:wO,makePolicyContainer:bO,clonePolicyContainer:kO,requestBadPort:RO,TAOCheck:SO,appendRequestOriginHeader:vO,responseLocationURL:xO,requestCurrentURL:Qn,setRequestReferrerPolicyOnRedirect:DO,tryUpgradeRequestToAPotentiallyTrustworthyURL:TO,createOpaqueTimingInfo:Xh,appendFetchMetadata:NO,corsCheck:FO,crossOriginResourcePolicyCheck:UO,determineRequestsReferrer:MO,coarsenedSharedCurrentTime:fa,createDeferredPromise:LO,isBlobLike:_O,sameOrigin:Kh,isCancelled:Qs,isAborted:rb,isErrorLike:PO,fullyReadBody:OO,readableStreamClose:GO,isomorphicEncode:jc,urlIsLocal:$O,urlIsHttpHttpsScheme:ep,urlHasHttpsScheme:YO,clampAndCoarsenConnectionTimingInfo:HO,simpleRangeHeaderValue:VO,buildContentRange:JO,createInflate:qO,extractMimeType:jO}=Qt(),{kState:ab,kDispatcher:WO}=ur(),Bs=require("node:assert"),{safelyExtractBody:tp,extractBody:sb}=pi(),{redirectStatusSet:Ab,nullBodyStatus:cb,safeMethodsSet:zO,requestBodyHeader:ZO,subresourceSet:KO}=Lo(),XO=require("node:events"),{Readable:eG,pipeline:tG,finished:nG}=require("node:stream"),{addAbortListener:rG,isErrored:sG,isReadable:Wc,bufferToLowerCasedHeaderName:ib}=ue(),{dataURLProcessor:iG,serializeAMimeType:oG,minimizeSupportedMimeType:aG}=gt(),{getGlobalDispatcher:AG}=da(),{webidl:cG}=je(),{STATUS_CODES:uG}=require("node:http"),lG=["GET","HEAD"],dG=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Wh,zc=class extends XO{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 gG(t){ub(t,"fetch")}o(gG,"handleFetchDone");function hG(t,e=void 0){cG.argumentLengthCheck(arguments,1,"globalThis.fetch");let n=LO(),r;try{r=new QO(t,e)}catch(g){return n.reject(g),n.promise}let s=r[ab];if(r.signal.aborted)return zh(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 rG(r.signal,()=>{c=!0,Bs(l!=null),l.abort(r.signal.reason);let g=a?.deref();zh(n,s,g,r.signal.reason)}),l=db({request:s,processResponseEndOfBody:gG,processResponse:o(g=>{if(!c){if(g.aborted){zh(n,s,a,l.serializedAbortReason);return}if(g.type==="error"){n.reject(new TypeError("fetch failed",{cause:g.error}));return}a=new WeakRef(yO(g,"immutable")),n.resolve(a.deref()),n=null}},"processResponse"),dispatcher:r[WO]}),n.promise}o(hG,"fetch");function ub(t,e="other"){if(t.type==="error"&&t.aborted||!t.urlList?.length)return;let n=t.urlList[0],r=t.timingInfo,s=t.cacheState;ep(n)&&r!==null&&(t.timingAllowPassed||(r=Xh({startTime:r.startTime}),s=""),r.endTime=fa(),t.timingInfo=r,lb(r,n.href,e,globalThis,s))}o(ub,"finalizeAndReportTiming");var lb=performance.markResourceTiming;function zh(t,e,n,r){if(t&&t.reject(r),e.body!=null&&Wc(e.body?.stream)&&e.body.stream.cancel(r).catch(i=>{if(i.code!=="ERR_INVALID_STATE")throw i}),n==null)return;let s=n[ab];s.body!=null&&Wc(s.body?.stream)&&s.body.stream.cancel(r).catch(i=>{if(i.code!=="ERR_INVALID_STATE")throw i})}o(zh,"abortFetch");function db({request:t,processRequestBodyChunkLength:e,processRequestEndOfBody:n,processResponse:r,processResponseEndOfBody:s,processResponseConsumeBody:i,useParallelQueue:a=!1,dispatcher:c=AG()}){Bs(c);let l=null,d=!1;t.client!=null&&(l=t.client.globalObject,d=t.client.crossOriginIsolatedCapability);let g=fa(d),h=Xh({startTime:g}),f={controller:new zc(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=kO(t.client.policyContainer):t.policyContainer=bO()),t.headersList.contains("accept",!0)||t.headersList.append("accept","*/*",!0),t.headersList.contains("accept-language",!0)||t.headersList.append("accept-language","*",!0),t.priority,KO.has(t.destination),gb(f).catch(m=>{f.controller.terminate(m)}),f.controller}o(db,"fetching");async function gb(t,e=!1){let n=t.request,r=null;if(n.localURLsOnly&&!$O(Qn(n))&&(r=ye("local URLs only")),TO(n),RO(n)==="blocked"&&(r=ye("bad port")),n.referrerPolicy===""&&(n.referrerPolicy=n.policyContainer.referrerPolicy),n.referrer!=="no-referrer"&&(n.referrer=MO(n)),r===null&&(r=await(async()=>{let i=Qn(n);return Kh(i,n.url)&&n.responseTainting==="basic"||i.protocol==="data:"||n.mode==="navigate"||n.mode==="websocket"?(n.responseTainting="basic",await ob(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 ob(t)):ep(Qn(n))?(n.responseTainting="cors",await hb(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"||cb.includes(s.status))&&(s.body=null,t.controller.dump=!0),n.integrity){let i=o(c=>Zh(t,ye(c)),"processBodyError");if(n.responseTainting==="opaque"||r.body==null){i(r.error);return}let a=o(c=>{if(!wO(c,n.integrity)){i("integrity mismatch");return}r.body=tp(c)[0],Zh(t,r)},"processBody");await OO(r.body,a,i)}else Zh(t,r)}o(gb,"mainFetch");function ob(t){if(Qs(t)&&t.request.redirectCount===0)return Promise.resolve(Jc(t));let{request:e}=t,{protocol:n}=Qn(e);switch(n){case"about:":return Promise.resolve(ye("about scheme is not supported"));case"blob:":{Wh||(Wh=require("node:buffer").resolveObjectURL);let r=Qn(e);if(r.search.length!==0)return Promise.resolve(ye("NetworkError when attempting to fetch resource."));let s=Wh(r.toString());if(e.method!=="GET"||!_O(s))return Promise.resolve(ye("invalid method"));let i=qc(),a=s.size,c=jc(`${a}`),l=s.type;if(e.headersList.contains("range",!0)){i.rangeRequested=!0;let d=e.headersList.get("range",!0),g=VO(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=sb(m);i.body=C[0];let y=jc(`${m.size}`),v=JO(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=sb(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=Qn(e),s=iG(r);if(s==="failure")return Promise.resolve(ye("failed to fetch the data URL"));let i=oG(s.mimeType);return Promise.resolve(qc({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:i}]],body:tp(s.body)[0]}))}case"file:":return Promise.resolve(ye("not implemented... yet..."));case"http:":case"https:":return hb(t).catch(r=>ye(r));default:return Promise.resolve(ye("unknown scheme"))}}o(ob,"schemeFetch");function pG(t,e){t.request.done=!0,t.processResponseDone!=null&&queueMicrotask(()=>t.processResponseDone(e))}o(pG,"finalizeResponse");function Zh(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=Xh(n),c="");let d=0;if(t.request.mode!=="navigator"||!e.hasCrossOriginRedirects){d=e.status;let g=jO(e.headersList);g!=="failure"&&(l.contentType=aG(g))}t.request.initiatorType!=null&&lb(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():nG(s.body.stream,()=>{r()})}o(Zh,"fetchFinale");async function hb(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 pb(t),e.responseTainting==="cors"&&FO(e,n)==="failure")return ye("cors failure");SO(e,n)==="failure"&&(e.timingAllowFailed=!0)}return(e.responseTainting==="opaque"||n.type==="opaque")&&UO(e.origin,e.client,e.destination,r)==="blocked"?ye("blocked"):(Ab.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 fG(t,n):Bs(!1)),n.timingInfo=s,n)}o(hb,"httpFetch");function fG(t,e){let n=t.request,r=e.internalResponse?e.internalResponse:e,s;try{if(s=xO(r,Qn(n).hash),s==null)return e}catch(a){return Promise.resolve(ye(a))}if(!ep(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)&&!Kh(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&&!lG.includes(n.method)){n.method="GET",n.body=null;for(let a of ZO)n.headersList.delete(a)}Kh(Qn(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=tp(n.body.source)[0]);let i=t.timingInfo;return i.redirectEndTime=i.postRedirectStartTime=fa(t.crossOriginIsolatedCapability),i.redirectStartTime===0&&(i.redirectStartTime=i.startTime),n.urlList.push(s),DO(n,r),gb(t,!0)}o(fG,"httpRedirectFetch");async function pb(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=BO(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=jc(`${g}`)),h!=null&&i.headersList.append("content-length",h,!0),g!=null&&i.keepalive,i.referrer instanceof URL&&i.headersList.append("referer",jc(i.referrer.href),!0),vO(i),NO(i),i.headersList.contains("user-agent",!0)||i.headersList.append("user-agent",dG),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)||(YO(Qn(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 mG(s,d,n);!zO.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)?Jc(t):ye("proxy authentication required");if(a.status===421&&!n&&(r.body==null||r.body.source!=null)){if(Qs(t))return Jc(t);t.controller.connection.destroy(),a=await pb(t,e,!0)}return a}o(pb,"httpNetworkOrCacheFetch");async function mG(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:D}=await m({body:l});if(D)s=qc({status:y,statusText:v,headersList:Q,socket:D});else{let G=C[Symbol.asyncIterator]();t.controller.next=()=>G.next(),s=qc({status:y,statusText:v,headersList:Q})}}catch(C){return C.name==="AbortError"?(t.controller.connection.destroy(),Jc(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.resume||t.controller.on("terminated",f),t.controller.resume=async()=>{for(;;){let C,y;try{let{done:Q,value:D}=await t.controller.next();if(rb(t))break;C=Q?void 0:D}catch(Q){t.controller.ended&&!i.encodedBodySize?C=void 0:(C=Q,y=!0)}if(C===void 0){GO(t.controller.controller),pG(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),sG(h)){t.controller.terminate();return}if(t.controller.controller.desiredSize<=0)return}};function f(C){rb(t)?(s.aborted=!0,Wc(h)&&t.controller.controller.error(t.controller.serializedAbortReason)):Wc(h)&&t.controller.controller.error(new TypeError("terminated",{cause:PO(C)?C:void 0})),t.controller.connection.destroy()}return o(f,"onAborted"),s;function m({body:C}){let y=Qn(r),v=t.controller.dispatcher;return new Promise((Q,D)=>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=HO(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=fa(t.crossOriginIsolatedCapability)},onResponseStarted(){i.finalNetworkResponseStartTime=fa(t.crossOriginIsolatedCapability)},onHeaders(G,P,ae,Ee){if(G<200)return;let Ce="",De=new nb;for(let Ge=0;Ge<P.length;Ge+=2)De.append(ib(P[Ge]),P[Ge+1].toString("latin1"),!0);Ce=De.get("location",!0);let et=[],sn=Ce&&r.redirect==="follow"&&Ab.has(G);if(r.method!=="HEAD"&&r.method!=="CONNECT"&&!cb.includes(G)&&!sn){let Ge=De.get("content-encoding",!0),Tt=Ge?Ge.toLowerCase().split(","):[],xe=5;if(Tt.length>xe)return this.abort(new Error(`too many content-encodings in response: ${Tt.length}, maximum allowed is ${xe}`)),!0;for(let Nt=Tt.length-1;Nt>=0;--Nt){let $=Tt[Nt].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(qO({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}}}this.body=new eG({read:ae});let At=this.onError.bind(this);return Q({status:G,statusText:Ee,headersList:De,body:et.length?tG(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.ended=!0,this.body.push(null)},onError(G){this.abort&&t.controller.off("terminated",this.abort),this.body?.destroy(G),t.controller.terminate(G),D(G)},onUpgrade(G,P,ae){if(G!==101)return;let Ee=new nb;for(let Ce=0;Ce<P.length;Ce+=2)Ee.append(ib(P[Ce]),P[Ce+1].toString("latin1"),!0);return Q({status:G,statusText:uG[G],headersList:Ee,socket:ae}),!0}}))}o(m,"dispatch")}o(mG,"httpNetworkFetch");fb.exports={fetch:hG,Fetch:zc,fetching:db,finalizeAndReportTiming:ub}});var np=T((T4,mb)=>{"use strict";mb.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 Cb=T((N4,Eb)=>{"use strict";var{webidl:vt}=je(),Zc=Symbol("ProgressEvent state"),rp=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")}]);Eb.exports={ProgressEvent:rp}});var yb=T((U4,Ib)=>{"use strict";function EG(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(EG,"getEncoding");Ib.exports={getEncoding:EG}});var vb=T((L4,Sb)=>{"use strict";var{kState:Li,kError:sp,kResult:Qb,kAborted:Ea,kLastProgressEventFired:ip}=np(),{ProgressEvent:CG}=Cb(),{getEncoding:Bb}=yb(),{serializeAMimeType:IG,parseMIMEType:wb}=gt(),{types:yG}=require("node:util"),{StringDecoder:bb}=require("string_decoder"),{btoa:kb}=require("node:buffer"),QG={enumerable:!0,writable:!1,configurable:!1};function BG(t,e,n,r){if(t[Li]==="loading")throw new DOMException("Invalid state","InvalidStateError");t[Li]="loading",t[Qb]=null,t[sp]=null;let i=e.stream().getReader(),a=[],c=i.read(),l=!0;(async()=>{for(;!t[Ea];)try{let{done:d,value:g}=await c;if(l&&!t[Ea]&&queueMicrotask(()=>{Br("loadstart",t)}),l=!1,!d&&yG.isUint8Array(g))a.push(g),(t[ip]===void 0||Date.now()-t[ip]>=50)&&!t[Ea]&&(t[ip]=Date.now(),queueMicrotask(()=>{Br("progress",t)})),c=i.read();else if(d){queueMicrotask(()=>{t[Li]="done";try{let h=wG(a,n,e.type,r);if(t[Ea])return;t[Qb]=h,Br("load",t)}catch(h){t[sp]=h,Br("error",t)}t[Li]!=="loading"&&Br("loadend",t)});break}}catch(d){if(t[Ea])return;queueMicrotask(()=>{t[Li]="done",t[sp]=d,Br("error",t),t[Li]!=="loading"&&Br("loadend",t)});break}})()}o(BG,"readOperation");function Br(t,e){let n=new CG(t,{bubbles:!1,cancelable:!1});e.dispatchEvent(n)}o(Br,"fireAProgressEvent");function wG(t,e,n,r){switch(e){case"DataURL":{let s="data:",i=wb(n||"application/octet-stream");i!=="failure"&&(s+=IG(i)),s+=";base64,";let a=new bb("latin1");for(let c of t)s+=kb(a.write(c));return s+=kb(a.end()),s}case"Text":{let s="failure";if(r&&(s=Bb(r)),s==="failure"&&n){let i=wb(n);i!=="failure"&&(s=Bb(i.parameters.get("charset")))}return s==="failure"&&(s="UTF-8"),bG(t,s)}case"ArrayBuffer":return Rb(t).buffer;case"BinaryString":{let s="",i=new bb("latin1");for(let a of t)s+=i.write(a);return s+=i.end(),s}}}o(wG,"packageData");function bG(t,e){let n=Rb(t),r=kG(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(bG,"decode");function kG(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(kG,"BOMSniffing");function Rb(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(Rb,"combineByteSequences");Sb.exports={staticPropertyDescriptors:QG,readOperation:BG,fireAProgressEvent:Br}});var Nb=T((P4,Tb)=>{"use strict";var{staticPropertyDescriptors:_i,readOperation:Kc,fireAProgressEvent:xb}=vb(),{kState:ws,kError:Db,kResult:Xc,kEvents:fe,kAborted:RG}=np(),{webidl:Be}=je(),{kEnumerableProperty:ft}=ue(),nn=class t extends EventTarget{static{o(this,"FileReader")}constructor(){super(),this[ws]="empty",this[Xc]=null,this[Db]=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}),Kc(this,e,"ArrayBuffer")}readAsBinaryString(e){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),e=Be.converters.Blob(e,{strict:!1}),Kc(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")),Kc(this,e,"Text",n)}readAsDataURL(e){Be.brandCheck(this,t),Be.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),e=Be.converters.Blob(e,{strict:!1}),Kc(this,e,"DataURL")}abort(){if(this[ws]==="empty"||this[ws]==="done"){this[Xc]=null;return}this[ws]==="loading"&&(this[ws]="done",this[Xc]=null),this[RG]=!0,xb("abort",this),this[ws]!=="loading"&&xb("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[Xc]}get error(){return Be.brandCheck(this,t),this[Db]}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});Tb.exports={FileReader:nn}});var eu=T((G4,Fb)=>{"use strict";Fb.exports={kConstruct:Re().kConstruct}});var Lb=T(($4,Mb)=>{"use strict";var SG=require("node:assert"),{URLSerializer:Ub}=gt(),{isValidHeaderName:vG}=Qt();function xG(t,e,n=!1){let r=Ub(t,n),s=Ub(e,n);return r===s}o(xG,"urlEquals");function DG(t){SG(t!==null);let e=[];for(let n of t.split(","))n=n.trim(),vG(n)&&e.push(n);return e}o(DG,"getFieldValues");Mb.exports={urlEquals:xG,getFieldValues:DG}});var Ob=T((H4,Pb)=>{"use strict";var{kConstruct:TG}=eu(),{urlEquals:NG,getFieldValues:op}=Lb(),{kEnumerableProperty:bs,isDisturbed:FG}=ue(),{webidl:q}=je(),{Response:UG,cloneResponse:MG,fromInnerResponse:LG}=pa(),{Request:Hn,fromInnerRequest:_G}=Mi(),{kState:rn}=ur(),{fetching:PG}=ma(),{urlIsHttpHttpsScheme:tu,createDeferredPromise:Pi,readAllBytes:OG}=Qt(),ap=require("node:assert"),nu=class t{static{o(this,"Cache")}#e;constructor(){arguments[0]!==TG&&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.#i(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.#i(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(!tu(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 Hn(f)[rn];if(!tu(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(PG({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=op(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 D of i)D.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 Hn?s=e[rn]:s=new Hn(e)[rn],!tu(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=op(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&&(FG(i.body.stream)||i.body.stream.locked))throw q.errors.exception({header:r,message:"Response body is locked or disturbed"});let a=MG(i),c=Pi();if(i.body!=null){let C=i.body.stream.getReader();OG(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 Hn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return!1}else ap(typeof e=="string"),s=new Hn(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 Hn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return[]}else typeof e=="string"&&(s=new Hn(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=_G(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);ap(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(!tu(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);ap(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.#s(e,c,l,n)&&s.push(a)}return s}#s(e,n,r=null,s){let i=new URL(e.url),a=new URL(n.url);if(s?.ignoreSearch&&(a.search="",i.search=""),!NG(i,a,!0))return!1;if(r==null||s?.ignoreVary||!r.headersList.contains("vary"))return!0;let c=op(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}#i(e,n,r=1/0){let s=null;if(e!==void 0)if(e instanceof Hn){if(s=e[rn],s.method!=="GET"&&!n.ignoreMethod)return[]}else typeof e=="string"&&(s=new Hn(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=LG(c,"immutable");if(a.push(l.clone()),a.length>=r)break}return Object.freeze(a)}};Object.defineProperties(nu.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:bs,matchAll:bs,add:bs,addAll:bs,put:bs,delete:bs,keys:bs});var _b=[{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(_b);q.converters.MultiCacheQueryOptions=q.dictionaryConverter([..._b,{key:"cacheName",converter:q.converters.DOMString}]);q.converters.Response=q.interfaceConverter(UG);q.converters["sequence<RequestInfo>"]=q.sequenceConverter(q.converters.RequestInfo);Pb.exports={Cache:nu}});var $b=T((J4,Gb)=>{"use strict";var{kConstruct:Ca}=eu(),{Cache:ru}=Ob(),{webidl:Xe}=je(),{kEnumerableProperty:Ia}=ue(),su=class t{static{o(this,"CacheStorage")}#e=new Map;constructor(){arguments[0]!==Ca&&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 ru(Ca,r).match(e,n)}}else for(let r of this.#e.values()){let i=await new ru(Ca,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 ru(Ca,s)}let r=[];return this.#e.set(e,r),new ru(Ca,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(su.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:Ia,has:Ia,open:Ia,delete:Ia,keys:Ia});Gb.exports={CacheStorage:su}});var Hb=T((j4,Yb)=>{"use strict";Yb.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var up=T((W4,jb)=>{"use strict";function GG(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(GG,"isCTLExcludingHtab");function Ap(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(Ap,"validateCookieName");function cp(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(cp,"validateCookieValue");function Jb(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(Jb,"validateCookiePath");function Vb(t){return t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122}o(Vb,"isLetterOrDigit");function $G(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&&!Vb(r))throw new Error("Invalid cookie domain");if(!Vb(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($G,"validateCookieDomain");var YG=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],HG=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],iu=Array(61).fill(0).map((t,e)=>e.toString().padStart(2,"0"));function qb(t){return typeof t=="number"&&(t=new Date(t)),`${YG[t.getUTCDay()]}, ${iu[t.getUTCDate()]} ${HG[t.getUTCMonth()]} ${t.getUTCFullYear()} ${iu[t.getUTCHours()]}:${iu[t.getUTCMinutes()]}:${iu[t.getUTCSeconds()]} GMT`}o(qb,"toIMFDate");function VG(t){if(t<0)throw new Error("Invalid cookie max-age")}o(VG,"validateCookieMaxAge");function JG(t){if(t.name.length===0)return null;Ap(t.name),cp(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"&&(VG(t.maxAge),e.push(`Max-Age=${t.maxAge}`)),t.domain&&($G(t.domain),e.push(`Domain=${t.domain}`)),t.path&&(Jb(t.path),e.push(`Path=${t.path}`)),t.expires&&t.expires.toString()!=="Invalid Date"&&e.push(`Expires=${qb(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("=");Ap(i),cp(a),e.push(`${i}=${a}`)}return e.join("; ")}o(JG,"stringify");jb.exports={isCTLExcludingHtab:GG,validateCookieName:Ap,validateCookiePath:Jb,validateCookieValue:cp,toIMFDate:qb,stringify:JG}});var zb=T((Z4,Wb)=>{"use strict";var{maxNameValuePairSize:qG,maxAttributeValueSize:jG}=Hb(),{isCTLExcludingHtab:WG}=up(),{collectASequenceOfCodePointsFast:ou}=gt(),zG=require("node:assert");function ZG(t){if(WG(t))return null;let e="",n="",r="",s="";if(t.includes(";")){let i={position:0};e=ou(";",t,i),n=t.slice(i.position)}else e=t;if(!e.includes("="))s=e;else{let i={position:0};r=ou("=",e,i),s=e.slice(i.position+1)}return r=r.trim(),s=s.trim(),r.length+s.length>qG?null:{name:r,value:s,...Oi(n)}}o(ZG,"parseSetCookie");function Oi(t,e={}){if(t.length===0)return e;zG(t[0]===";"),t=t.slice(1);let n="";t.includes(";")?(n=ou(";",t,{position:0}),t=t.slice(n.length)):(n=t,t="");let r="",s="";if(n.includes("=")){let a={position:0};r=ou("=",n,a),s=n.slice(a.position+1)}else r=n;if(r=r.trim(),s=s.trim(),s.length>jG)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");Wb.exports={parseSetCookie:ZG,parseUnparsedAttributes:Oi}});var Xb=T((X4,Kb)=>{"use strict";var{parseSetCookie:KG}=zb(),{stringify:XG}=up(),{webidl:ge}=je(),{Headers:au}=Is();function e1(t){ge.argumentLengthCheck(arguments,1,"getCookies"),ge.brandCheck(t,au,{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(e1,"getCookies");function t1(t,e,n){ge.brandCheck(t,au,{strict:!1});let r="deleteCookie";ge.argumentLengthCheck(arguments,2,r),e=ge.converters.DOMString(e,r,"name"),n=ge.converters.DeleteCookieAttributes(n),Zb(t,{name:e,value:"",expires:new Date(0),...n})}o(t1,"deleteCookie");function n1(t){ge.argumentLengthCheck(arguments,1,"getSetCookies"),ge.brandCheck(t,au,{strict:!1});let e=t.getSetCookie();return e?e.map(n=>KG(n)):[]}o(n1,"getSetCookies");function Zb(t,e){ge.argumentLengthCheck(arguments,2,"setCookie"),ge.brandCheck(t,au,{strict:!1}),e=ge.converters.Cookie(e);let n=XG(e);n&&t.append("Set-Cookie",n)}o(Zb,"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")}]);Kb.exports={getCookies:e1,deleteCookie:t1,getSetCookies:n1,setCookie:Zb}});var $i=T((t3,tk)=>{"use strict";var{webidl:V}=je(),{kEnumerableProperty:mt}=ue(),{kConstruct:ek}=Re(),{MessagePort:r1}=require("node:worker_threads"),Gi=class t extends Event{static{o(this,"MessageEvent")}#e;constructor(e,n={}){if(e===ek){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(ek,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:s1}=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}},cu=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(cu.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:mt,filename:mt,lineno:mt,colno:mt,error:mt});V.converters.MessagePort=V.interfaceConverter(r1);V.converters["sequence<MessagePort>"]=V.sequenceConverter(V.converters.MessagePort);var lp=[{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([...lp,{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([...lp,{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([...lp,{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}]);tk.exports={MessageEvent:Gi,CloseEvent:Au,ErrorEvent:cu,createFastMessageEvent:s1}});var ks=T((r3,nk)=>{"use strict";var i1="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",o1={enumerable:!0,writable:!1,configurable:!1},a1={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},A1={NOT_SENT:0,PROCESSING:1,SENT:2},c1={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},u1=2**16-1,l1={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},d1=Buffer.allocUnsafe(0),g1={string:1,typedArray:2,arrayBuffer:3,blob:4};nk.exports={uid:i1,sentCloseFrameState:A1,staticPropertyDescriptors:o1,states:a1,opcodes:c1,maxUnsigned16Bit:u1,parserStates:l1,emptyBuffer:d1,sendHints:g1}});var ya=T((s3,rk)=>{"use strict";rk.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 wa=T((i3,dk)=>{"use strict";var{kReadyState:Qa,kController:h1,kResponse:p1,kBinaryType:f1,kWebSocketURL:m1}=ya(),{states:Ba,opcodes:wr}=ks(),{ErrorEvent:E1,createFastMessageEvent:C1}=$i(),{isUtf8:I1}=require("node:buffer"),{collectASequenceOfCodePointsFast:y1,removeHTTPWhitespace:sk}=gt();function Q1(t){return t[Qa]===Ba.CONNECTING}o(Q1,"isConnecting");function B1(t){return t[Qa]===Ba.OPEN}o(B1,"isEstablished");function w1(t){return t[Qa]===Ba.CLOSING}o(w1,"isClosing");function b1(t){return t[Qa]===Ba.CLOSED}o(b1,"isClosed");function dp(t,e,n=(s,i)=>new Event(s,i),r={}){let s=n(t,r);e.dispatchEvent(s)}o(dp,"fireEvent");function k1(t,e,n){if(t[Qa]!==Ba.OPEN)return;let r;if(e===wr.TEXT)try{r=lk(n)}catch{ok(t,"Received invalid UTF-8 in text frame.");return}else e===wr.BINARY&&(t[f1]==="blob"?r=new Blob([n]):r=R1(n));dp("message",t,C1,{origin:t[m1].origin,data:r})}o(k1,"websocketMessageReceived");function R1(t){return t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}o(R1,"toArrayBuffer");function S1(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(S1,"isValidSubprotocol");function v1(t){return t>=1e3&&t<1015?t!==1004&&t!==1005&&t!==1006:t>=3e3&&t<=4999}o(v1,"isValidStatusCode");function ok(t,e){let{[h1]:n,[p1]:r}=t;n.abort(),r?.socket&&!r.socket.destroyed&&r.socket.destroy(),e&&dp("error",t,(s,i)=>new E1(s,i),{error:new Error(e),message:e})}o(ok,"failWebsocketConnection");function ak(t){return t===wr.CLOSE||t===wr.PING||t===wr.PONG}o(ak,"isControlFrame");function Ak(t){return t===wr.CONTINUATION}o(Ak,"isContinuationFrame");function ck(t){return t===wr.TEXT||t===wr.BINARY}o(ck,"isTextBinaryFrame");function x1(t){return ck(t)||Ak(t)||ak(t)}o(x1,"isValidOpcode");function D1(t){let e={position:0},n=new Map;for(;e.position<t.length;){let r=y1(";",t,e),[s,i=""]=r.split("=");n.set(sk(s,!0,!1),sk(i,!1,!0)),e.position++}return n}o(D1,"parseExtensions");function T1(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(T1,"isValidClientWindowBits");var uk=typeof process.versions.icu=="string",ik=uk?new TextDecoder("utf-8",{fatal:!0}):void 0,lk=uk?ik.decode.bind(ik):function(t){if(I1(t))return t.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};dk.exports={isConnecting:Q1,isEstablished:B1,isClosing:w1,isClosed:b1,fireEvent:dp,isValidSubprotocol:S1,isValidStatusCode:v1,failWebsocketConnection:ok,websocketMessageReceived:k1,utf8Decode:lk,isControlFrame:ak,isContinuationFrame:Ak,isTextBinaryFrame:ck,isValidOpcode:x1,parseExtensions:D1,isValidClientWindowBits:T1}});var lu=T((a3,gk)=>{"use strict";var{maxUnsigned16Bit:N1}=ks(),uu=16386,gp,ba=null,Yi=uu;try{gp=require("node:crypto")}catch{gp={randomFillSync:o(function(e,n,r){for(let s=0;s<e.length;++s)e[s]=Math.random()*255|0;return e},"randomFillSync")}}function F1(){return Yi===uu&&(Yi=0,gp.randomFillSync(ba??=Buffer.allocUnsafe(uu),0,uu)),[ba[Yi++],ba[Yi++],ba[Yi++],ba[Yi++]]}o(F1,"generateMask");var hp=class{static{o(this,"WebsocketFrameSend")}constructor(e){this.frameData=e}createFrame(e){let n=this.frameData,r=F1(),s=n?.byteLength??0,i=s,a=6;s>N1?(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}};gk.exports={WebsocketFrameSend:hp}});var fp=T((c3,Ik)=>{"use strict";var{uid:U1,states:ka,sentCloseFrameState:du,emptyBuffer:M1,opcodes:L1}=ks(),{kReadyState:Ra,kSentClose:gu,kByteParser:pk,kReceivedClose:hk,kResponse:fk}=ya(),{fireEvent:_1,failWebsocketConnection:br,isClosing:P1,isClosed:O1,isEstablished:G1,parseExtensions:$1}=wa(),{channels:Hi}=ni(),{CloseEvent:Y1}=$i(),{makeRequest:H1}=Mi(),{fetching:V1}=ma(),{Headers:J1,getHeadersList:q1}=Is(),{getDecodeSplit:j1}=Qt(),{WebsocketFrameSend:W1}=lu(),pp;try{pp=require("node:crypto")}catch{}function z1(t,e,n,r,s,i){let a=t;a.protocol=t.protocol==="ws:"?"http:":"https:";let c=H1({urlList:[a],client:n,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(i.headers){let h=q1(new J1(i.headers));c.headersList=h}let l=pp.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"),V1({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=pp.createHash("sha1").update(l+U1).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=$1(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=j1("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",mk),h.socket.on("close",Ek),h.socket.on("error",Ck),Hi.open.hasSubscribers&&Hi.open.publish({address:h.socket.address(),protocol:v,extensions:C}),s(h,y)}})}o(z1,"establishWebSocketConnection");function Z1(t,e,n,r){if(!(P1(t)||O1(t)))if(!G1(t))br(t,"Connection was closed before it was established."),t[Ra]=ka.CLOSING;else if(t[gu]===du.NOT_SENT){t[gu]=du.PROCESSING;let s=new W1;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=M1,t[fk].socket.write(s.createFrame(L1.CLOSE)),t[gu]=du.SENT,t[Ra]=ka.CLOSING}else t[Ra]=ka.CLOSING}o(Z1,"closeWebSocketConnection");function mk(t){this.ws[pk].write(t)||this.pause()}o(mk,"onSocketData");function Ek(){let{ws:t}=this,{[fk]:e}=t;e.socket.off("data",mk),e.socket.off("close",Ek),e.socket.off("error",Ck);let n=t[gu]===du.SENT&&t[hk],r=1005,s="",i=t[pk].closingInfo;i&&!i.error?(r=i.code??1005,s=i.reason):t[hk]||(r=1006),t[Ra]=ka.CLOSED,_1("close",t,(a,c)=>new Y1(a,c),{wasClean:n,code:r,reason:s}),Hi.close.hasSubscribers&&Hi.close.publish({websocket:t,code:r,reason:s})}o(Ek,"onSocketClose");function Ck(t){let{ws:e}=this;e[Ra]=ka.CLOSING,Hi.socketError.hasSubscribers&&Hi.socketError.publish(t),this.destroy()}o(Ck,"onSocketError");Ik.exports={establishWebSocketConnection:z1,closeWebSocketConnection:Z1}});var Qk=T((l3,yk)=>{"use strict";var{createInflateRaw:K1,Z_DEFAULT_WINDOWBITS:X1}=require("node:zlib"),{isValidClientWindowBits:e$}=wa(),{MessageSizeExceededError:t$}=pe(),n$=Buffer.from([0,0,255,255]),hu=Symbol("kBuffer"),Sa=Symbol("kLength"),mp=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=X1;if(this.#t.serverMaxWindowBits){if(!e$(this.#t.serverMaxWindowBits)){r(new Error("Invalid server_max_window_bits"));return}s=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=K1({windowBits:s})}catch(i){r(i);return}this.#e[hu]=[],this.#e[Sa]=0,this.#e.on("data",i=>{if(this.#e[Sa]+=i.length,this.#n>0&&this.#e[Sa]>this.#n){r(new t$),this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null;return}this.#e[hu].push(i)}),this.#e.on("error",i=>{this.#e=null,r(i)})}this.#e.write(e),n&&this.#e.write(n$),this.#e.flush(()=>{if(!this.#e)return;let s=Buffer.concat(this.#e[hu],this.#e[Sa]);this.#e[hu].length=0,this.#e[Sa]=0,r(null,s)})}};yk.exports={PerMessageDeflate:mp}});var Dk=T((g3,xk)=>{"use strict";var{Writable:r$}=require("node:stream"),s$=require("node:assert"),{parserStates:Et,opcodes:Vi,states:i$,emptyBuffer:Bk,sentCloseFrameState:wk}=ks(),{kReadyState:o$,kSentClose:bk,kResponse:Ep,kReceivedClose:kk}=ya(),{channels:pu}=ni(),{isValidStatusCode:a$,isValidOpcode:A$,failWebsocketConnection:xt,websocketMessageReceived:Rk,utf8Decode:c$,isControlFrame:Cp,isTextBinaryFrame:Ip,isContinuationFrame:u$}=wa(),{WebsocketFrameSend:Sk}=lu(),{closeWebSocketConnection:vk}=fp(),{PerMessageDeflate:l$}=Qk(),{MessageSizeExceededError:yp}=pe();function va(t,e,n){vk(t,e,n,Buffer.byteLength(n)),xt(t,n)}o(va,"failWebsocketConnectionWithCode");var Qp=class extends r${static{o(this,"ByteParser")}#e=[];#t=0;#n=0;#s=!1;#i=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 l$(n,r))}_write(e,n,r){this.#e.push(e),this.#n+=e.length,this.#s=!0,this.run(r)}#u(){return this.#A>0&&!Cp(this.#r.opcode)&&this.#r.payloadLength+this.#t>this.#A?(va(this.ws,1009,"Payload size exceeds maximum allowed size"),!1):!0}run(e){for(;this.#s;)if(this.#i===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(!A$(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&&!Ip(s)){xt(this.ws,"Invalid frame type was fragmented.");return}if(Ip(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)&&Cp(s)){xt(this.ws,"Control frame either too large or fragmented");return}if(u$(s)&&this.#o.length===0&&!this.#r.compressed){xt(this.ws,"Unexpected continuation frame");return}if(c<=125){if(this.#r.payloadLength=c,this.#i=Et.READ_DATA,!this.#u())return}else c===126?this.#i=Et.PAYLOADLENGTH_16:c===127&&(this.#i=Et.PAYLOADLENGTH_64);Ip(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.#i===Et.PAYLOADLENGTH_16){if(this.#n<2)return e();let n=this.consume(2);if(this.#r.payloadLength=n.readUInt16BE(0),this.#i=Et.READ_DATA,!this.#u())return}else if(this.#i===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.#i=Et.READ_DATA,!this.#u())return}else if(this.#i===Et.READ_DATA){if(this.#n<this.#r.payloadLength)return e();let n=this.consume(this.#r.payloadLength);if(Cp(this.#r.opcode)){this.#s=this.parseControlFrame(n),this.#i=Et.INFO;let r=this.ws[Ep].socket;if(this.#s&&r.writableNeedDrain){this.#s=!1,r.once("drain",()=>{this.destroyed||(this.#s=!0,this.run(e))});return}}else if(this.#r.compressed){this.#a.get("permessage-deflate").decompress(n,this.#r.fin,(r,s)=>{if(r){let i=r instanceof yp?1009:1007;va(this.ws,i,r.message);return}if(this.writeFragments(s)){if(this.#A>0&&this.#t>this.#A){va(this.ws,1009,new yp().message);return}if(!this.#r.fin){this.#i=Et.INFO,this.#s=!0,this.run(e);return}Rk(this.ws,this.#r.binaryType,this.consumeFragments()),this.#s=!0,this.#i=Et.INFO,this.run(e)}}),this.#s=!1;break}else{if(!this.writeFragments(n))return;if(this.#A>0&&this.#t>this.#A){va(this.ws,1009,new yp().message);return}!this.#r.fragmented&&this.#r.fin&&Rk(this.ws,this.#r.binaryType,this.consumeFragments()),this.#i=Et.INFO}}}consume(e){if(e>this.#n)throw new Error("Called consume() before buffers satiated.");if(e===0)return Bk;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?(va(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){s$(e.length!==1);let n;if(e.length>=2&&(n=e.readUInt16BE(0)),n!==void 0&&!a$(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=c$(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 vk(this.ws,s,i,i.length),xt(this.ws,i),!1}if(this.ws[bk]!==wk.SENT){let s=Bk;this.#r.closeInfo.code&&(s=Buffer.allocUnsafe(2),s.writeUInt16BE(this.#r.closeInfo.code,0));let i=new Sk(s);this.ws[Ep].socket.write(i.createFrame(Vi.CLOSE),a=>{a||(this.ws[bk]=wk.SENT)})}return this.ws[o$]=i$.CLOSING,this.ws[kk]=!0,!1}else if(n===Vi.PING){if(!this.ws[kk]){let s=new Sk(e);this.ws[Ep].socket.write(s.createFrame(Vi.PONG)),pu.ping.hasSubscribers&&pu.ping.publish({payload:e})}}else n===Vi.PONG&&pu.pong.hasSubscribers&&pu.pong.publish({payload:e});return!0}get closingInfo(){return this.#r.closeInfo}};xk.exports={ByteParser:Qp}});var Mk=T((p3,Uk)=>{"use strict";var{WebsocketFrameSend:d$}=lu(),{opcodes:Tk,sendHints:Ji}=ks(),g$=Rg(),Nk=Buffer[Symbol.species],Bp=class{static{o(this,"SendQueue")}#e=new g$;#t=!1;#n;constructor(e){this.#n=e}add(e,n,r){if(r!==Ji.blob){let i=Fk(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=Fk(i,r)}),callback:n,frame:null};this.#e.push(s),this.#t||this.#s()}async#s(){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 Fk(t,e){return new d$(h$(t,e)).createFrame(e===Ji.string?Tk.TEXT:Tk.BINARY)}o(Fk,"createFrame");function h$(t,e){switch(e){case Ji.string:return Buffer.from(t);case Ji.arrayBuffer:case Ji.blob:return new Nk(t);case Ji.typedArray:return new Nk(t.buffer,t.byteOffset,t.byteLength)}}o(h$,"toBuffer");Uk.exports={SendQueue:Bp}});var Jk=T((m3,Vk)=>{"use strict";var{webidl:ne}=je(),{URLSerializer:p$}=gt(),{environmentSettingsObject:Lk}=Qt(),{staticPropertyDescriptors:kr,states:xa,sentCloseFrameState:f$,sendHints:fu}=ks(),{kWebSocketURL:_k,kReadyState:wp,kController:Pk,kBinaryType:mu,kResponse:Ok,kSentClose:m$,kByteParser:E$}=ya(),{isConnecting:C$,isEstablished:I$,isClosing:y$,isValidSubprotocol:Q$,fireEvent:Gk}=wa(),{establishWebSocketConnection:B$,closeWebSocketConnection:$k}=fp(),{ByteParser:w$}=Dk(),{kEnumerableProperty:Yt,isBlobLike:Yk}=ue(),{getGlobalDispatcher:b$}=da(),{types:Hk}=require("node:util"),{ErrorEvent:k$,CloseEvent:R$}=$i(),{SendQueue:S$}=Mk(),Dt=class t extends EventTarget{static{o(this,"WebSocket")}#e={open:null,error:null,close:null,message:null};#t=0;#n="";#s="";#i;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=Lk.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=>Q$(l)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[_k]=new URL(a.href);let c=Lk.settingsObject;this[Pk]=B$(a,n,c,this,(l,d)=>this.#r(l,d),s),this[wp]=t.CONNECTING,this[m$]=f$.NOT_SENT,this[mu]="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");$k(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"),C$(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!I$(this)||y$(this)))if(typeof e=="string"){let r=Buffer.byteLength(e);this.#t+=r,this.#i.add(e,()=>{this.#t-=r},fu.string)}else Hk.isArrayBuffer(e)?(this.#t+=e.byteLength,this.#i.add(e,()=>{this.#t-=e.byteLength},fu.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#i.add(e,()=>{this.#t-=e.byteLength},fu.typedArray)):Yk(e)&&(this.#t+=e.size,this.#i.add(e,()=>{this.#t-=e.size},fu.blob))}get readyState(){return ne.brandCheck(this,t),this[wp]}get bufferedAmount(){return ne.brandCheck(this,t),this.#t}get url(){return ne.brandCheck(this,t),p$(this[_k])}get extensions(){return ne.brandCheck(this,t),this.#s}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[mu]}set binaryType(e){ne.brandCheck(this,t),e!=="blob"&&e!=="arraybuffer"?this[mu]="blob":this[mu]=e}#r(e,n){this[Ok]=e;let r=this[Pk]?.dispatcher?.webSocketOptions,s=r?.maxFragments,i=r?.maxPayloadSize,a=new w$(this,n,{maxFragments:s,maxPayloadSize:i});a.on("drain",v$),a.on("error",x$.bind(this)),e.socket.ws=this,this[E$]=a,this.#i=new S$(e.socket),this[wp]=xa.OPEN;let c=e.headersList.get("sec-websocket-extensions");c!==null&&(this.#s=c);let l=e.headersList.get("sec-websocket-protocol");l!==null&&(this.#n=l),Gk("open",this)}};Dt.CONNECTING=Dt.prototype.CONNECTING=xa.CONNECTING;Dt.OPEN=Dt.prototype.OPEN=xa.OPEN;Dt.CLOSING=Dt.prototype.CLOSING=xa.CLOSING;Dt.CLOSED=Dt.prototype.CLOSED=xa.CLOSED;Object.defineProperties(Dt.prototype,{CONNECTING:kr,OPEN:kr,CLOSING:kr,CLOSED:kr,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:kr,OPEN:kr,CLOSING:kr,CLOSED:kr});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(()=>b$(),"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(Yk(t))return ne.converters.Blob(t,{strict:!1});if(ArrayBuffer.isView(t)||Hk.isArrayBuffer(t))return ne.converters.BufferSource(t)}return ne.converters.USVString(t)};function v$(){this.ws[Ok].socket.resume()}o(v$,"onParserDrain");function x$(t){let e,n;t instanceof R$?(e=t.reason,n=t.code):e=t.message,Gk("error",this,()=>new k$("error",{error:t,message:e})),$k(this,n)}o(x$,"onParserError");Vk.exports={WebSocket:Dt}});var bp=T((C3,qk)=>{"use strict";function D$(t){return t.indexOf("\0")===-1}o(D$,"isValidLastEventId");function T$(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(T$,"isASCIINumber");function N$(t){return new Promise(e=>{setTimeout(e,t).unref()})}o(N$,"delay");qk.exports={isValidLastEventId:D$,isASCIINumber:T$,delay:N$}});var Wk=T((y3,jk)=>{"use strict";var F$=require("node:buffer"),{Transform:U$}=require("node:stream"),{isASCIINumber:M$,isValidLastEventId:L$}=bp(),qi=[239,187,191],Eu=10,Da=13,_$=58,P$=32,O$=F$.kStringMaxLength,G$=Buffer.from("data"),$$=Buffer.from("event"),Y$=Buffer.from("id"),H$=Buffer.from("retry"),V$=1024,J$=131072,q$=128;function j$(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(j$,"isASCIINumberBytes");function W$(t,e){for(let n=e;n<t.length;n++)if(t[n]===0)return!1;return!0}o(W$,"isValidLastEventIdBytes");function Cu(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(Cu,"isFieldName");function Iu(){let t=new Error("EventSource message size exceeded");return t.aborted=!1,t}o(Iu,"createMaxEventSizeExceededError");var kp=class extends U${static{o(this,"EventSourceStream")}state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;lineLength=0;eventSize=0;eventFieldSizes={data:0,event:0,id:0,retry:0};dataLineCount=0;maxEventSize;maxDataLines;maxBufferedChunks;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},this.maxEventSize=e.maxEventSize??O$;let n=this.maxEventSize>0?Math.min(J$,Math.max(V$,Math.floor(this.maxEventSize/q$))):0;this.maxDataLines=n,this.maxBufferedChunks=n,e.push&&(this.push=e.push)}_transform(e,n,r){if(e.length===0){r();return}if(this.maxEventSize>0&&this.chunks.length>=this.maxBufferedChunks&&e[0]!==Eu&&e[0]!==Da){r(Iu());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===Eu){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(s===Eu||s===Da){s===Da&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(s===Eu||s===Da){s===Da&&(this.crlfCheck=!0);try{this.parseLine(this.readLine(),this.event)}catch(i){r(i);return}this.consumeCurrentByte(),this.eventEndCheck=!0;continue}if(this.maxEventSize>0&&++this.lineLength>this.maxEventSize+7){r(Iu());return}this.advanceCursor()}r()}_destroy(e,n){this.chunks.length=0,this.clearEvent(),super._destroy(e,n)}parseLine(e,n){if(e.length===0)return;let r=e.indexOf(_$);if(r===0)return;let s=e.length,i=e.length;if(r!==-1&&(s=r,i=r+1,e[i]===P$&&++i),Cu(e,s,G$)){if(this.maxEventSize>0&&this.dataLineCount>=this.maxDataLines)throw Iu();let a=e.length-i,c=this.eventFieldSizes.data+(n.data===void 0?0:1)+a;this.setEventFieldSize("data",c);let l=e.toString("utf8",i);n.data===void 0?n.data=l:n.data+=`
|
|
46
|
+
${l}`,this.dataLineCount++;return}if(Cu(e,s,H$)){j$(e,i)&&(this.setEventFieldSize("retry",e.length-i),n.retry=e.toString("utf8",i));return}if(Cu(e,s,Y$)){W$(e,i)&&(this.setEventFieldSize("id",e.length-i),n.id=e.toString("utf8",i));return}Cu(e,s,$$)&&i<e.length&&(this.setEventFieldSize("event",e.length-i),n.event=e.toString("utf8",i))}setEventFieldSize(e,n){let r=this.eventSize-this.eventFieldSizes[e]+n;if(this.maxEventSize>0&&r>this.maxEventSize)throw Iu();this.eventSize=r,this.eventFieldSizes[e]=n}processEvent(e){e.retry&&M$(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&L$(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,this.eventSize=0,this.dataLineCount=0,this.eventFieldSizes.data=0,this.eventFieldSizes.event=0,this.eventFieldSizes.id=0,this.eventFieldSizes.retry=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.lineLength=0,this.dropConsumedChunks()}dropConsumedChunks(){if(this.lineChunkIndex>0){let e=this.lineChunkIndex;this.chunks.splice(0,e),this.lineChunkIndex=0,this.chunkIndex-=e}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())}};jk.exports={EventSourceStream:kp}});var rR=T((B3,nR)=>{"use strict";var{pipeline:z$}=require("node:stream"),{fetching:Z$}=ma(),{makeRequest:K$}=Mi(),{webidl:Vn}=je(),{EventSourceStream:X$}=Wk(),{parseMIMEType:eY}=gt(),{createFastMessageEvent:tY}=$i(),{isNetworkError:zk}=pa(),{delay:nY}=bp(),{kEnumerableProperty:Rs}=ue(),{environmentSettingsObject:Zk}=Qt(),{getGlobalDispatcher:rY}=da(),Kk=!1,Xk=3e3,Ta=0,eR=1,Na=2,sY="anonymous",iY="use-credentials",ji=class t extends EventTarget{static{o(this,"EventSource")}#e={open:null,error:null,message:null};#t=null;#n=!1;#s=Ta;#i=null;#r=null;#o;#a;constructor(e,n={}){super(),Vn.util.markAsUncloneable(this);let r="EventSource constructor";Vn.argumentLengthCheck(arguments,1,r),Kk||(Kk=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=Vn.converters.USVString(e,r,"url"),n=Vn.converters.EventSourceInitDict(n,r,"eventSourceInitDict"),this.#o=n.dispatcher,this.#a={lastEventId:"",reconnectionTime:Xk};let s=Zk,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=sY;n.withCredentials&&(a=iY,this.#n=!0);let c={redirect:"follow",keepalive:!0,mode:"cors",credentials:a==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};c.client=Zk.settingsObject,c.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],c.cache="no-store",c.initiator="other",c.urlList=[new URL(this.#t)],this.#i=K$(c),this.#c()}get readyState(){return this.#s}get url(){return this.#t}get withCredentials(){return this.#n}#c(){if(this.#s===Na)return;this.#s=Ta;let e={request:this.#i,dispatcher:this.#o},n=o(r=>{zk(r)&&(this.dispatchEvent(new Event("error")),this.close()),this.#A()},"processEventSourceEndOfBody");e.processResponseEndOfBody=n,e.processResponse=r=>{if(zk(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?eY(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.#s=eR,this.dispatchEvent(new Event("open")),this.#a.origin=r.urlList[r.urlList.length-1].origin;let c=new X$({eventSourceSettings:this.#a,maxEventSize:this.#o.eventSourceOptions?.maxEventSize,push:o(l=>{this.dispatchEvent(tY(l.type,l.options))},"push")});z$(r.body.stream,c,l=>{l?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#r=Z$(e)}async#A(){this.#s!==Na&&(this.#s=Ta,this.dispatchEvent(new Event("error")),await nY(this.#a.reconnectionTime),this.#s===Ta&&(this.#a.lastEventId.length&&this.#i.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#c()))}close(){Vn.brandCheck(this,t),this.#s!==Na&&(this.#s=Na,this.#r.abort(),this.#i=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}},tR={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:Ta,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:eR,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:Na,writable:!1}};Object.defineProperties(ji,tR);Object.defineProperties(ji.prototype,tR);Object.defineProperties(ji.prototype,{close:Rs,onerror:Rs,onmessage:Rs,onopen:Rs,readyState:Rs,url:Rs,withCredentials:Rs});Vn.converters.EventSourceInitDict=Vn.dictionaryConverter([{key:"withCredentials",converter:Vn.converters.boolean,defaultValue:o(()=>!1,"defaultValue")},{key:"dispatcher",converter:Vn.converters.any,defaultValue:o(()=>rY(),"defaultValue")}]);nR.exports={EventSource:ji,defaultReconnectionTime:Xk}});var aR=T((b3,te)=>{"use strict";var oY=Qi(),sR=Fo(),aY=Bi(),AY=sQ(),cY=wi(),uY=qg(),lY=SQ(),dY=UQ(),iR=pe(),Qu=ue(),{InvalidArgumentError:yu}=iR,Wi=yB(),gY=Mo(),hY=Sh(),pY=rw(),fY=Dh(),mY=ph(),EY=Bc(),{getGlobalDispatcher:oR,setGlobalDispatcher:CY}=da(),IY=Nc(),yY=dc(),QY=gc();Object.assign(sR.prototype,Wi);te.exports.Dispatcher=sR;te.exports.Client=oY;te.exports.Pool=aY;te.exports.BalancedPool=AY;te.exports.Agent=cY;te.exports.ProxyAgent=uY;te.exports.EnvHttpProxyAgent=lY;te.exports.RetryAgent=dY;te.exports.RetryHandler=EY;te.exports.DecoratorHandler=IY;te.exports.RedirectHandler=yY;te.exports.createRedirectInterceptor=QY;te.exports.interceptors={redirect:uw(),retry:dw(),dump:hw(),dns:mw()};te.exports.buildConnector=gY;te.exports.errors=iR;te.exports.util={parseHeaders:Qu.parseHeaders,headerNameToString:Qu.headerNameToString};function Fa(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 yu("invalid url");if(n!=null&&typeof n!="object")throw new yu("invalid opts");if(n&&n.path!=null){if(typeof n.path!="string")throw new yu("invalid opts.path");let a=n.path;n.path.startsWith("/")||(a=`/${a}`),e=new URL(Qu.parseOrigin(e).origin+a)}else n||(n=typeof e=="object"?e:{}),e=Qu.parseURL(e);let{agent:s,dispatcher:i=oR()}=n;if(s)throw new yu("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(Fa,"makeDispatcher");te.exports.setGlobalDispatcher=CY;te.exports.getGlobalDispatcher=oR;var BY=ma().fetch;te.exports.fetch=o(async function(e,n=void 0){try{return await BY(e,n)}catch(r){throw r&&typeof r=="object"&&Error.captureStackTrace(r),r}},"fetch");te.exports.Headers=Is().Headers;te.exports.Response=pa().Response;te.exports.Request=Mi().Request;te.exports.FormData=Yo().FormData;te.exports.File=globalThis.File??require("node:buffer").File;te.exports.FileReader=Nb().FileReader;var{setGlobalOrigin:wY,getGlobalOrigin:bY}=Jd();te.exports.setGlobalOrigin=wY;te.exports.getGlobalOrigin=bY;var{CacheStorage:kY}=$b(),{kConstruct:RY}=eu();te.exports.caches=new kY(RY);var{deleteCookie:SY,getCookies:vY,getSetCookies:xY,setCookie:DY}=Xb();te.exports.deleteCookie=SY;te.exports.getCookies=vY;te.exports.getSetCookies=xY;te.exports.setCookie=DY;var{parseMIMEType:TY,serializeAMimeType:NY}=gt();te.exports.parseMIMEType=TY;te.exports.serializeAMimeType=NY;var{CloseEvent:FY,ErrorEvent:UY,MessageEvent:MY}=$i();te.exports.WebSocket=Jk().WebSocket;te.exports.CloseEvent=FY;te.exports.ErrorEvent=UY;te.exports.MessageEvent=MY;te.exports.request=Fa(Wi.request);te.exports.stream=Fa(Wi.stream);te.exports.pipeline=Fa(Wi.pipeline);te.exports.connect=Fa(Wi.connect);te.exports.upgrade=Fa(Wi.upgrade);te.exports.MockClient=hY;te.exports.MockPool=fY;te.exports.MockAgent=pY;te.exports.mockErrors=mY;var{EventSource:LY}=rR();te.exports.EventSource=LY});var b2={};_p(b2,{AppRefusal:()=>Bn,AppUnreachable:()=>zi,AttemptEndReason:()=>ho,NoReportCause:()=>po,RunnerMethod:()=>Fp,V3Attempt:()=>Pa,closedV3Attempt:()=>wR,endV3Attempt:()=>RR,heartbeatV3Attempt:()=>Lp,startV3Attempt:()=>BR,uploadV3Report:()=>kR});module.exports=NR(b2);var A={};_p(A,{BRAND:()=>iS,DIRTY:()=>vr,EMPTY_PATH:()=>LR,INVALID:()=>Z,NEVER:()=>YS,OK:()=>We,ParseStatus:()=>Ve,Schema:()=>Ae,ZodAny:()=>Xn,ZodArray:()=>vn,ZodBigInt:()=>Dr,ZodBoolean:()=>Tr,ZodBranded:()=>oo,ZodCatch:()=>Yr,ZodDate:()=>Nr,ZodDefault:()=>$r,ZodDiscriminatedUnion:()=>Za,ZodEffects:()=>Mt,ZodEnum:()=>Or,ZodError:()=>ct,ZodFirstPartyTypeKind:()=>ee,ZodFunction:()=>Xa,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:()=>Ft,ZodParsedType:()=>O,ZodPipeline:()=>ao,ZodPromise:()=>er,ZodReadonly:()=>Hr,ZodRecord:()=>Ka,ZodSchema:()=>Ae,ZodSet:()=>Ls,ZodString:()=>Kn,ZodSymbol:()=>Fs,ZodTransformer:()=>Mt,ZodTuple:()=>An,ZodType:()=>Ae,ZodUndefined:()=>Fr,ZodUnion:()=>Mr,ZodUnknown:()=>Sn,ZodVoid:()=>Us,addIssueToContext:()=>_,any:()=>hS,array:()=>ES,bigint:()=>cS,boolean:()=>zp,coerce:()=>$S,custom:()=>qp,date:()=>uS,datetimeRegex:()=>Vp,defaultErrorMap:()=>kn,discriminatedUnion:()=>QS,effect:()=>FS,enum:()=>DS,function:()=>SS,getErrorMap:()=>Ds,getParsedType:()=>an,instanceof:()=>aS,intersection:()=>BS,isAborted:()=>Wa,isAsync:()=>Ts,isDirty:()=>za,isValid:()=>Zn,late:()=>oS,lazy:()=>vS,literal:()=>xS,makeIssue:()=>io,map:()=>kS,nan:()=>AS,nativeEnum:()=>TS,never:()=>fS,null:()=>gS,nullable:()=>MS,number:()=>Wp,object:()=>CS,objectUtil:()=>Nu,oboolean:()=>GS,onumber:()=>OS,optional:()=>US,ostring:()=>PS,pipeline:()=>_S,preprocess:()=>LS,promise:()=>NS,quotelessJson:()=>FR,record:()=>bS,set:()=>RS,setErrorMap:()=>MR,strictObject:()=>IS,string:()=>jp,symbol:()=>lS,transformer:()=>FS,tuple:()=>wS,undefined:()=>dS,union:()=>yS,unknown:()=>pS,util:()=>le,void:()=>mS});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 Nu;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Nu||(Nu={}));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"]),FR=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 UR=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"),kn=UR;var Op=kn;function MR(t){Op=t}o(MR,"setErrorMap");function Ds(){return Op}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"),LR=[];function _(t,e){let n=Ds(),r=io({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===kn?void 0:kn].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"),Wa=o(t=>t.status==="aborted","isAborted"),za=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 Ut=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}},Gp=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 Gp(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 Gp(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 Mt({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 Ft.create(this,this._def)}nullable(){return cn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return vn.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 Mt({...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}},_R=/^c[^\s-]{8,}$/i,PR=/^[0-9a-z]+$/,OR=/^[0-9A-HJKMNP-TV-Z]{26}$/i,GR=/^[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,$R=/^[a-z0-9_-]{21}$/i,YR=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,HR=/^[-+]?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)?)??$/,VR=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,JR="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Fu,qR=/^(?:(?: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])$/,jR=/^(?:(?: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])$/,WR=/^(([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]))$/,zR=/^(([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])$/,ZR=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,KR=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Yp="((\\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])))",XR=new RegExp(`^${Yp}$`);function Hp(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(Hp,"timeRegexSource");function eS(t){return new RegExp(`^${Hp(t)}$`)}o(eS,"timeRegex");function Vp(t){let e=`${Yp}T${Hp(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(Vp,"datetimeRegex");function tS(t,e){return!!((e==="v4"||!e)&&qR.test(t)||(e==="v6"||!e)&&WR.test(t))}o(tS,"isValidIP");function nS(t,e){if(!YR.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(nS,"isValidJWT");function rS(t,e){return!!((e==="v4"||!e)&&jR.test(t)||(e==="v6"||!e)&&zR.test(t))}o(rS,"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")VR.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")Fu||(Fu=new RegExp(JR,"u")),Fu.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")GR.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")$R.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")_R.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")PR.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")OR.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"?Vp(i).test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?XR.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?eS(i).test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{code:N.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?HR.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"duration",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?tS(e.data,i.version)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"ip",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="jwt"?nS(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"jwt",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="cidr"?rS(e.data,i.version)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"cidr",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?ZR.test(e.data)||(s=this._getOrReturnCtx(e,s),_(s,{validation:"base64",code:N.invalid_string,message:i.message}),r.dirty()):i.kind==="base64url"?KR.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 sS(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(sS,"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"?sS(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 Sn=class extends Ae{static{o(this,"ZodUnknown")}constructor(){super(...arguments),this._unknown=!0}_parse(e){return We(e.data)}};Sn.create=t=>new Sn({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 vn=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 Ut(n,a,n.path,c)))).then(a=>Ve.mergeArray(r,a));let i=[...n.data].map((a,c)=>s.type._parseSync(new Ut(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)}};vn.create=(t,e)=>new vn({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]=Ft.create(Ns(r))}return new ut({...t._def,shape:o(()=>e,"shape")})}else return t instanceof vn?new vn({...t._def,type:Ns(t.element)}):t instanceof Ft?Ft.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 Ut(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 Ut(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 Ft;)i=i._def.innerType;n[r]=i}return new t({...this._def,shape:o(()=>n,"shape")})}keyof(){return Jp(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 Mt?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 Ft?[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"),Za=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 Uu(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=Uu(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=Uu(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(Uu,"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(Wa(i)||Wa(a))return Z;let c=Uu(i.value,a.value);return c.valid?((za(i)||za(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 Ut(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 Ka=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 Ut(r,c,r.path,c)),value:a._parse(new Ut(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 Ut(r,c,r.path,[d,"key"])),value:i._parse(new Ut(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 Ut(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 Xa=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(),kn].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(),kn].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(Sn.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(Sn.create()),returns:n||Sn.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 Jp(t,e){return new Or({values:t,typeName:ee.ZodEnum,...ie(e)})}o(Jp,"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=Jp;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 Mt=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)}};Mt.create=(t,e,n)=>new Mt({schema:t,typeName:ee.ZodEffects,effect:e,...ie(n)});Mt.createWithPreprocess=(t,e,n)=>new Mt({schema:e,effect:{type:"preprocess",transform:t},typeName:ee.ZodEffects,...ie(n)});var Ft=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}};Ft.create=(t,e)=>new Ft({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 iS=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 $p(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}o($p,"cleanParams");function qp(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=$p(e,r),l=c.fatal??n??!0;s.addIssue({code:"custom",...c,fatal:l})}});if(!i){let a=$p(e,r),c=a.fatal??n??!0;s.addIssue({code:"custom",...a,fatal:c})}}):Xn.create()}o(qp,"custom");var oS={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 aS=o((t,e={message:`Input not instance of ${t.name}`})=>qp(n=>n instanceof t,e),"instanceOfType"),jp=Kn.create,Wp=xr.create,AS=_s.create,cS=Dr.create,zp=Tr.create,uS=Nr.create,lS=Fs.create,dS=Fr.create,gS=Ur.create,hS=Xn.create,pS=Sn.create,fS=Vt.create,mS=Us.create,ES=vn.create,CS=ut.create,IS=ut.strictCreate,yS=Mr.create,QS=Za.create,BS=Lr.create,wS=An.create,bS=Ka.create,kS=Ms.create,RS=Ls.create,SS=Xa.create,vS=_r.create,xS=Pr.create,DS=Or.create,TS=Gr.create,NS=er.create,FS=Mt.create,US=Ft.create,MS=cn.create,LS=Mt.createWithPreprocess,_S=ao.create,PS=o(()=>jp().optional(),"ostring"),OS=o(()=>Wp().optional(),"onumber"),GS=o(()=>zp().optional(),"oboolean"),$S={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 YS=Z;var ff=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 Mu=o(t=>`${t.source}:${t.site??""}:${t.key}`,"requirementItemId");var eA=/^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||{}),Lu=(r=>(r.Application="application",r.Environment="environment",r.TestDefect="test_defect",r))(Lu||{}),_u=(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))(_u||{});var tA=(n=>(n.Probe="probe",n.Agent="agent",n))(tA||{}),nA=(r=>(r.Seed="seed",r.RuntimeMock="runtime_mock",r.EnvOverride="env_override",r))(nA||{}),rA=(r=>(r.TestCode="test_code",r.SkyrampMocker="skyramp_mocker",r.RecipeOverride="recipe_override",r))(rA||{});var Pu=(n=>(n.Ready="ready",n.Blocked="blocked",n))(Pu||{}),Ne=A.string().trim().min(1),HS=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"}),VS=/^[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",JS=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:JS,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(),Ou={steps:A.array(HS).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(VS)).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")},qS=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(),...Ou,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")}),WS=A.object({framework:Ne,file:Ne.describe("the test file run, relative to its repository root"),result:A.enum(["pass","fail","error"])}),zS=A.object({input:Ne.describe("the part of the user's SUT input, as given"),reason:Ne}),AH=A.object({schemaVersion:A.literal(1),status:A.nativeEnum(Pu).describe("ready only if every component came up healthy and the recipe is written"),components:A.array(qS),suites:A.array(WS).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(zS).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 Gu=64*1024,$u=512*1024,Zp=/[\u0000-\u0008\u000b\u000e-\u001f\u007f]|[\ud800-\udbff](?![\udc00-\udfff])|(?<![\ud800-\udbff])[\udc00-\udfff]/;var Xp=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),ZS=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")}),Yu=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"),Kp=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:ZS.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:Yu.optional()});var ze=A.string().trim().min(1),Hu=(n=>(n.TestbotManaged="testbot_managed",n.CustomerDeployed="customer_deployed",n))(Hu||{}),Vu=[".skyramp/sut/setup.sh",".skyramp/sut/teardown.sh"],ef=A.object({schemaVersion:A.literal(1),type:A.nativeEnum(Hu).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(),...Ou,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)=>{Vu.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 mH=["clean","recipe-drift"];function sA(t){let e=Xp.posix.normalize(t);return e===t&&(e===".skyramp/workspace.yml"||e.startsWith(".skyramp/sut/")&&e.length>13)}o(sA,"isRuntimePlanFile");var AA=(n=>(n.GitHub="github",n.AzureDevOps="azure-devops",n))(AA||{}),zu=(i=>(i.Trigger="TRIGGER",i.Baseline="BASELINE",i.AuthoritativeRelatedChange="AUTHORITATIVE_RELATED_CHANGE",i.ConfiguredSharedDependency="CONFIGURED_SHARED_DEPENDENCY",i.ManualOverride="MANUAL_OVERRIDE",i))(zu||{}),mf=(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))(mf||{}),KS=["sut_setup"],XS=["sut_setup","schedule","revision_read"],ev=["sut_setup"],Zu=(e=>(e.PullRequest="pull_request",e))(Zu||{}),Ef=(s=>(s.ModelProvider="model_provider",s.SutAccess="sut_access",s.Skyramp="skyramp",s.Other="other",s))(Ef||{});var ho=(i=>(i.ReportUploaded="report_uploaded",i.NoReport="no_report",i.Cancelled="cancelled",i.RecipeUploaded="recipe_uploaded",i.RevisionsUploaded="revisions_uploaded",i))(ho||{}),Cf=(n=>(n.Running="running",n.Ended="ended",n))(Cf||{}),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||{}),If=(r=>(r.Onboard="onboard",r.Deploy="deploy",r.Recheck="recheck",r))(If||{}),yf=(n=>(n.Started="started",n.Finished="finished",n))(yf||{}),Qf=(r=>(r.Passed="passed",r.Failed="failed",r.Skipped="skipped",r))(Qf||{});var Bf=(r=>(r.ChooseCredential="choose_credential",r.FreeText="free_text",r.ChooseSource="choose_source",r))(Bf||{});var Ku=(r=>(r.Discover="discover",r.Start="start",r.Check="check",r))(Ku||{}),Xu=(s=>(s.Found="found",s.Starting="starting",s.Up="up",s.OutOfScope="out_of_scope",s))(Xu||{}),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}$/),oA=A.object({id:tt,revision:Jt}).strict(),cA={provider:A.literal("github"),providerAccountId:Jt,providerRepositoryId:Jt},uA={provider:A.literal("azure-devops"),providerAccountId:tt,providerRepositoryId:tt},qr=A.discriminatedUnion("provider",[A.object(cA).strict(),A.object(uA).strict()]),el=A.discriminatedUnion("provider",[A.object(cA).passthrough(),A.object(uA).passthrough()]),jr=o(t=>`${t.provider}:${t.providerRepositoryId}`,"sourceKey"),tf={namespace:A.string().min(1),name:A.string().min(1)},wf=A.discriminatedUnion("provider",[A.object({...cA,...tf}).strict(),A.object({...uA,...tf}).strict()]),nf=A.object({ref:A.string().min(1),revision:Jr}).strict(),tv=A.object({repository:wf,revision:Jr,ref:A.string().nullable(),reason:A.nativeEnum(zu),change:A.object({kind:A.nativeEnum(Zu),number:Jt,base:nf.optional()}).strict().nullable(),compareWith:nf.optional()}).strict();function nv(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(nv,"baselineSourcesIssue");var bf=/^[A-Z][A-Z0-9_]+-[1-9][0-9]*$/,kf=/^[1-9][0-9]{0,18}$/,rf=new RegExp(`${bf.source}|${kf.source}`),sf=/^https:\/\/[a-z0-9-]+(\.[a-z0-9-]+)+$/,rv=A.union([A.object({source:A.literal("jira"),site:A.string().regex(sf),key:A.string().regex(bf),updated:A.string().datetime(),contentHash:nt}).strict(),A.object({source:A.literal("confluence"),site:A.string().regex(sf),key:A.string().regex(kf),version:A.number().int().positive(),contentHash:nt}).strict(),A.object({source:A.literal("other"),key:A.string().regex(eA),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()]),of=A.union([A.literal("jira"),A.literal("confluence")]),sv=A.object({schemaVersion:A.literal(1),items:A.array(A.union([A.object({source:of,site:A.string(),key:A.string().regex(rf),state:A.literal("read"),text:A.string(),version:A.string().min(1),contentMatches:A.boolean()}).strict(),A.object({source:of,site:A.string(),key:A.string().regex(rf),state:A.literal("not_read"),reason:A.nativeEnum(Vr)}).strict(),A.object({source:A.literal("other"),key:A.string().regex(eA),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(eA),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(),iv=A.object({schemaVersion:A.literal(1),runId:tt,skyrampOrgId:tt,target:oA,policy:oA.nullable(),trigger:A.object({kind:A.nativeEnum(mf),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(tv).min(1),execution:A.object({provider:A.nativeEnum(AA),repository:wf,workflowPath:A.string(),ref:A.string()}).strict(),credentials:A.array(A.object({name:A.string(),purpose:A.nativeEnum(Ef),required:A.boolean()}).strict()),requirements:A.array(rv).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=Mu({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=KS.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=nv(t);i&&e.addIssue({code:A.ZodIssueCode.custom,path:t.baseline?["baseline","sources"]:["baseline"],message:i}),XS.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 Rf=(n=>(n.Person="person",n.Policy="policy",n))(Rf||{}),ov=A.object({kind:A.nativeEnum(Rf),name:A.string().min(1).max(256)}).strict(),av=A.object({schemaVersion:A.literal(1),attempt:A.object({id:tt,number:A.number().int().positive(),deadlineAt:A.string().datetime()}).strict(),manifest:iv,manifestHash:nt,entitlements:A.array(A.string()).optional(),runToken:A.string().min(1).optional(),requestedBy:ov.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(),af={providerRunAttempt:A.number().int().positive(),workflowRef:A.string().min(1)},Av=A.string().regex(/^[^/]+\/[^/]+\/[1-9][0-9]{0,15}\/[1-9][0-9]{0,15}$/),cv=A.object({schemaVersion:A.literal(1),runId:tt,execution:A.discriminatedUnion("provider",[A.object({...af,provider:A.literal("github"),repository:A.object(cA).strict(),providerRunId:Jt}).strict(),A.object({...af,provider:A.literal("azure-devops"),repository:A.object(uA).strict(),providerRunId:Av}).strict()]),requester:A.literal(!0).optional(),writeCheck:A.literal(!0).optional(),claudeCodePin:A.literal(!0).optional()}).strict(),Af=A.object({repository:qr,number:Jt}).strict(),uv=A.discriminatedUnion("status",[A.object({status:A.literal("none")}).strict(),A.object({status:A.literal("delivered"),pullRequests:A.array(Af).min(1)}).strict(),A.object({status:A.literal("partial"),pullRequests:A.array(Af).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()]),lv=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"})}),Ju=500,dv=2048,gv=1e3,hv=/[\\/:*?"<>|;#$*{},+=[\]%\p{Cc}\p{Cf}]/u,cf=o(t=>t.length>0&&t.length<=64&&t===t.trim()&&!hv.test(t)&&!/[^\S ]/u.test(t)&&!/^[._]/.test(t)&&!t.endsWith("."),"isAzureName"),pv=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)&&cf(n)&&cf(r)},"isResultRepository"),fv=A.object({testResults:A.array(A.object({resultId:A.string().regex(/^[^\u0000-\u001f]{1,512}$/),repository:A.string().refine(pv,"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(Lu),family:A.nativeEnum(_u).optional()}).strict().optional()}).strict()),validation:lv,changes:A.array(A.object({id:A.string().min(1).max(512),text:A.string().max(16384),source:A.string().max(dv),testedBy:A.array(A.string().min(1).max(1024)).max(Ju),writtenBy:A.array(A.string().min(1).max(1024)).max(Ju),maintainedBy:A.array(A.string().min(1).max(1024)).max(Ju)}).strict()).max(gv).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)})}),uf=o(t=>t.replace(/[%:#]/g,e=>encodeURIComponent(e)),"encodeIdPart");function Sf(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}:${uf(a)}`;return r?`${c}#${uf(r)}`:c}o(Sf,"testResultId");var vf=50,lf=A.string().regex(/^(?!.*\.\.)(?!\/)(?!.*\/$)[A-Za-z0-9._/-]{1,255}$/),xf=A.discriminatedUnion("kind",[A.object({kind:A.literal("branch_pushed"),repository:qr,branch:lf,commit:Jr}).strict(),A.object({kind:A.enum(["pull_request_opened","pull_request_edited"]),repository:qr,number:Jt,branch:lf}).strict()]),Df=A.object({schemaVersion:A.literal(1),run:A.object({runId:tt,attemptNumber:A.number().int().positive(),manifestHash:nt}).strict(),target:oA,policy:oA,provenance:A.object({sources:A.array(A.object({repository:qr,revision:Jr}).strict())}).strict(),delivery:A.object({generatedTests:uv}).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:fv,githubWrites:A.array(xf).max(vf).optional()}).strict(),bH=Df.pick({schemaVersion:!0,run:!0,target:!0,provenance:!0,producer:!0}).extend({recipe:ef}).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)=>{sA(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),Zp.test(i.content)&&n(["files",a,"content"],"is not text");let c=Buffer.byteLength(i.content,"utf8");s+=c,c>Gu&&n(["files",a,"content"],`larger than ${Gu} bytes`)}),s>$u&&n(["files"],`recipe text over ${$u} bytes in total`)}),kH=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(tA),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 mv=A.object({schemaVersion:A.literal(1),stage:A.nativeEnum(If),event:A.nativeEnum(yf),status:A.nativeEnum(Qf).optional()}).strict().refine(t=>t.status===void 0||t.event==="finished",{path:["status"],message:"only a finished stage has a status"}),Tf=100,Ev=5e3,qu=2e3,df=100,Nf=/^[A-Za-z0-9_-]{1,64}$/,Cv=20,Iv=200,yv=100,Qv=100,Bv=200,gf="[^/\\s](?:(?:[^/\\s]| )*[^/\\s])?",wv=new RegExp(`^(?:[^/\\s]+/[^/\\s]+|[^/\\s]+/${gf}/${gf})$`),bv=500,kv=50,Rv=/[\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&&!Rv.test(e),"blank, or not text"),"setupText"),Gs={sequence:A.number().int().min(1).max(Ev),at:A.string().regex(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,6})?Z$/)},Sv=A.discriminatedUnion("kind",[A.object({...Gs,kind:A.literal("log"),phase:A.nativeEnum(Ku),text:ln(qu)}).strict(),A.object({...Gs,kind:A.literal("component"),name:ln(df),repository:ln(Bv).refine(t=>wv.test(t)||t===un,"not owner/name"),file:ln(bv).nullable(),status:A.nativeEnum(Xu),version:ln(Qv).optional()}).strict(),A.object({...Gs,kind:A.literal("reply"),to:A.string().uuid(),accepted:A.boolean(),text:ln(qu)}).strict(),A.object({...Gs,kind:A.literal("question"),id:A.string().regex(Nf),type:A.nativeEnum(Bf),text:ln(qu),component:ln(df).nullable(),choices:A.array(ln(Iv)).max(Cv),placeholder:ln(yv).optional()}).strict(),A.object({...Gs,kind:A.literal("delivered"),ids:A.array(A.string().uuid()).max(Tf)}).strict(),A.object({...Gs,kind:A.literal("credentials"),names:A.array(A.string().regex(go)).min(1).max(kv)}).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"}))}),vv=A.object({schemaVersion:A.literal(1),events:A.array(Sv).max(Tf)}).strict(),hf={id:A.string().uuid(),text:A.string(),by:A.string().nullable(),at:A.string(),replied:A.literal(!0).optional()},xv=A.discriminatedUnion("kind",[A.object({...hf,kind:A.literal("instruction"),question:A.null()}),A.object({...hf,kind:A.literal("answer"),question:A.string().regex(Nf)})]),Ff=A.string().regex(/^[A-Za-z0-9+/]{43}=$/),Dv=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()}),Tv=A.object({schemaVersion:A.literal(1),leftOut:A.array(A.string()),messages:A.array(xv).optional(),stop:A.object({key:Ff}).optional(),notes:Dv.optional()});var Nv=500*1024*1024,Uf=A.object({id:Jt,name:A.string().regex(/^[A-Za-z0-9._-]{1,200}$/),providerRunId:Jt,expiresAt:A.string().datetime()}).strict(),Fv=A.object({schemaVersion:A.literal(1),artifact:Uf,sessionId:tt,contentHash:nt,bytes:A.number().int().min(1).max(Nv)}).strict(),Uv=A.object({schemaVersion:A.literal(1),checkpoint:A.object({artifact:Uf,repository:A.object({namespace:A.string().min(1),name:A.string().min(1)}).strict(),sessionId:tt,contentHash:nt,key:Ff}).strict().nullable()}).strict(),Mv=200,iA=100,Mf=(r=>(r.Resume="resume",r.Retry="retry",r.Update="update",r))(Mf||{}),Lv=A.object({kind:A.nativeEnum(Mf),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(Xu)}).strict()).max(iA),credentials:A.array(A.string().min(1)).max(iA),answers:A.array(A.object({question:A.string(),answer:A.string().nullable()}).strict()).max(iA),instructions:A.array(A.object({text:A.string(),reply:A.string().nullable()}).strict()).max(iA),log:A.array(A.object({phase:A.nativeEnum(Ku),text:A.string()}).strict()).max(Mv)}).strict(),_v=A.object({schemaVersion:A.literal(1),context:Lv.nullable()}).strict(),Pv=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(),Ov=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=>sA(t)&&!Vu.includes(t),"not a file of a customer_deployed plan"),content:A.string()}).strict()).optional()}).strict(),Gv=A.object({schemaVersion:A.literal(1),testEnvironment:Ov.nullable().optional(),runtimePlan:A.object({version:A.number().int().positive(),contentHash:nt,files:A.array(A.object({path:A.string().refine(sA,"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"]}),Lf=A.object({schemaVersion:A.literal(1),state:A.nativeEnum(Cf),ending:A.nativeEnum(ho).nullable(),cause:A.nativeEnum(po).nullable(),deadlineAt:A.string().datetime()}).strict();function _f(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(_f,"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 Pf(t){return(0,ff.createHash)("sha256").update(ju(t),"utf8").digest("hex")}o(Pf,"manifestHash");var aA=o(t=>({provider:t.provider,providerAccountId:t.providerAccountId,providerRepositoryId:t.providerRepositoryId}),"toSourceRef");function Of(t,e){return cv.parse({schemaVersion:1,runId:t,execution:e.execution(),requester:!0,writeCheck:!0,claudeCodePin:!0})}o(Of,"handshakeRequest");function Gf(t){let e=av.parse(t);if(Pf(e.manifest)!==e.manifestHash)throw new Error("The handshake manifest hash does not match its manifest");return e}o(Gf,"parseHandshakeResponse");function $v(t){let e=o(n=>n.map(r=>({repository:aA(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:aA(n.repository),message:n.message}))}:t}o($v,"toDelivery");function Yv(t){return t.issues.map(e=>`${e.path.map((r,s)=>typeof r=="number"?`[${r}]`:s===0?r:`.${r}`).join("")}: ${e.message}`).join("; ")}o(Yv,"describeIssues");function $f(t){let{manifest:e}=t;if(ev.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=Df.safeParse({schemaVersion:1,run:{runId:e.runId,attemptNumber:t.attemptNumber,manifestHash:Pf(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:aA(r.repository),revision:r.revision}))},delivery:{generatedTests:$v(t.generatedTests)},producer:t.producer,report:t.report,...t.githubWrites?.length?{githubWrites:t.githubWrites.map(r=>({...r,repository:aA(r.repository)}))}:{}});if(!n.success)throw new Error(`The report upload is invalid: ${Yv(n.error)}`);return Hv(n.data,e,t.checkedOut),n.data}o($f,"buildReportUpload");function Hv(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(Hv,"assertEvidenceFromSnapshot");function Yf(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:Vv(t)}}o(Yf,"attemptEndFor");function Vv(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(Vv,"noReportCause");var DH={"application/pdf":"PDF","text/csv":"CSV","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"DOCX","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"XLSX"};var qv=10*1024*1024;var jv=["generate-unit","native-run"],LH=["preflight","plan","write",...jv,"report","deliver"];var lA=(r=>(r.Unit="unit",r.Integration="integration",r.E2e="e2e",r))(lA||{});var fo=He(require("fs")),mo=He(require("path"));var Wv=8;function lt(t,e,n={}){let r=e.slice(0,Wv),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 dA=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 zv=4,Hf="\xABredacted\xBB";function Vf(t){let e=new Set;for(let n of t){let r=(n??"").trim();r.length>=zv&&e.add(r)}return[...e].sort((n,r)=>r.length-n.length)}o(Vf,"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(Hf));return n}o(Hs,"redactSecrets");function Zv(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(Zv,"mapStrings");function Vs(t,e){return e.length===0?t:Zv(t,n=>Hs(n,e))}o(Vs,"redactDeep");var jH=new TextDecoder("utf-8",{fatal:!0});var rV=new Set(Object.values(tr));var sV=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 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||{}),gA=(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))(gA||{});var It=A.string().trim().min(1),Xv=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(gA),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")}),e0=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")});var t0=A.object({surface:It.describe("a surface from the list, copied verbatim"),axis:A.nativeEnum(Io)}),n0=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:t0.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:Xv.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)")}),r0=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'),s0=A.object({surface:It.describe("a surface from the list, copied verbatim"),axes:A.object(Object.fromEntries(Object.values(Io).map(t=>[t,r0])))}),Jf=A.object({schemaVersion:A.literal(1),mode:A.nativeEnum(Co),maintenance:A.array(e0),generate:A.array(n0),surfaces:A.array(s0).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 hA=["-c","core.fsmonitor=false"],i0=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"]),o0=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 xn(t=process.env,e,n="repo-command"){let r={};for(let[s,i]of Object.entries(t))n==="repo-command"&&o0.has(s)||(r[s]=i);Object.assign(r,e??{});for(let s of Object.keys(r))(i0.has(s)||s.startsWith("INPUT_"))&&delete r[s];return r}o(xn,"untrustedChildEnv");var a0=".skyramp/sut/deployed-revisions.sh",tl=(n=>(n.Running="running",n.Requested="requested",n))(tl||{});var yV=new Set(Object.values(tl));var QV=`Fix ${a0} so it prints the full commit each component runs, then set it up again.`;var nl="shared-environment";var _V=64*1024;var PV=new Set(["version_endpoint","api"]);function rl(t){return(t?.components??[]).filter(e=>!!e.repository&&!!e.expectedRevision)}o(rl,"verifiableComponents");function qf(t){return rl(t).length>0||(t?.dependencies.length??0)>0}o(qf,"hasSharedSystem");function A0(t){let e=t.inputs?.sharedEnvironment;if(!qf(e))return;let n=qt(t,`${nl}.json`);if(n)return{components:c0(e,n.components),dependencies:n.dependencies};let r="Not checked: the run ended before it checked the shared environment.";return{components:rl(e).map(s=>jf(s,r)),dependencies:e.dependencies.map(s=>({name:s.name,url:s.url,version:null,evidence:r}))}}o(A0,"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 c0(t,e){let n=new Set(e.map(s=>s.name.toLowerCase())),r=rl(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(c0,"withUnrecordedTouched");function sl(t){return(A0(t)?.components??[]).filter(e=>e.status!=="verified")}o(sl,"unverifiedComponents");function il(t){return(t?.components??[]).filter(e=>!!e.repository&&!e.expectedRevision)}o(il,"unfrozenComponents");function Lt(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: "${u0(Hs(n,e))}"`}}o(Lt,"extractJsonObject");var Wf=240;function u0(t){let e=t.replace(/\s+/g," ").trim();return e.length<=Wf?e:`\u2026${e.slice(-Wf)}`}o(u0,"snippetOf");function l0(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(l0,"issuesToMessages");function Dn(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})=>zf(a,c),e));if(i.success)return{value:i.data,errors:[]}}catch{}return{errors:l0(n.error)}}o(Dn,"validateWith");function zf(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]=zf(s[n],r):delete s[n],s}o(zf,"withoutAt");var qs=He(require("path"));function d0(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}o(d0,"getDefaultExportFromCjs");var Ze={},pA={},or={},Zf;function yo(){if(Zf)return or;Zf=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 ol,Kf;function Qo(){if(Kf)return ol;Kf=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
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"),
|
|
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"),ol=e,ol}o(Qo,"requireException");var al,Xf;function g0(){if(Xf)return al;Xf=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
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
50
|
`,h+=t.repeat("-",i.indent+f+3+C.pos)+`^
|
|
51
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"),
|
|
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,
|
|
55
|
-
`,E-1))}o(xs,"writeFoldedLines");function
|
|
56
|
-
`,w?1+B:B):
|
|
57
|
-
`);break}
|
|
52
|
+
`}return h.replace(/\n$/,"")}return o(r,"makeSnippet"),al=r,al}o(g0,"requireSnippet");var Al,em;function rt(){if(em)return Al;em=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"),Al=s,Al}o(rt,"requireType");var cl,tm;function Qm(){if(tm)return cl;tm=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"),cl=s,cl}o(Qm,"requireSchema");var ul,nm;function Bm(){if(nm)return ul;nm=1;let t=rt();return ul=new t("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(e){return e!==null?e:""},"construct")}),ul}o(Bm,"requireStr");var ll,rm;function wm(){if(rm)return ll;rm=1;let t=rt();return ll=new t("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(e){return e!==null?e:[]},"construct")}),ll}o(wm,"requireSeq");var dl,sm;function bm(){if(sm)return dl;sm=1;let t=rt();return dl=new t("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(e){return e!==null?e:{}},"construct")}),dl}o(bm,"requireMap");var gl,im;function km(){if(im)return gl;im=1;let t=Qm();return gl=new t({explicit:[Bm(),wm(),bm()]}),gl}o(km,"requireFailsafe");var hl,om;function Rm(){if(om)return hl;om=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"),hl=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"}),hl}o(Rm,"require_null");var pl,am;function Sm(){if(am)return pl;am=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"),pl=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"}),pl}o(Sm,"requireBool");var fl,Am;function vm(){if(Am)return fl;Am=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"),fl=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"]}}),fl}o(vm,"requireInt");var ml,cm;function xm(){if(cm)return ml;cm=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"),ml=new e("tag:yaml.org,2002:float",{kind:"scalar",resolve:s,construct:i,predicate:l,represent:c,defaultStyle:"lowercase"}),ml}o(xm,"requireFloat");var El,um;function Dm(){return um||(um=1,El=km().extend({implicit:[Rm(),Sm(),vm(),xm()]})),El}o(Dm,"requireJson");var Cl,lm;function Tm(){return lm||(lm=1,Cl=Dm()),Cl}o(Tm,"requireCore");var Il,dm;function Nm(){if(dm)return Il;dm=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],D=+(d[11]||0);l=(Q*60+D)*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"),Il=new t("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:r,construct:s,instanceOf:Date,represent:i}),Il}o(Nm,"requireTimestamp");var yl,gm;function Fm(){if(gm)return yl;gm=1;let t=rt();function e(n){return n==="<<"||n===null}return o(e,"resolveYamlMerge"),yl=new t("tag:yaml.org,2002:merge",{kind:"scalar",resolve:e}),yl}o(Fm,"requireMerge");var Ql,hm;function Um(){if(hm)return Ql;hm=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"),Ql=new t("tag:yaml.org,2002:binary",{kind:"scalar",resolve:n,construct:r,predicate:i,represent:s}),Ql}o(Um,"requireBinary");var Bl,pm;function Mm(){if(pm)return Bl;pm=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"),Bl=new t("tag:yaml.org,2002:omap",{kind:"sequence",resolve:r,construct:s}),Bl}o(Mm,"requireOmap");var wl,fm;function Lm(){if(fm)return wl;fm=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"),wl=new t("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:n,construct:r}),wl}o(Lm,"requirePairs");var bl,mm;function _m(){if(mm)return bl;mm=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(_m,"requireSet");var kl,Em;function Sl(){return Em||(Em=1,kl=Tm().extend({implicit:[Nm(),Fm()],explicit:[Um(),Mm(),Lm(),_m()]})),kl}o(Sl,"require_default");var Cm;function h0(){if(Cm)return pA;Cm=1;let t=yo(),e=Qo(),n=g0(),r=Sl(),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 D(u){return u===10||u===13}o(D,"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,k){E==="__proto__"?Object.defineProperty(u,E,{configurable:!0,enumerable:!0,writable:!0,value:k}):u[E]=k}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 xe(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(xe,"State");function Nt(u,E){let k={name:u.filename,buffer:u.input.slice(0,-1),position:u.position,line:u.line,column:u.position-u.lineStart};return k.snippet=n(k),new e(E,k)}o(Nt,"generateError");function $(u,E){throw Nt(u,E)}o($,"throwError");function Ss(u,E){u.onWarning&&u.onWarning.call(null,Nt(u,E))}o(Ss,"throwWarning");function wn(u,E,k){let R=u.anchorMapTransactions;if(R.length!==0){let w=R[R.length-1];s.call(w,E)||(w[E]={existed:s.call(u.anchorMap,E),value:u.anchorMap[E]})}u.anchorMap[E]=k}o(wn,"storeAnchor");function Ru(u){u.anchorMapTransactions.push(Object.create(null))}o(Ru,"beginAnchorTransaction");function Sr(u){let E=u.anchorMapTransactions.pop(),k=u.anchorMapTransactions;if(k.length===0)return;let R=k[k.length-1],w=Object.keys(E);for(let p=0,I=w.length;p<I;p+=1){let B=w[p];s.call(R,B)||(R[B]=E[B])}}o(Sr,"commitAnchorTransaction");function Su(u){let E=u.anchorMapTransactions.pop(),k=Object.keys(E);for(let R=k.length-1;R>=0;R-=1){let w=E[k[R]];w.existed?u.anchorMap[k[R]]=w.value:delete u.anchorMap[k[R]]}}o(Su,"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 Oa={YAML:o(function(E,k,R){E.version!==null&&$(E,"duplication of %YAML directive"),R.length!==1&&$(E,"YAML directive accepts exactly one argument");let w=/^([0-9]+)\.([0-9]+)$/.exec(R[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=R[0],E.checkLineBreaks=I<2,I!==1&&I!==2&&Ss(E,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(E,k,R){let w;R.length!==2&&$(E,"TAG directive accepts exactly two arguments");let p=R[0];w=R[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,k,R){if(E<k){let w=u.input.slice(E,k);if(R)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,k,R){t.isObject(k)||$(u,"cannot merge mappings; the provided source object is unacceptable"),qn(u);let w=Object.keys(k);for(let p=0,I=w.length;p<I;p+=1){let B=w[p];qn(u),s.call(E,B)||(At(E,B,k[B]),R[B]=!0)}}o(Ki,"mergeMappings");function bn(u,E,k,R,w,p,I,B,S){if(Array.isArray(w)){w=Array.prototype.slice.call(w);for(let x=0,F=w.length;x<F;x+=1)Array.isArray(w[x])&&$(u,"nested arrays are not supported inside keys"),typeof w=="object"&&Q(w[x])==="[object Object]"&&(w[x]="[object Object]")}if(typeof w=="object"&&Q(w)==="[object Object]"&&(w="[object Object]"),w=String(w),E===null&&(E={}),R==="tag:yaml.org,2002:merge")if(Array.isArray(p)){p.length>100&&$(u,"abnormal merge sequence size");for(let x=0,F=p.length;x<F;x+=1)Ki(u,E,p[x],k)}else Ki(u,E,p,k);else!u.json&&!s.call(k,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 k[w];return E}o(bn,"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,k){let R=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(D(w))for(Xi(u),w=u.input.charCodeAt(u.position),R++,u.lineIndent=0;w===32;)u.lineIndent++,w=u.input.charCodeAt(++u.position);else break}return k!==-1&&R!==0&&u.lineIndent<k&&Ss(u,"deficient indentation"),R}o(Te,"skipSeparationSpace");function on(u){let E=u.position,k=u.input.charCodeAt(E);return!!((k===45||k===46)&&k===u.input.charCodeAt(E+1)&&k===u.input.charCodeAt(E+2)&&(E+=3,k=u.input.charCodeAt(E),k===0||P(k)))}o(on,"testDocumentSeparator");function xs(u,E){E===1?u.result+=" ":E>1&&(u.result+=t.repeat(`
|
|
55
|
+
`,E-1))}o(xs,"writeFoldedLines");function Ga(u,E,k){let R,w,p,I,B,S,x=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)||k&&ae(M))return!1}for(u.kind="scalar",u.result="",R=w=u.position,p=!1;b!==0;){if(b===58){let M=u.input.charCodeAt(u.position+1);if(P(M)||k&&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)||k&&ae(b))break;if(D(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,R,w,!1),xs(u,u.line-I),R=w=u.position,p=!1),G(b)||(w=u.position+1),b=u.input.charCodeAt(++u.position)}return Ct(u,R,w,!1),u.result?!0:(u.kind=x,u.result=F,!1)}o(Ga,"readPlainScalar");function eo(u,E){let k,R,w=u.input.charCodeAt(u.position);if(w!==39)return!1;for(u.kind="scalar",u.result="",u.position++,k=R=u.position;(w=u.input.charCodeAt(u.position))!==0;)if(w===39)if(Ct(u,k,u.position,!0),w=u.input.charCodeAt(++u.position),w===39)k=u.position,u.position++,R=u.position;else return!0;else D(w)?(Ct(u,k,R,!0),xs(u,Te(u,!1,E)),k=R=u.position):u.position===u.lineStart&&on(u)?$(u,"unexpected end of the document within a single quoted scalar"):(u.position++,G(w)||(R=u.position));$(u,"unexpected end of the stream within a single quoted scalar")}o(eo,"readSingleQuotedScalar");function $a(u,E){let k,R,w,p=u.input.charCodeAt(u.position);if(p!==34)return!1;for(u.kind="scalar",u.result="",u.position++,k=R=u.position;(p=u.input.charCodeAt(u.position))!==0;){if(p===34)return Ct(u,k,u.position,!0),u.position++,!0;if(p===92){if(Ct(u,k,u.position,!0),p=u.input.charCodeAt(++u.position),D(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");k=R=u.position}else D(p)?(Ct(u,k,R,!0),xs(u,Te(u,!1,E)),k=R=u.position):u.position===u.lineStart&&on(u)?$(u,"unexpected end of the document within a double quoted scalar"):(u.position++,G(p)||(R=u.position))}$(u,"unexpected end of the stream within a double quoted scalar")}o($a,"readDoubleQuotedScalar");function Ya(u,E){let k=!0,R,w,p,I=u.tag,B,S=u.anchor,x,F,b,M,Y=Object.create(null),z,K,se,ce=u.input.charCodeAt(u.position);if(ce===91)x=93,M=!1,B=[];else if(ce===123)x=125,M=!0,B={};else return!1;for(u.anchor!==null&&wn(u,u.anchor,B),ce=u.input.charCodeAt(++u.position);ce!==0;){if(Te(u,!0,E),ce=u.input.charCodeAt(u.position),ce===x)return u.position++,u.tag=I,u.anchor=S,u.kind=M?"mapping":"sequence",u.result=B,!0;if(k?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))}R=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===R)&&ce===58&&(F=!0,ce=u.input.charCodeAt(++u.position),Te(u,!0,E),Wn(u,E,i,!1,!0),se=u.result),M?bn(u,B,Y,K,z,se,R,w,p):F?B.push(bn(u,null,Y,K,z,se,R,w,p)):B.push(z),Te(u,!0,E),ce=u.input.charCodeAt(u.position),ce===44?(k=!0,ce=u.input.charCodeAt(++u.position)):k=!1}$(u,"unexpected end of the stream within a flow collection")}o(Ya,"readFlowCollection");function jn(u,E){let k,R=d,w=!1,p=!1,I=E,B=0,S=!1,x,F=u.input.charCodeAt(u.position);if(F===124)k=!1;else if(F===62)k=!0;else return!1;for(u.kind="scalar",u.result="";F!==0;)if(F=u.input.charCodeAt(++u.position),F===43||F===45)d===R?R=F===43?h:g:$(u,"repeat of a chomping mode identifier");else if((x=De(F))>=0)x===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+x-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(!D(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),D(F)){B++;continue}if(!p&&I===0&&$(u,"missing indentation for block scalar"),u.lineIndent<I){R===h?u.result+=t.repeat(`
|
|
56
|
+
`,w?1+B:B):R===d&&w&&(u.result+=`
|
|
57
|
+
`);break}k?G(F)?(S=!0,u.result+=t.repeat(`
|
|
58
58
|
`,w?1+B:B)):S?(S=!1,u.result+=t.repeat(`
|
|
59
59
|
`,B+1)):B===0?w&&(u.result+=" "):u.result+=t.repeat(`
|
|
60
60
|
`,B):u.result+=t.repeat(`
|
|
61
|
-
`,w?1+B:B),w=!0,p=!0,B=0;let b=u.position;for(;!
|
|
62
|
-
`),u.charCodeAt(0)===65279&&(u=u.slice(1)));let
|
|
61
|
+
`,w?1+B:B),w=!0,p=!0,B=0;let b=u.position;for(;!D(F)&&F!==0;)F=u.input.charCodeAt(++u.position);Ct(u,b,u.position,!1)}return!0}o(jn,"readBlockScalar");function Ha(u,E){let k=u.tag,R=u.anchor,w=[],p=!1;if(u.firstTabInLine!==-1)return!1;u.anchor!==null&&wn(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=k,u.anchor=R,u.kind="sequence",u.result=w,!0):!1}o(Ha,"readBlockSequence");function Va(u,E,k){let R,w,p,I,B=u.tag,S=u.anchor,x={},F=Object.create(null),b=null,M=null,Y=null,z=!1,K=!1;if(u.firstTabInLine!==-1)return!1;u.anchor!==null&&wn(u,u.anchor,x);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&&(bn(u,x,F,b,M,null,w,p,I),b=M=Y=null),K=!0,z=!0,R=!0):z?(z=!1,R=!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,k,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&&(bn(u,x,F,b,M,null,w,p,I),b=M=Y=null),K=!0,z=!1,R=!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,R)&&(z?M=u.result:Y=u.result),z||(bn(u,x,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&&bn(u,x,F,b,M,null,w,p,I),K&&(u.tag=B,u.anchor=S,u.kind="mapping",u.result=x),K}o(Va,"readBlockMapping");function Ja(u){let E=!1,k=!1,R,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?(k=!0,R="!!",p=u.input.charCodeAt(++u.position)):R="!";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&&(k?$(u,"tag suffix cannot contain exclamation marks"):(R=u.input.slice(I-1,u.position+1),y.test(R)||$(u,"named tag handle cannot contain such characters"),k=!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,R)?u.tag=u.tagMap[R]+w:R==="!"?u.tag="!"+w:R==="!!"?u.tag="tag:yaml.org,2002:"+w:$(u,'undeclared tag handle "'+R+'"'),!0}o(Ja,"readTagProperty");function qa(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 k=u.position;for(;E!==0&&!P(E)&&!ae(E);)E=u.input.charCodeAt(++u.position);return u.position===k&&$(u,"name of an anchor node must contain at least one character"),u.anchor=u.input.slice(k,u.position),!0}o(qa,"readAnchorProperty");function vu(u){let E=u.input.charCodeAt(u.position);if(E!==42)return!1;E=u.input.charCodeAt(++u.position);let k=u.position;for(;E!==0&&!P(E)&&!ae(E);)E=u.input.charCodeAt(++u.position);u.position===k&&$(u,"name of an alias node must contain at least one character");let R=u.input.slice(k,u.position);return s.call(u.anchorMap,R)||$(u,'unidentified alias "'+R+'"'),u.result=u.anchorMap[R],Te(u,!0,-1),!0}o(vu,"readAlias");function ja(u,E,k,R){let w=Zi(u);return Ru(u),vs(u,E),u.tag=null,u.anchor=null,u.kind=null,u.result=null,Va(u,k,R)&&u.kind==="mapping"?(Sr(u),!0):(Su(u),vs(u,w),!1)}o(ja,"tryReadBlockMappingFromProperty");function Wn(u,E,k,R,w){let p,I,B=1,S=!1,x=!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===k||c===k;if(R&&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)||!Ja(u)&&!qa(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===k)if(i===k||a===k?M=E:M=E+1,Y=u.position-u.lineStart,B===1)if(I&&(Ha(u,Y)||Va(u,Y,M))||Ya(u,M))x=!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)||$a(u,M)?x=!0:vu(u)?(x=!0,(u.tag!==null||u.anchor!==null)&&$(u,"alias node should not have any properties")):Ga(u,M,i===k)&&(x=!0,u.tag===null&&(u.tag="?")),u.anchor!==null&&wn(u,u.anchor,u.result)}else B===0&&(x=I&&Ha(u,Y));if(u.tag===null)u.anchor!==null&&wn(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&&wn(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&&wn(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||x}o(Wn,"composeNode");function xu(u){let E=u.position,k=!1,R;for(u.version=null,u.checkLineBreaks=u.legacy,u.tagMap=Object.create(null),u.anchorMap=Object.create(null);(R=u.input.charCodeAt(u.position))!==0&&(Te(u,!0,-1),R=u.input.charCodeAt(u.position),!(u.lineIndent>0||R!==37));){k=!0,R=u.input.charCodeAt(++u.position);let w=u.position;for(;R!==0&&!P(R);)R=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");R!==0;){for(;G(R);)R=u.input.charCodeAt(++u.position);if(R===35){do R=u.input.charCodeAt(++u.position);while(R!==0&&!D(R));break}if(D(R))break;for(w=u.position;R!==0&&!P(R);)R=u.input.charCodeAt(++u.position);I.push(u.input.slice(w,u.position))}R!==0&&Xi(u),s.call(Oa,p)?Oa[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)):k&&$(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(xu,"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 k=new xe(u,E),R=u.indexOf("\0");for(R!==-1&&(k.position=R,$(k,"null byte is not allowed in input")),k.input+="\0";k.input.charCodeAt(k.position)===32;)k.lineIndent+=1,k.position+=1;for(;k.position<k.length-1;)xu(k);return k.documents}o(to,"loadDocuments");function Du(u,E,k){E!==null&&typeof E=="object"&&typeof k>"u"&&(k=E,E=null);let R=to(u,k);if(typeof E!="function")return R;for(let w=0,p=R.length;w<p;w+=1)E(R[w])}o(Du,"loadAll2");function Tu(u,E){let k=to(u,E);if(k.length!==0){if(k.length===1)return k[0];throw new e("expected a single document in the stream, but found more")}}return o(Tu,"load2"),pA.loadAll=Du,pA.load=Tu,pA}o(h0,"requireLoader");var Rl={},Im;function p0(){if(Im)return Rl;Im=1;let t=yo(),e=Qo(),n=Sl(),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,D=45,G=58,P=61,ae=62,Ee=63,Ce=64,De=91,et=93,sn=96,At=123,Ge=124,Tt=125,xe={};xe[0]="\\0",xe[7]="\\a",xe[8]="\\b",xe[9]="\\t",xe[10]="\\n",xe[11]="\\v",xe[12]="\\f",xe[13]="\\r",xe[27]="\\e",xe[34]='\\"',xe[92]="\\\\",xe[133]="\\N",xe[160]="\\_",xe[8232]="\\L",xe[8233]="\\P";let Nt=["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 x=0,F=S.length;x<F;x+=1){let b=S[x],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 wn(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(wn,"encodeHex");let Ru=1,Sr=2;function Su(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:Ru,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(Su,"State");function Zi(p,I){let B=t.repeat(" ",I),S=0,x="",F=p.length;for(;S<F;){let b,M=p.indexOf(`
|
|
63
63
|
`,S);M===-1?(b=p.slice(S),S=F):(b=p.slice(S,M+1),S=M+1),b.length&&b!==`
|
|
64
|
-
`&&(
|
|
65
|
-
`+t.repeat(" ",p.indent*I)}o(vs,"generateNextLine");function
|
|
64
|
+
`&&(x+=B),x+=b}return x}o(Zi,"indentString");function vs(p,I){return`
|
|
65
|
+
`+t.repeat(" ",p.indent*I)}o(vs,"generateNextLine");function Oa(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(Oa,"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 bn(p,I,B){let S=Ki(p),x=S&&!Ct(p);return(B?S:S&&p!==Q&&p!==De&&p!==et&&p!==At&&p!==Tt)&&p!==f&&!(I===G&&!x)||Ki(I)&&!Ct(I)&&p===f||I===G&&x}o(bn,"isPlainSafe");function Xi(p){return qn(p)&&p!==i&&!Ct(p)&&p!==D&&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 Ga=1,eo=2,$a=3,Ya=4,jn=5;function Ha(p,I,B,S,x,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&&bn(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&&bn(z,K,M),K=z}ce=ce||zn&&Y-no-1>S&&p[no+1]!==" "}return!se&&!ce?ro&&!b&&!x(p)?Ga:F===Sr?jn:eo:B>9&&xs(p)?jn:b?F===Sr?jn:eo:ce?Ya:$a}o(Ha,"chooseScalarStyle");function Va(p,I,B,S,x){p.dump=(function(){if(I.length===0)return p.quotingType===Sr?'""':"''";if(!p.noCompatMode&&(Nt.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 Oa(p,z)}switch(o(Y,"testAmbiguity"),Ha(I,M,p.indent,b,Y,p.quotingType,p.forceQuotes&&!S,x)){case Ga:return I;case eo:return"'"+I.replace(/'/g,"''")+"'";case $a:return"|"+Ja(I,p.indent)+qa(Zi(I,F));case Ya:return">"+Ja(I,p.indent)+qa(Zi(vu(I,b),F));case jn:return'"'+Wn(I)+'"';default:throw new e("impossible error: invalid scalar style")}})()}o(Va,"writeScalar");function Ja(p,I){let B=xs(p)?String(I):"",S=p[p.length-1]===`
|
|
66
66
|
`,F=S&&(p[p.length-2]===`
|
|
67
67
|
`||p===`
|
|
68
68
|
`)?"+":S?"":"-";return B+F+`
|
|
69
|
-
`}o(
|
|
70
|
-
`?p.slice(0,-1):p}o(
|
|
71
|
-
`);return M=M!==-1?M:p.length,B.lastIndex=M,
|
|
72
|
-
`||p[0]===" ",F,b;for(;b=B.exec(p);){let M=b[1],Y=b[2];F=Y[0]===" ",S+=M+(!
|
|
73
|
-
`:"")+
|
|
74
|
-
`+p.slice(
|
|
75
|
-
`,p.length-
|
|
76
|
-
`+p.slice(b+1):Y+=p.slice(
|
|
77
|
-
`:""}return o(w,"dump2"),
|
|
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(
|
|
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(
|
|
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()}),BW=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")}),wW=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.describe("the manifest file's path relative to its checkout (e.g. package.json, pom.xml or pyproject.toml), and nothing else; name another checkout in repository"),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 bW={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 zW=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 i9=sr("generate-unit-schema",(t,e)=>_x(e));var QA=String.raw`(?:node:)?(?:http|https|http2|net|tls|dgram)`,o9=[[/\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`,Q9=[new RegExp(`${pE}[^.;\\n]{0,100}(?:${fE})`,"i"),new RegExp(`(?:${fE})[^.;\\n]{0,100}${pE}`,"i")];var B9=new Set(["targeted_unit","existing_evidence_sufficient"]);var gZ=new Set(["existing_evidence","unaffected","existing_unit","new_unit","runtime"]),hZ={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 pZ=sr("triage-schema",(t,e)=>$x(e));var fZ=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)}
|
|
69
|
+
`}o(Ja,"blockHeader");function qa(p){return p[p.length-1]===`
|
|
70
|
+
`?p.slice(0,-1):p}o(qa,"dropEndingNewline");function vu(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)})(),x=p[0]===`
|
|
72
|
+
`||p[0]===" ",F,b;for(;b=B.exec(p);){let M=b[1],Y=b[2];F=Y[0]===" ",S+=M+(!x&&!F&&Y!==""?`
|
|
73
|
+
`:"")+ja(Y,I),x=F}return S}o(vu,"foldString");function ja(p,I){if(p===""||p[0]===" ")return p;let B=/ [^ ]/g,S,x=0,F,b=0,M=0,Y="";for(;S=B.exec(p);)M=S.index,M-x>I&&(F=b>x?b:M,Y+=`
|
|
74
|
+
`+p.slice(x,F),x=F+1),b=M;return Y+=`
|
|
75
|
+
`,p.length-x>I&&b>x?Y+=p.slice(x,b)+`
|
|
76
|
+
`+p.slice(b+1):Y+=p.slice(x),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 x=xe[B];!x&&qn(B)?(I+=p[S],B>=65536&&(I+=p[S+1])):I+=x||wn(B)}return I}o(Wn,"escapeString");function xu(p,I,B){let S="",x=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=x,p.dump="["+S+"]"}o(xu,"writeFlowSequence");function to(p,I,B,S){let x="",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||x!=="")&&(x+=vs(p,I)),p.dump&&c===p.dump.charCodeAt(0)?x+="-":x+="- ",x+=p.dump)}p.tag=F,p.dump=x||"[]"}o(to,"writeBlockSequence");function Du(p,I,B){let S="",x=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=x,p.dump="{"+S+"}"}o(Du,"writeFlowMapping");function Tu(p,I,B,S){let x="",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||x!=="")&&(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,x+=z)}p.tag=F,p.dump=x||"{}"}o(Tu,"writeBlockMapping");function u(p,I,B){let S=B?p.explicitTypes:p.implicitTypes;for(let x=0,F=S.length;x<F;x+=1){let b=S[x];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,x,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)&&(x=!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?(Tu(p,I,p.dump,x),se&&(p.dump="&ref_"+K+p.dump)):(Du(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,x):to(p,I,p.dump,x),se&&(p.dump="&ref_"+K+p.dump)):(xu(p,I,p.dump),se&&(p.dump="&ref_"+K+" "+p.dump));else if(M==="[object String]")p.tag!=="?"&&Va(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 k(p,I){let B=[],S=[];R(p,B,S);let x=S.length;for(let F=0;F<x;F+=1)I.duplicates.push(B[S[F]]);I.usedDuplicates=new Array(x)}o(k,"getDuplicateReferences");function R(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 x=0,F=p.length;x<F;x+=1)R(p[x],I,B);else{let x=Object.keys(p);for(let F=0,b=x.length;F<b;F+=1)R(p[x[F]],I,B)}}}o(R,"inspectNode");function w(p,I){I=I||{};let B=new Su(I);B.noRefs||k(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"),Rl.dump=w,Rl}o(p0,"requireDumper");var ym;function f0(){if(ym)return Ze;ym=1;let t=h0(),e=p0();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=Qm(),Ze.FAILSAFE_SCHEMA=km(),Ze.JSON_SCHEMA=Dm(),Ze.CORE_SCHEMA=Tm(),Ze.DEFAULT_SCHEMA=Sl(),Ze.load=t.load,Ze.loadAll=t.loadAll,Ze.dump=e.dump,Ze.YAMLException=Qo(),Ze.types={binary:Um(),float:xm(),map:bm(),null:Rm(),pairs:Lm(),set:_m(),timestamp:Nm(),bool:Sm(),int:vm(),merge:Fm(),omap:Mm(),seq:wm(),str:Bm()},Ze.safeLoad=n("safeLoad","load"),Ze.safeLoadAll=n("safeLoadAll","loadAll"),Ze.safeDump=n("safeDump","dump"),Ze}o(f0,"requireJsYaml");var m0=f0(),E0=d0(m0),{Type:nJ,Schema:rJ,FAILSAFE_SCHEMA:sJ,JSON_SCHEMA:iJ,CORE_SCHEMA:oJ,DEFAULT_SCHEMA:aJ,load:vl,loadAll:C0,dump:AJ,YAMLException:cJ,types:uJ,safeLoad:lJ,safeLoadAll:dJ,safeDump:gJ}=E0;var pJ=qs.join(".skyramp","workspace.yml");var I0={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 fJ=new Set(Object.values(I0));function Tl(t){return Gm(t)&&sl(t).length===0&&il(t.inputs?.sharedEnvironment).length===0}o(Tl,"sutIsHealthy");function Gm(t){let e=S0(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(Gm,"sutCameUp");function S0(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(S0,"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||{}),_t=A.string().trim().min(1),$m=A.object({case:_t.describe("a covers id \u2014 the recommend case this test realizes"),status:A.nativeEnum(jt)}),Ym=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($m).optional().describe("ONE ENTRY PER CASE the file covers; must agree with exit (0 \u2192 no fail; non-zero \u2192 at least one)")}),Hm=A.object({from:A.string().optional().describe("staged path \u2014 required for placements"),file:_t.describe("final path relative to its repository, inside that checkout, with a source-file extension"),repository:_t.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:_t.optional().describe("why a planned delete/regenerate was declined and the file kept"),isolatedRun:_t.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:Ym,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:[]}),Vm=(n=>(n.Junit="junit",n.Converter="converter",n))(Vm||{}),v0=_t.optional().describe("the items[].file this test is in \u2014 needed only when two of this suite's files cover the same case id"),x0=A.object({results:_t.describe("the JUnit XML file this run wrote, a plain file name inside $SKYRAMP_RESULTS_DIR (e.g. backend.xml)"),source:A.nativeEnum(Vm),run:_t.describe("the command you ran that wrote it, exactly as you ran it (with any converter)"),files:A.array(_t).min(1).describe("the items[].file paths this run covered"),cases:A.array(A.object({test:_t.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:_t.describe("the covers id it realizes"),file:v0})).describe("map each reported test name to the case it covers")}),D0=A.object({suites:A.array(x0).min(1)}),Nl=A.object({schemaVersion:A.literal(1),items:A.array(Hm),runnerResults:D0.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:_t.describe("one paragraph")});var sq=10*6e4;var zr=He(require("fs"));function qm(t){let e=[];for(let n of L0(t)){let r=n;r?.type==="tool_use"&&typeof r.name=="string"&&e.push(r.name)}return e}o(qm,"toolUsesFromTrace");function jm(t){return qm(t).some(e=>/^mcp__skyramp__skyramp_(contract|integration)_test_generation$/.test(e))}o(jm,"usedSkyrampCodegen");function Wm(t){return qm(t).some(e=>e==="mcp__skyramp__skyramp_ui_test_generation")}o(Wm,"usedSkyrampUiCodegen");function M0(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(M0,"mcpServerStatuses");function zm(t){let e=M0(t).skyramp;return e===void 0||e==="connected"}o(zm,"skyrampConnected");function L0(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(L0,"contentBlocks");var _0=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||{}),Zm=(r=>(r.Spec="spec",r.PrDescription="pr-description",r.Inferred="inferred",r))(Zm||{}),Km=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(_0).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(Zm).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")}),mA=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 Ml=(s=>(s.RestApi="rest-api",s.Frontend="frontend",s.FullStack="full-stack",s.Other="other",s))(Ml||{}),wo=(s=>(s.Critical="critical",s.High="high",s.Medium="medium",s.Low="low",s))(wo||{}),EA=(r=>(r.Suspected="suspected",r.Latent="latent",r.Refuted="refuted",r))(EA||{}),eE=(r=>(r.Skyramp="skyramp",r.External="external",r.Unknown="unknown",r))(eE||{}),tE=(s=>(s.Cascade="cascade",s.Restrict="restrict",s.Orphan="orphan",s.Unknown="unknown",s))(tE||{}),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"),Xm=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'),Ul=A.object({method:Ie,path:Ie,service:A.string().optional(),evidence:zs,repository:bo}),P0=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.")}),O0=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)")}),G0=A.object({id:Ie.describe("short-slug"),file:Ie,line:A.number().optional(),claim:Xm("shorten it to the one sentence that states the defect, and move the supporting detail into `evidence`"),severity:A.nativeEnum(wo),evidence:Xm("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(EA),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")}),$0=A.object({name:Ie,language:A.string().optional(),framework:A.string().optional(),evidence:zs,repository:bo}),Y0=A.object({dir:Ie,framework:A.string().optional(),kind:A.nativeEnum(eE),evidence:zs,repository:bo}),H0=A.object({from:Ie,to:Ie,onDelete:A.nativeEnum(tE),evidence:zs}),V0=A.object({entity:Ie,field:Ie,values:A.array(A.string()),evidence:zs}),J0=A.object({entities:A.array(A.object({name:Ie,evidence:zs})),references:A.array(H0).describe("INBOUND references \u2014 what still points at an entity when it is deleted"),stateFields:A.array(V0)}),yq=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(Ml),primaryLanguage:Ie,languages:A.array(A.string()),frameworks:A.array(A.string())}),services:A.array($0),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(Ul),modified:A.array(Ul),removed:A.array(Ul)}),existingTests:A.object({locations:A.array(Y0)}),entityMap:J0,requirements:A.array(P0).describe("from a spec (attached or linked) and/or the PR description; empty when neither states a testable obligation"),behaviors:A.array(O0),findings:A.array(G0),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 CA=(n=>(n.Skyramp="skyramp",n.Llm="llm",n))(CA||{}),Tn=A.string().trim().min(1),q0=A.object({case:Tn.describe("recommend id this assertion enforces"),evidence:Tn.describe("the exact assertion line from the file that checks that case's observable")}),j0=A.object({kind:A.nativeEnum(nA),target:Tn.describe("the dependency, endpoint or data it affects"),mechanism:A.nativeEnum(rA).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:Tn.describe("what it sets up"),worker:Tn.optional().describe("skyramp_mocker: host:port of the worker the test applies the mock to (default localhost:35142)"),cleanup:Tn.optional().describe("seed: a command, without a shell, that removes the data when the test does not")}),W0=A.object({file:Tn.describe("staged path under .skyramp/staged/"),source:A.nativeEnum(CA),language:Tn,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(q0).min(1,"must be a non-empty array").describe("one per case covered, citing the real line"),context:A.array(j0).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")}),Ll=A.object({schemaVersion:A.literal(1),tests:A.array(W0),deferredUi:A.array(A.string()).describe("recommend ui ids left for the UI stage (generate) \u2014 [] for generate-ui"),summary:Tn.describe("one paragraph")});var Zr=A.string().trim().min(1),ko=72,z0=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.")}),Nq=A.object({schemaVersion:A.literal(1),lint:A.array(z0).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<=ko,{message:`subject line must be <= ${ko} chars`})}),pr:A.object({title:Zr.max(ko,`must be <= ${ko} 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")),aE=require("child_process");var Nn="{junit}",rE=(r=>(r.Junit="junit",r.Trx="trx",r.GoTestJson="go-test-json",r))(rE||{}),sE=(e=>(e.Minitest="minitest",e))(sE||{}),nE=A.string().trim().min(1),Zs=A.object({cwd:nE.describe('repo-relative directory the command starts in ("." for the root)'),argv:A.array(nE).min(1).describe(`the command as separate arguments, run without a shell; for a junit or trx report one argument holds ${Nn}, 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(rE).describe(`junit (JUnit XML to ${Nn}), trx (to ${Nn}), or go-test-json (go test -json on the command's output)`),reporter:A.nativeEnum(sE).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 Lq=`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 ${Nn}), trx (a TRX file to ${Nn}, 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 ${Nn}: 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 ${Nn} 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||{}),Pl=(n=>(n.Repository="repository",n.Testbot="testbot",n))(Pl||{}),Ol=(r=>(r.Identified="identified",r.Passed="passed",r.Failed="failed",r))(Ol||{}),dt=A.string().trim().min(1),Z0=A.string().regex(/^[a-z0-9][a-z0-9-]*$/,"must be a short lowercase slug").describe("short-slug");var K0=A.object({id:Z0,source:A.nativeEnum(Pl),kind:A.nativeEnum(tr),outcome:A.nativeEnum(Ol),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")}),X0=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')}),ex=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")}),tx=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")}),nx=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)")}),Ro=A.object({schemaVersion:A.literal(1),decision:A.nativeEnum(Kr),evidence:A.array(K0).describe("evidence this session found or produced; CI results are the ci-<n> items and are not restated here"),plan:A.array(X0).describe("how each changed behavior's evidence is obtained"),gaps:A.array(ex),outOfScope:A.array(nx).optional().describe("behaviors analyze found that this change neither changes nor states"),blocked:tx.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 yA(t){let e=qt(t,"recommend.json");if(!e||!Array.isArray(e.generate)||!Array.isArray(e.maintenance))return;let n=e;return{...n,maintenance:n.maintenance.map(({repository:r,...s})=>({...s,test:s.test.trim().replace(/^\.\//,""),...r?.trim()?{repository:r.trim()}:{}}))}}o(yA,"readRecommend");function ox(t){return Dn(Ll,t).errors}o(ox,"validateGenerateOutput");function ax(t,e=[]){let{value:n,error:r}=Lt(t,e);if(r)return{errors:[r]};let s=ox(n);return s.length>0?{errors:s}:{generate:n,errors:[]}}o(ax,"parseGenerateText");function QA(t,e=[]){return ax(t.stdout,e)}o(QA,"parseGenerateFromSession");function Ax(t){return t.generate.filter(e=>e.type!=="ui").map(e=>e.id)}o(Ax,"backendCases");function AE(t){return t.generate.filter(e=>e.type==="ui").map(e=>e.id)}o(AE,"uiCases");var BA={backend:{stage:"generate",cases:Ax,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:AE,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:Wm,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."}},Cj=sr("generate-schema",(t,e)=>QA(e,t.secretValues));function cx(t){let e=BA[t];return{name:`${e.stage}-coverage`,verify(n,r){let{generate:s,errors:i}=QA(r,n.secretValues);if(!s)return lt(this.name,i);let a=yA(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(AE(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(cx,"generateCoverageGateFor");function ux(t){let e=BA[t];return{name:`${e.stage}-intent`,verify(n,r){let{generate:s,errors:i}=QA(r,n.secretValues);if(!s)return lt(this.name,i);let a=yA(n);if(!a)return lt(this.name,[e.noRecommendIntent]);let{asserted:c,errors:l,badFiles:d}=mx(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(ux,"generateIntentGateFor");function lx(t){let e=BA[t];return n=>{if(!n.inputs.skyrampMcp?.command||t==="backend"&&!Tl(n))return;let r=Ks.join(n.outputsDir,`${e.stage}-stream.ndjson`);if(!(!Ar.existsSync(r)||e.usedCodegen(r)))return zm(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(lx,"codegenRetryHintFor");var Ij=cx("backend"),yj=ux("backend"),Qj=lx("backend");var oE=o(t=>t.replace(/\s+/g,""),"squeeze");var Gl={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"]])Gl[t]=Gl[e];function dx(t,e){if(t.includes(Eo(e))||oE(t).includes(oE(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:fx(t,e)}o(dx,"evidenceFound");var gx=/\bassert\w*\b|\bexpect\s*\(|\.should\b|\brequire\s*\(/i,hx=12,px=/,\s*\(\s*#|,\s*f?["'`]|\s+#\s|\s+\/\/|\s*\((?:line|lines|at line)\b|\s*,\s*$/i;function fx(t,e){let n=e.split(/\s*;\s*|\s*\.\.\.\s*|\r?\n/),r=0;for(let s of n){let i=gx.exec(s);if(!i)continue;let a=s.slice(i.index),c=px.exec(a);if(c&&(a=a.slice(0,c.index)),a=Eo(a).replace(/[,\s]+$/,""),a.length<hx||!t.includes(a))return!1;r++}return r>0}o(fx,"annotatedAssertionFound");function mx(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(!dx(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(mx,"verifiedAssertions");var Ex=/\.(spec|test)\.[cm]?[jt]sx?$/i;function cE(t){let e;try{e=(0,aE.execFileSync)("git",[...hA,"status","--porcelain","--untracked-files=all"],{env:xn(),cwd:t,encoding:"utf-8",stdio:["ignore","pipe","ignore"]})}catch{return}let n=o(s=>/_scaffold/i.test(s)||dA.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(cE,"testLitter");function Cx(t){let e=BA[t],n=t==="ui";return{name:`${e.stage}-no-litter`,verify(r){let s=cE(r.inputs.repositoryPath);if(s===void 0)return{name:this.name,passed:!0};let i=s.filter(a=>Ex.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(Cx,"noLitterGateFor");var Bj=Cx("backend");var So=He(require("fs")),Xr=He(require("path"));function dE(t){return Dn(Nl,t).errors}o(dE,"validateAdaptOutput");function Qx(t,e=[]){let{value:n,error:r}=Lt(t,e);if(r)return{errors:[r]};let s=dE(n);return s.length>0?{errors:s}:{adapt:n,errors:[]}}o(Qx,"parseAdaptText");var Bx="adapt-scratch",uE=`${Bx}/adapt-result.json`;function gE(t,e){let n=Xr.join(t.outputsDir,uE),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:[`${uE} contains a secret value (token / credential) \u2014 never write it anywhere`]};let s=Qx(e.stdout,t.secretValues);if(s.adapt)return s;let i=r!==void 0?Ys(n):void 0;return i!==void 0&&dE(i).length===0?{adapt:i,errors:[]}:s}o(gE,"parseAdaptFromSession");var qj=sr("adapt-schema",gE);var rW=2*1024*1024;var re=A.string().trim().min(1),bx=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"),kx=A.preprocess(bx,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)")})),Rx=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(kx)}),Sx=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)")}),vx=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")}),xx=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")}),Dx=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")}),Tx=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:Yu.optional()}),UW=A.object({schemaVersion:A.literal(1),requirements:A.array(Rx),findings:A.array(Sx),cases:A.array(xx).describe("a second test for a clause, and one case per finding that fails on this branch"),questions:A.array(vx).optional().describe("behaviours the change leaves unsettled; no case asserts any of them"),maintenance:A.array(Dx),journeys:A.array(Km).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:Ro.optional().describe("the validation triage decision, made before the app is started; its behaviorIds are clause ids"),app:Tx.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 hE=(n=>(n.Backend="backend",n.Ui="ui",n))(hE||{}),$l=(s=>(s.Added="added",s.Updated="updated",s.Deleted="deleted",s.Unchanged="unchanged",s))($l||{}),Nx=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(hE),change:A.nativeEnum($l).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 ${Nn}, or go-test-json); Testbot runs it before write ends and re-runs the tests with it`)}),Fx=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")}),MW=A.object({schemaVersion:A.literal(1),tests:A.array(Nx),notWritten:A.array(A.object({case:re,reason:re})).describe("every plan case no test covers, and why"),journeys:A.array(mA).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.describe("the manifest file's path relative to its checkout (e.g. package.json, pom.xml or pyproject.toml), and nothing else; name another checkout in repository"),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(Fx).describe("every defect the tests found"),nextSteps:A.array(A.string())})});var LW={added:"place",updated:"update",deleted:"delete",unchanged:"verify"};var fE=(r=>(r.Requirement="requirement",r.PrDescription="pr_description",r.Code="code",r))(fE||{}),Je=A.string().trim().min(1),Ux=A.object({expectation:Je.max(300).describe("the behavior this assertion pins, in words"),source:A.nativeEnum(fE),expected:Je.max(200).describe("the exact value or outcome asserted, as the test asserts it")}),Mx=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(Ux).min(1)}),Yl=(n=>(n.Updated="updated",n.Deleted="deleted",n))(Yl||{}),pE=300,Lx=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(Yl),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,pE):t,Je.max(pE)).describe("what the change deliberately altered that made the test wrong")}),Hl=A.object({schemaVersion:A.literal(1),tests:A.array(Mx),maintained:A.array(Lx).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(mA).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 Az=5*6e4;function Gx(t){let{value:e,error:n}=Lt(t);if(n)return{errors:[n]};let{value:r,errors:s}=Dn(Hl,e);return s.length?{errors:s}:{output:r,errors:[]}}o(Gx,"parseGenerateUnitText");function $x(t){return Gx(t.stdout)}o($x,"parseGenerateUnitFromSession");var m9=sr("generate-unit-schema",(t,e)=>$x(e));var wA=String.raw`(?:node:)?(?:http|https|http2|net|tls|dgram)`,E9=[[/\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+["']${wA}["']|\bimport\s+["']${wA}["']|require\(\s*["']${wA}["']\s*\)|\bimport\(\s*["']${wA}["']\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 mE=String.raw`\b(?:real browser|browser|javascript|js|htmx|client-side)\b`,EE=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`,F9=[new RegExp(`${mE}[^.;\\n]{0,100}(?:${EE})`,"i"),new RegExp(`(?:${EE})[^.;\\n]{0,100}${mE}`,"i")];var U9=new Set(["targeted_unit","existing_evidence_sufficient"]);var bZ=new Set(["existing_evidence","unaffected","existing_unit","new_unit","runtime"]),kZ={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 Vx(t){let{value:e,error:n}=Lt(t);if(n)return{errors:[n]};let{value:r,errors:s}=Dn(Ro,e);return s.length?{errors:s}:{triage:r,errors:[]}}o(Vx,"parseTriageText");function Jx(t){return Vx(t.stdout)}o(Jx,"parseTriageFromSession");var RZ=sr("triage-schema",(t,e)=>Jx(e));var SZ=new Set(["deploy","recommend","generate","generate-ui","adapt","generate-unit","native-run","finalize","deliver"]);var CE=He(require("fs"));var qx="SKYRAMP_AZURE_SUPERVISED",jx=3;function Wx(t,e=process.env){e[qx]==="1"?CE.writeSync(jx,`${JSON.stringify(t)}
|
|
82
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.
|
|
83
|
+
`:t.text??"")}o(Wx,"writeFrame");function zx(t){Wx({command:t})}o(zx,"writeAzureCommand");function IE(t){return t.replace(/%/g,"%AZP25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}o(IE,"escapeData");function Zx(t){return IE(t).replace(/;/g,"%3B").replace(/]/g,"%5D")}o(Zx,"escapeProperty");function Kx(t,e,n){let r=Object.entries(e).map(([s,i])=>`${s}=${Zx(i)}`).join(";");return`##vso[${t}${r?` ${r}`:""}]${IE(n)}`}o(Kx,"vsoCommand");function Xx(t){if(!t)return[];let e=t.split(/\r?\n/).filter(n=>n.trim()&&n!==t);return[t,...e].map(n=>Kx("task.setsecret",{},n))}o(Xx,"setSecretLines");function yE(t,e=zx){for(let n of Xx(t))e(n)}o(yE,"azureSetSecret");function xo(t){return t.replace(/\/+$/,"")}o(xo,"withoutTrailingSlash");function Vl(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(Vl,"azureOrganization");var eD=/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,48}[A-Za-z0-9])?$/,tD=/[\\/:*?"<>|;#${},+=[\]%\p{Cc}\p{Cf}]/u;function QE(t){return t.length>0&&t.length<=64&&t===t.trim()&&!tD.test(t)&&!/[^\S ]/u.test(t)&&!/^[._]/.test(t)&&!t.endsWith(".")}o(QE,"isName");function bA(t){return Jl(`${t.namespace}/${t.name}`)}o(bA,"azureRepositoryOfSource");function Jl(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||!eD.test(r)||!QE(s)||!QE(i))throw new Error(`"${t}" is not an Azure DevOps organization/project/repository`);return{organization:r,project:s,name:i}}o(Jl,"azureRepositoryOf");function BE(t,e){let n=Vl(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(BE,"inOrganization");function wE(t,e){return BE(t,e),`${xo(t)}/${encodeURIComponent(e.project)}/_git/${encodeURIComponent(e.name)}`}o(wE,"azureCloneUrl");function ql(t,e){return BE(t,e),`${xo(t)}/${encodeURIComponent(e.project)}/_apis/git/repositories/${encodeURIComponent(e.name)}`}o(ql,"azureRepositoryApi");var nD="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",nD);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 rD(t){return`AUTHORIZATION: bearer ${t}`}o(rD,"azureGitAuthorization");function bE(t,e){return{GIT_CONFIG_COUNT:"1",GIT_CONFIG_KEY_0:`http.${xo(t)}/.extraheader`,GIT_CONFIG_VALUE_0:rD(e)}}o(bE,"azureGitAuthEnv");var sD="7.1-preview.1",iD=".azure-pipelines/skyramp-testbot-v3.yml";function Wl(t){return t.GITHUB_ACTIONS!=="true"&&/^true$/i.test(t.TF_BUILD??"")}o(Wl,"isAzurePipelines");function SE(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(()=>Vl(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=>yE(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",sD);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:Wl(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:`${iD}@${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 wE(r,bA(h))},gitAuthEnv(h){return bE(r,h)},async pullRequest(h,f,m){let C=await jl({token:await m.token(),url:`${ql(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=ql(r,Jl(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(SE,"azureRunnerHost");var xE=He(require("os"),1);function Do(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}o(Do,"toCommandValue");function Zl(t,e,n){let r=new zl(t,e,n);process.stdout.write(r.toString()+xE.EOL)}o(Zl,"issueCommand");var vE="::",zl=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=vE+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}=${aD(s)}`)}}return e+=`${vE}${oD(this.message)}`,e}};function oD(t){return Do(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}o(oD,"escapeData");function aD(t){return Do(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}o(aD,"escapeProperty");var Ma=He(require("http"),1),vp=He(require("https"),1);function Kl(t){let e=t.protocol==="https:";if(AD(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 kA(n)}catch{if(!n.startsWith("http://")&&!n.startsWith("https://"))return new kA(`http://${n}`)}else return}o(Kl,"getProxyUrl");function AD(t){if(!t.hostname)return!1;let e=t.hostname;if(cD(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(AD,"checkBypass");function cD(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(cD,"isLoopbackAddress");var kA=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 Rr=He(ME(),1),AR=He(aR(),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 Jn;(function(t){t.ApplicationJson="application/json"})(Jn||(Jn={}));var _Y=[Ht.MovedPermanently,Ht.ResourceMoved,Ht.SeeOther,Ht.TemporaryRedirect,Ht.PermanentRedirect],PY=[Ht.BadGateway,Ht.ServiceUnavailable,Ht.GatewayTimeout],OY=["OPTIONS","GET","DELETE","HEAD"],GY=10,$Y=5,Rp=class t extends Error{static{o(this,"HttpClientError")}constructor(e,n){super(e),this.name="HttpClientError",this.statusCode=n,Object.setPrototypeOf(this,t.prototype)}},Sp=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 Bu=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,Jn.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,Jn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Jn.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,Jn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Jn.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,Jn.ApplicationJson),i[at.ContentType]=this._getExistingOrDefaultContentTypeHeader(i,Jn.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&&OY.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&&_Y.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||!PY.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 Sp(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=Kl(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?vp:Ma;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({},Ua(this.requestOptions.headers),Ua(e||{})):Ua(e||{})}_getExistingOrDefaultHeader(e,n,r){let s;if(this.requestOptions&&this.requestOptions.headers){let a=Ua(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=Ua(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=Kl(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||Ma.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?Rr.httpsOverHttps:Rr.httpsOverHttp:l=d?Rr.httpOverHttps:Rr.httpOverHttp,n=l(c),this._proxyAgent=n}if(!n){let c={keepAlive:this._keepAlive,maxSockets:a};n=i?new vp.Agent(c):new Ma.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 AR.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(GY,e);let n=$Y*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 Rp(g,i);h.result=a.result,s(h)}else r(a)}))})}},Ua=o(t=>Object.keys(t).reduce((e,n)=>(e[n.toLowerCase()]=t[n],e),{}),"lowercaseKeys");var YY=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 wu=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 YY(this,void 0,void 0,function*(){throw new Error("not implemented")})}};var cR=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 Bu("actions/oidc-client",[new wu(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 cR(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
84
|
|
|
85
85
|
Error Code : ${a.statusCode}
|
|
86
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()}},w3=new vp;var xp=He(require("os"),1);var wu=He(require("fs"),1);var{chmod:MY,copyFile:LY,lstat:_Y,mkdir:PY,open:v3,readdir:OY,rename:GY,rm:$Y,rmdir:x3,stat:YY,symlink:HY,unlink:VY}=wu.promises,JY=process.platform==="win32";var D3=wu.constants.O_RDONLY;var _3=process.platform==="win32";var H3=xp.default.platform(),V3=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 cX=10*6e4;var uX=["TRIGGER","AUTHORITATIVE_RELATED_CHANGE"];var lX=A.object({tests:A.object({placements:A.array(A.unknown()).optional()}).passthrough().optional()}).passthrough(),dX=A.object({repository:Ku,testType:A.nativeEnum(cA),directory:A.string()}).passthrough();var gX=A.object({report:A.object({language:A.string()}).passthrough()}).passthrough();var hX=A.object({environment:A.object({components:A.array(A.unknown()).optional(),dependencies:A.array(A.unknown()).optional()}).passthrough()}).passthrough(),pX=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(),fX=A.object({name:A.string().min(1),url:A.string().nullable(),versionUrl:A.string().nullable(),notes:A.string().nullable()}).passthrough();var mX=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});
|
|
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 cR(this,void 0,void 0,function*(){try{let n=t.getIDTokenUrl();if(e){let s=encodeURIComponent(e);n=`${n}&audience=${s}`}uR(`ID token url is ${n}`);let r=yield t.getCall(n);return La(r),r}catch(n){throw new Error(`Error message: ${n.message}`)}})}};var dR=require("os"),_a=require("fs");var xp=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:HY,appendFile:VY,writeFile:JY}=_a.promises,lR="GITHUB_STEP_SUMMARY";var Dp=class{static{o(this,"Summary")}constructor(){this._buffer=""}filePath(){return xp(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[lR];if(!e)throw new Error(`Unable to find environment variable for $${lR}. Check if your runtime environment supports job summaries.`);try{yield HY(e,_a.constants.R_OK|_a.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 xp(this,void 0,void 0,function*(){let n=!!e?.overwrite,r=yield this.filePath();return yield(n?JY:VY)(r,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return xp(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(dR.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()}},M3=new Dp;var Tp=He(require("os"),1);var ku=He(require("fs"),1);var{chmod:qY,copyFile:jY,lstat:WY,mkdir:zY,open:G3,readdir:ZY,rename:KY,rm:XY,rmdir:$3,stat:e2,symlink:t2,unlink:n2}=ku.promises,r2=process.platform==="win32";var Y3=ku.constants.O_RDONLY;var z3=process.platform==="win32";var n5=Tp.default.platform(),r5=Tp.default.arch();var u2=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())})},hR;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(hR||(hR={}));function La(t){Zl("add-mask",{},t)}o(La,"setSecret");function uR(t){Zl("debug",{},t)}o(uR,"debug");function pR(t){return u2(this,void 0,void 0,function*(){return yield bu.getIDToken(t)})}o(pR,"getIDToken");var l2=5e3,Np=/^(?!\.\.?$)[A-Za-z0-9._-]{1,100}$/;function d2(t){let e=Buffer.from(`x-access-token:${t}`).toString("base64");return La(e),`AUTHORIZATION: basic ${e}`}o(d2,"githubGitAuthorization");function mR(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 La(m),m}},webIdentity(){return!t.ACTIONS_ID_TOKEN_REQUEST_TOKEN?.trim()||!t.ACTIONS_ID_TOKEN_REQUEST_URL?.trim()?void 0:{token:e.getIDToken??(d=>pR(d)),runId:t.GITHUB_RUN_ID}},v3RunsOnly:!1,assumesBedrockRole:!1,namesSourceToMcp:!1,checkSourceName(l){for(let d of[l.namespace,l.name])if(!Np.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:d2(l)}:{}},async pullRequest({namespace:l,name:d},g,h){if(![l,d].every(C=>Np.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&&Np.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(l2)});if(!g.ok&&g.status!==401)throw new Error(`GitHub answered ${g.status}`)}}}o(mR,"githubRunnerHost");function ER(t=process.env){return Wl(t)?SE(t):mR(t)}o(ER,"runnerHost");var Fp=(r=>(r.Get="GET",r.Post="POST",r.Put="PUT",r))(Fp||{}),g2=10*6e4;function h2(t,e){return t.getTime()-e.getTime()-g2}o(h2,"remainingBudgetMs");var CR="This attempt revoked its scoped GitHub credentials; it mints no more.",p2=10*6e4;var f2=o(t=>!!t&&Object.keys(t).length===1&&t.contents==="read","onlyReads"),m2=3e4,E2=3,Bn=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 Up(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(Up,"appOrigin");function IR(t,e){if(!$s.test(t))throw new Error(`The ${e} "${t}" is not a uuid`);return t}o(IR,"routeId");function C2(t,e){return`${t.replace(/\/+$/,"")}/runs/${e}`}o(C2,"skyrampRunPageUrl");function yR(t,e,n){throw e<500&&e!==429?new Bn(t,e,n):new zi(t)}o(yR,"refusedOrUnreachable");async function QR(t,e,n,r){let s=Up(t.origin),i;for(let a=1;a<=E2;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(m2)}).catch(d=>{throw new zi(d instanceof Error?d.message:String(d),{cause:d})});return await r(l)}catch(c){if(c instanceof Bn)throw c;i=c}}throw i}o(QR,"callWithRetries");function Mp(t,e,n,r){return QR(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 yR(d,i.status,a.error?.code)})}o(Mp,"callApp");function I2(t,e,n){return QR(t,e,o(s=>({method:"GET",headers:{Authorization:`Bearer ${s}`,Accept:"application/octet-stream"}}),"request"),async s=>{if(!s.ok)return yR(`The Skyramp app refused GET ${e}: ${s.status}`,s.status);let i=Buffer.from(await s.arrayBuffer());if(i.length>n)throw new Bn(`The Skyramp app answered GET ${e} with more than ${n} bytes`,s.status);return i})}o(I2,"callAppBytes");var Pa=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 h2(this.deadlineAt,e)}get skyrampRunUrl(){return C2(Up(this.deps.origin),this.manifest.runId)}send(e,n,r){return Mp(this.deps,e,n,r)}readBytes(e,n){return I2(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(CR);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>=p2)return s.token;if(this.revocation)throw new Error(CR);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&&!f2(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 Bn)||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 Bn(`${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 Bn(`${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??ER();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 BR(t,e,n){IR(t,"run id"),Up(n.origin);let r=Of(t,e),s=Gf(await Mp(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 Pa(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(BR,"startV3Attempt");async function Lp(t){return Lf.parse(await t.send("POST",`/api/v1/runner/attempts/${t.attemptId}/heartbeat`,{schemaVersion:1}))}o(Lp,"heartbeatV3Attempt");async function wR(t,e=()=>new Date){if(t.closure)return t.closure;let n=await Lp(t).then(r=>_f(r,e())).catch(()=>null);return n&&(t.closure=n),n}o(wR,"closedV3Attempt");var yX=10*6e4;var QX=["TRIGGER","AUTHORITATIVE_RELATED_CHANGE"];var BX=A.object({tests:A.object({placements:A.array(A.unknown()).optional()}).passthrough().optional()}).passthrough(),wX=A.object({repository:el,testType:A.nativeEnum(lA),directory:A.string()}).passthrough();var bX=A.object({report:A.object({language:A.string()}).passthrough()}).passthrough();var kX=A.object({environment:A.object({components:A.array(A.unknown()).optional(),dependencies:A.array(A.unknown()).optional()}).passthrough()}).passthrough(),RX=A.object({name:A.string().min(1),provision:A.literal("existing"),url:A.string().min(1),repository:el.optional(),revisionUrl:A.string().min(1).optional()}).passthrough(),SX=A.object({name:A.string().min(1),url:A.string().nullable(),versionUrl:A.string().nullable(),notes:A.string().nullable()}).passthrough();var vX=new Set(["TRIGGER","AUTHORITATIVE_RELATED_CHANGE","MANUAL_OVERRIDE"]);function bR(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(bR,"statusCounts");function y2(t){let{passed:e,failed:n,skipped:r}=bR(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(y2,"executedTestsValidation");function Q2(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??Sf(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,...B2(t,c,e),validation:w2(t,t.validation??y2(t)),traceVersion:1}}o(Q2,"v3Report");function B2(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(B2,"linkedContexts");function w2(t,e){let{passed:n,failed:r}=bR(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(w2,"withEvidence");async function kR(t,e){let n=Vf([...t.issuedTokens,...e.secrets??[]]),r=$f({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(Q2(e.report,e.workingSlug),n),githubWrites:e.githubWrites});await t.send("PUT",`/api/v1/runner/attempts/${t.attemptId}/report`,r)}o(kR,"uploadV3Report");async function RR(t,e){return IR(t.attemptId,"attempt id"),Mp(e,"POST",`/api/v1/runner/attempts/${t.attemptId}/end`,Yf({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(RR,"endV3Attempt");0&&(module.exports={AppRefusal,AppUnreachable,AttemptEndReason,NoReportCause,RunnerMethod,V3Attempt,closedV3Attempt,endV3Attempt,heartbeatV3Attempt,startV3Attempt,uploadV3Report});
|
|
88
88
|
/*! Bundled license information:
|
|
89
89
|
|
|
90
90
|
undici/lib/web/fetch/body.js:
|